Sadaqah Rail
Sadaqah Rail
Section titled “Sadaqah Rail”Charitable donation processing, campaign management, and impact tracking.
Overview
Section titled “Overview”The Sadaqah rail manages voluntary charitable giving (Sadaqah) and recurring pledged donations (Sadaqah Jariyah). Unlike Zakat, which is obligatory and has strict calculation rules, Sadaqah is voluntary and can be directed to any lawful charitable purpose without minimum thresholds.
The rail supports one-time donations, recurring pledges, campaign-based fundraising, and corporate matching programs. Each donation is tracked from pledge through disbursement to the recipient organization, with full transparency and audit trails.
Sadaqah Jariyah (ongoing charity) is a distinct concept where the donor establishes a recurring benefit — such as funding a water well, scholarship, or medical facility — whose rewards continue beyond the initial contribution. The platform models these as long-lived projects with milestone tracking and impact reporting.
All donations flow through the Ledger rail for transparent accounting, and the Compliance rail ensures that recipient organizations meet eligibility criteria and that funds are disbursed according to donor intent.
Endpoints
Section titled “Endpoints”Create Donation
Section titled “Create Donation”POST /v1/rails/sadaqah/donationsconst donation = await iof.sadaqah.create({ amount: 5000, currency: "USD", donor_id: "cpty_donor_001", type: "one_time", category: "education", recipient_org_id: "org_charity_xyz", anonymous: false, dedication: "In memory of Ahmad Hassan",});Response:
{ "id": "sdq_xyz", "type": "sadaqah", "subtype": "one_time", "status": "PENDING", "amount": 5000, "currency": "USD", "category": "education", "recipient_org_id": "org_charity_xyz", "anonymous": false, "tax_receipt_eligible": true, "created_at": "2024-01-15T10:30:00Z"}Create Recurring Pledge (Sadaqah Jariyah)
Section titled “Create Recurring Pledge (Sadaqah Jariyah)”POST /v1/rails/sadaqah/pledgesconst pledge = await iof.sadaqah.createPledge({ amount: 500, currency: "USD", donor_id: "cpty_donor_001", frequency: "monthly", project_id: "proj_water_well_003", duration_months: 24,});Get Donation
Section titled “Get Donation”GET /v1/rails/sadaqah/donations/:idList Donations
Section titled “List Donations”GET /v1/rails/sadaqah/donationsCreate Campaign
Section titled “Create Campaign”POST /v1/rails/sadaqah/campaignsCreate a fundraising campaign with a target amount and deadline.
Get Campaign Progress
Section titled “Get Campaign Progress”GET /v1/rails/sadaqah/campaigns/:idProcess Disbursement
Section titled “Process Disbursement”POST /v1/rails/sadaqah/donations/:id/disburseRelease funds to the recipient organization.
Generate Tax Receipt
Section titled “Generate Tax Receipt”POST /v1/rails/sadaqah/donations/:id/receiptDonation Types
Section titled “Donation Types”| Type | Description |
|---|---|
one_time | Single charitable donation |
recurring | Scheduled recurring donations |
jariyah | Ongoing charity tied to a long-lived project |
campaign | Donation directed to a specific campaign |
matched | Corporate-matched donation |
Donation Status
Section titled “Donation Status”| Status | Description |
|---|---|
PENDING | Donation received, awaiting processing |
CONFIRMED | Payment confirmed |
DISBURSED | Funds released to recipient |
RECEIPTED | Tax receipt generated |
REFUNDED | Donation refunded to donor |
Integration Points
Section titled “Integration Points”- Payments Rail — processes donation payments and recurring charge schedules
- Ledger Rail — records all donation and disbursement transactions
- Waqf Rail — Sadaqah Jariyah projects may establish Waqf endowments
- Reporting Rail — donor statements, campaign reports, and impact summaries
- Zakat Rail — donors may combine Zakat and Sadaqah in a single flow
Webhooks
Section titled “Webhooks”| Event | Description |
|---|---|
sadaqah.donation.created | Donation record created |
sadaqah.donation.confirmed | Payment confirmed |
sadaqah.donation.disbursed | Funds released to recipient |
sadaqah.pledge.created | Recurring pledge established |
sadaqah.pledge.charged | Recurring pledge payment collected |
sadaqah.campaign.completed | Campaign reached target or ended |
sadaqah.receipt.generated | Tax receipt issued |
Standards
Section titled “Standards”- AAOIFI Shariah Standard No. 33 - Waqf (Sadaqah Jariyah provisions)
- IFSB Guidance on Social Finance
- ISO 20022 - Donation message types
Next Steps
Section titled “Next Steps”- Waqf Rail - Endowment management
- Zakat Rail - Obligatory charitable giving
- Payments Rail - Payment processing