मुख्य सामग्री पर जाएं

दान एंडपॉइंट

Giving मॉड्यूल दान, फंड, भुगतान प्रसंस्करण, सदस्यताओं और संबंधित वित्तीय संचालन का प्रबंधन करता है। यह कई भुगतान गेटवे (Stripe, PayPal) का समर्थन करता है, एकमुश्त और आवर्ती दान को संभालता है, दान बैच को ट्रैक करता है, और असिंक्रोनस भुगतान इवेंट के लिए webhook प्रसंस्करण प्रदान करता है।

बेस पथ: /giving

दान

बेस पथ: /giving/donations

MethodPathAuthPermissionविवरण
GET/JWTDonations.View या अपना personIdसभी दान सूचीबद्ध करें। ?batchId= या ?personId= से फ़िल्टर करें
GET/:idJWTDonations.ViewID द्वारा दान प्राप्त करें
GET/myJWTवर्तमान उपयोगकर्ता के दान प्राप्त करें
GET/summaryJWTDonations.ViewSummaryदान सारांश प्राप्त करें। ?startDate=&endDate=&type= से फ़िल्टर करें। प्रति-व्यक्ति विश्लेषण के लिए type=person उपयोग करें
GET/testEmailPublicपरीक्षण ईमेल भेजें (विकास/डिबगिंग)
POST/JWTDonations.Editदान बनाएँ या अपडेट करें (बैच)
DELETE/:idJWTDonations.Editदान हटाएँ

उदाहरण: बैच द्वारा दान सूचीबद्ध करें

GET /giving/donations?batchId=abc-123
Authorization: Bearer <token>
[
{
"id": "don-456",
"batchId": "abc-123",
"personId": "per-789",
"donationDate": "2025-03-15T00:00:00.000Z",
"amount": 100.00,
"method": "card"
}
]

उदाहरण: दान सारांश प्राप्त करें

GET /giving/donations/summary?startDate=2025-01-01&endDate=2025-12-31
Authorization: Bearer <token>
[
{
"week": "2025-01-06",
"fund": "General Fund",
"totalAmount": 2500.00,
"count": 15
}
]

दान बैच

बेस पथ: /giving/donationbatches

GenericCrudController को CRUD रूट: getById, getAll, post, delete के साथ विस्तारित करता है। डिलीट ऑपरेशन बैच के भीतर सभी दान भी हटाता है।

MethodPathAuthPermissionविवरण
GET/JWTDonations.ViewSummaryसभी दान बैच सूचीबद्ध करें
GET/:idJWTDonations.ViewSummaryID द्वारा दान बैच प्राप्त करें
POST/JWTDonations.Editदान बैच बनाएँ या अपडेट करें
DELETE/:idJWTDonations.Editबैच और उसके सभी दान हटाएँ

दान करें

बेस पथ: /giving/donate

शुल्क, सदस्यताओं, webhook और शुल्क गणना सहित सार्वजनिक-सामने वाले दान प्रवाह को संभालता है। कोई बेस CRUD रूट सक्षम नहीं हैं; सभी एंडपॉइंट कस्टम हैं।

MethodPathAuthPermissionविवरण
GET/gateways/:churchIdPublicचर्च के लिए उपलब्ध भुगतान गेटवे प्राप्त करें (केवल सार्वजनिक कुंजी)
POST/client-tokenJWTगेटवे इनिशियलाइज़ेशन के लिए क्लाइंट टोकन जनरेट करें
POST/create-orderJWTभुगतान आदेश बनाएँ (PayPal-शैली चेकआउट)
POST/chargeJWTएकमुश्त दान शुल्क प्रोसेस करें
POST/subscribeJWTआवर्ती दान सदस्यता बनाएँ
POST/logPublicदान लॉग करें। बॉडी: { donation, fundData }
POST/webhook/:providerPublicभुगतान webhook इवेंट प्राप्त करें (Stripe, PayPal)। ?churchId= आवश्यक
POST/replay-stripe-eventsJWTDonations.Editतिथि सीमा के लिए Stripe इवेंट रीप्ले करें। बॉडी: { startDate, endDate, dryRun }
POST/feePublicलेनदेन शुल्क गणना करें। बॉडी: { type, provider, gatewayId, amount, currency }?churchId= आवश्यक
POST/captcha-verifyPublicreCAPTCHA टोकन सत्यापित करें। बॉडी: { token }

फंड

बेस पथ: /giving/funds

GenericCrudController को CRUD रूट: getById, getAll, post, delete के साथ विस्तारित करता है। view अनुमति null है (फंड देखने के लिए कोई अनुमति आवश्यक नहीं)।

MethodPathAuthPermissionविवरण
GET/JWTसभी फंड सूचीबद्ध करें
GET/:idJWTID द्वारा फंड प्राप्त करें
GET/churchId/:churchIdPublicविशिष्ट चर्च के सभी फंड प्राप्त करें (सार्वजनिक)
POST/JWTDonations.Editफंड बनाएँ या अपडेट करें
DELETE/:idJWTDonations.Editफंड हटाएँ

फंड दान

बेस पथ: /giving/funddonations

ट्रैक करता है कि व्यक्तिगत दान फंड में कैसे आवंटित किए जाते हैं। कोई बेस CRUD रूट सक्षम नहीं; सभी एंडपॉइंट कस्टम हैं।

MethodPathAuthPermissionविवरण
GET/JWTDonations.Viewफंड दान सूचीबद्ध करें। ?donationId=, ?personId=, ?fundId=, या ?fundName= से फ़िल्टर करें। वैकल्पिक रूप से ?startDate=&endDate= तिथि फ़िल्टरिंग जोड़ें
GET/:idJWTDonations.ViewID द्वारा फंड दान प्राप्त करें
GET/myJWTवर्तमान उपयोगकर्ता के फंड दान प्राप्त करें
POST/JWTDonations.Editफंड दान बनाएँ या अपडेट करें (बैच)
DELETE/:idJWTDonations.Editफंड दान हटाएँ

गेटवे

बेस पथ: /giving/gateways

भुगतान गेटवे कॉन्फ़िगरेशन (Stripe, PayPal, आदि) प्रबंधित करता है। कोई बेस CRUD रूट सक्षम नहीं; सभी एंडपॉइंट कस्टम हैं। गेटवे सीक्रेट विश्राम में एन्क्रिप्टेड हैं।

MethodPathAuthPermissionविवरण
GET/JWTचर्च के सभी गेटवे सूचीबद्ध करें
GET/:idJWTSettings.EditID द्वारा गेटवे प्राप्त करें
GET/churchId/:churchIdPublicचर्च के गेटवे प्राप्त करें (केवल सार्वजनिक कुंजी)
GET/configured/:churchIdPublicजाँचें कि चर्च में कॉन्फ़िगर किया गया भुगतान गेटवे है या नहीं
POST/JWTSettings.Editगेटवे बनाएँ या अपडेट करें (कुंजियाँ एन्क्रिप्ट करता है, webhook और उत्पाद प्रावधान करता है)
PATCH/:idJWTSettings.Editगेटवे आंशिक रूप से अपडेट करें
DELETE/:idJWTSettings.Editगेटवे हटाएँ (इसके webhook भी हटाता है)

ग्राहक

बेस पथ: /giving/customers

GenericCrudController को CRUD रूट: getAll, delete के साथ विस्तारित करता है। लोगों को उनके भुगतान गेटवे ग्राहक रिकॉर्ड से जोड़ता है।

MethodPathAuthPermissionविवरण
GET/JWTDonations.ViewSummaryसभी ग्राहक सूचीबद्ध करें
GET/:idJWTDonations.ViewSummary या अपना रिकॉर्डID द्वारा ग्राहक प्राप्त करें
GET/:id/subscriptionsJWTDonations.ViewSummary या अपना रिकॉर्डग्राहक के गेटवे सदस्यताएँ प्राप्त करें
DELETE/:idJWTDonations.Editग्राहक हटाएँ

सदस्यताएँ

बेस पथ: /giving/subscriptions

आवर्ती दान सदस्यताएँ प्रबंधित करता है। कोई बेस CRUD रूट सक्षम नहीं; सभी एंडपॉइंट कस्टम हैं।

MethodPathAuthPermissionविवरण
GET/JWTDonations.ViewSummaryसभी सदस्यताएँ सूचीबद्ध करें
GET/:idJWTDonations.ViewSummaryID द्वारा सदस्यता प्राप्त करें
POST/JWTDonations.Edit या अपनी सदस्यताभुगतान गेटवे के साथ सदस्यताएँ अपडेट करें
DELETE/:idJWTDonations.Edit या अपनी सदस्यतासदस्यता रद्द करें और डेटाबेस से हटाएँ। बॉडी: { provider, reason }

सदस्यता फंड

बेस पथ: /giving/subscriptionfunds

आवर्ती सदस्यताओं के लिए फंड आवंटन ट्रैक करता है। कोई बेस CRUD रूट सक्षम नहीं; सभी एंडपॉइंट कस्टम हैं।

MethodPathAuthPermissionविवरण
GET/JWTDonations.View या अपनी सदस्यतासदस्यता फंड सूचीबद्ध करें। ?subscriptionId= से फ़िल्टर करें
GET/:idJWTDonations.ViewSummaryID द्वारा सदस्यता फंड प्राप्त करें
DELETE/:idJWTDonations.Editसदस्यता फंड हटाएँ
DELETE/subscription/:idJWTDonations.Edit या अपनी सदस्यतासदस्यता के सभी फंड हटाएँ

भुगतान विधियाँ

बेस पथ: /giving/paymentmethods

भुगतान गेटवे API के माध्यम से संग्रहीत भुगतान विधियाँ (कार्ड, बैंक खाते) प्रबंधित करता है। कोई बेस CRUD रूट सक्षम नहीं; सभी एंडपॉइंट कस्टम हैं।

MethodPathAuthPermissionविवरण
GET/personid/:idJWTDonations.View या अपना personIdव्यक्ति की सभी संग्रहीत भुगतान विधियाँ प्राप्त करें (कार्ड, बैंक खाते)
POST/addcardJWTकार्ड भुगतान विधि जोड़ें। बॉडी: { id, personId, customerId, email, name, churchId, provider }
POST/updatecardJWTDonations.Edit या अपना personIdकार्ड विवरण अपडेट करें। बॉडी: { personId, paymentMethodId, cardData, provider }
POST/ach-setup-intentJWTDonations.Edit या अपना personIdबैंक खाता लिंकिंग के लिए Stripe ACH SetupIntent बनाएँ। बॉडी: { personId, customerId, email, name, churchId }
POST/ach-setup-intent-anonPublicअतिथि दान के लिए अनाम ACH SetupIntent बनाएँ। बॉडी: { email, name, churchId, gatewayId }
POST/addbankaccountJWTDonations.Edit या अपना personIdटोकन के माध्यम से बैंक खाता जोड़ें (पदावनत; ach-setup-intent उपयोग करें)। बॉडी: { id, personId, customerId, email, name }
POST/updatebankJWTDonations.Edit या अपना personIdबैंक खाता विवरण अपडेट करें। बॉडी: { paymentMethodId, personId, bankData, customerId }
POST/verifybankJWTDonations.Edit या अपना ग्राहकमाइक्रो-डिपॉज़िट के साथ बैंक खाता सत्यापित करें। बॉडी: { paymentMethodId, customerId, amountData }
DELETE/:id/:customeridJWTDonations.Edit या अपना ग्राहकभुगतान विधि हटाएँ (कार्ड या बैंक खाता)

इवेंट लॉग

बेस पथ: /giving/eventLog

GenericCrudController को CRUD रूट: getById, getAll, post, delete के साथ विस्तारित करता है। ऑडिटिंग और डिडुप्लिकेशन के लिए भुगतान गेटवे webhook इवेंट ट्रैक करता है।

MethodPathAuthPermissionविवरण
GET/JWTDonations.ViewSummaryसभी इवेंट लॉग सूचीबद्ध करें
GET/:idJWTDonations.ViewSummaryID द्वारा इवेंट लॉग प्राप्त करें
GET/type/:typeJWTDonations.ViewSummaryइवेंट प्रकार द्वारा फ़िल्टर किए गए इवेंट लॉग प्राप्त करें
POST/JWTDonations.Editइवेंट लॉग बनाएँ या अपडेट करें
DELETE/:idJWTDonations.Editइवेंट लॉग हटाएँ

संबंधित पृष्ठ