Takaful Rail
Takaful Rail
Section titled “Takaful Rail”Shariah-compliant cooperative insurance endpoints for mutual protection and risk sharing.
Overview
Section titled “Overview”The Takaful rail provides a complete Islamic insurance infrastructure built on the principles of tabarru (voluntary contribution), ta’awun (mutual assistance), and shared responsibility. Unlike conventional insurance, takaful eliminates gharar (uncertainty), maysir (gambling), and riba (interest) by structuring the relationship as a cooperative pool where participants contribute to a common fund used to compensate members who suffer losses.
Key capabilities:
- Policy creation and lifecycle management across general and family takaful
- Claims submission, assessment, and settlement workflows
- Underwriting and risk assessment with Shariah-compliant criteria
- Retakaful (Islamic reinsurance) placement and treaty management
- Fund management with segregated participant and shareholder funds
- Surplus distribution to participants based on contribution and claims history
- Actuarial valuation and reserve calculations
- Commission and fee management under Wakalah, Mudarabah, and Hybrid models
- Full compliance tracking against AAOIFI SS-26 and SS-41 standards
The takaful rail supports three operating models: Wakalah (agency), Mudarabah (profit-sharing), and Hybrid (Wakalah for underwriting + Mudarabah for investment).
Sub-Rails
Section titled “Sub-Rails”1. General Takaful (general)
Section titled “1. General Takaful (general)”Covers non-life insurance products: motor, property, marine, fire, engineering, liability, and miscellaneous.
Create General Takaful Policy
Section titled “Create General Takaful Policy”POST /v1/rails/takaful/general/policiesconst policy = await iof.takaful.general.create({ product_type: "motor", participant_id: "part_abc123", coverage: { type: "comprehensive", sum_covered: 75000, currency: "USD", deductible: 500, }, contribution: { amount: 1800, frequency: "annual", tabarru_portion: 0.65, wakalah_fee_portion: 0.35, }, effective_date: "2026-03-01", expiry_date: "2027-02-28", risk_details: { vehicle_make: "Toyota", vehicle_model: "Camry", vehicle_year: 2025, usage: "private", },});Response:
{ "id": "tak_gen_xyz", "type": "takaful", "sub_type": "general", "product_type": "motor", "status": "DRAFT", "participant_id": "part_abc123", "coverage": { "type": "comprehensive", "sum_covered": 75000, "currency": "USD", "deductible": 500 }, "contribution": { "total": 1800, "tabarru": 1170, "wakalah_fee": 630, "frequency": "annual" }, "effective_date": "2026-03-01", "expiry_date": "2027-02-28", "created_at": "2026-02-14T10:00:00Z"}List General Takaful Policies
Section titled “List General Takaful Policies”GET /v1/rails/takaful/general/policiesQuery parameters: status, product_type, participant_id, effective_after, effective_before, page, limit.
Get General Takaful Policy
Section titled “Get General Takaful Policy”GET /v1/rails/takaful/general/policies/:idUpdate General Takaful Policy
Section titled “Update General Takaful Policy”PUT /v1/rails/takaful/general/policies/:idCancel General Takaful Policy
Section titled “Cancel General Takaful Policy”DELETE /v1/rails/takaful/general/policies/:idCancellation triggers pro-rata refund calculation of unearned tabarru contributions.
2. Family Takaful (family)
Section titled “2. Family Takaful (family)”Covers life and long-term savings products: term, whole-life, education, retirement, mortgage, and investment-linked.
Create Family Takaful Policy
Section titled “Create Family Takaful Policy”POST /v1/rails/takaful/family/policiesconst policy = await iof.takaful.family.create({ product_type: "term_protection", participant_id: "part_def456", coverage: { sum_covered: 500000, currency: "USD", term_years: 20, beneficiaries: [ { name: "Fatimah Ahmad", relationship: "spouse", share_pct: 60 }, { name: "Yusuf Ahmad", relationship: "child", share_pct: 40 }, ], }, contribution: { amount: 350, frequency: "monthly", tabarru_portion: 0.4, savings_portion: 0.3, wakalah_fee_portion: 0.3, }, effective_date: "2026-04-01",});Response:
{ "id": "tak_fam_xyz", "type": "takaful", "sub_type": "family", "product_type": "term_protection", "status": "DRAFT", "participant_id": "part_def456", "coverage": { "sum_covered": 500000, "currency": "USD", "term_years": 20, "beneficiaries": [ { "name": "Fatimah Ahmad", "relationship": "spouse", "share_pct": 60 }, { "name": "Yusuf Ahmad", "relationship": "child", "share_pct": 40 } ] }, "contribution": { "total_monthly": 350, "tabarru": 140, "savings": 105, "wakalah_fee": 105, "frequency": "monthly" }, "effective_date": "2026-04-01", "maturity_date": "2046-03-31", "created_at": "2026-02-14T10:00:00Z"}Additional Family Takaful Endpoints
Section titled “Additional Family Takaful Endpoints”GET /v1/rails/takaful/family/policiesGET /v1/rails/takaful/family/policies/:idPUT /v1/rails/takaful/family/policies/:idDELETE /v1/rails/takaful/family/policies/:idPOST /v1/rails/takaful/family/policies/:id/surrenderGET /v1/rails/takaful/family/policies/:id/savings-balance3. Claims (claims)
Section titled “3. Claims (claims)”Full claims lifecycle from first notice of loss through assessment, approval, and settlement.
Submit a Claim
Section titled “Submit a Claim”POST /v1/rails/takaful/claimsconst claim = await iof.takaful.claims.submit({ policy_id: "tak_gen_xyz", incident_date: "2026-02-10", notification_date: "2026-02-11", claim_type: "motor_accident", description: "Rear collision at intersection causing bumper and taillight damage", estimated_amount: 4500, currency: "USD", documents: [ { type: "police_report", file_id: "file_001" }, { type: "repair_estimate", file_id: "file_002" }, { type: "photos", file_id: "file_003" }, ],});Response:
{ "id": "clm_abc123", "policy_id": "tak_gen_xyz", "status": "SUBMITTED", "claim_type": "motor_accident", "incident_date": "2026-02-10", "estimated_amount": 4500, "currency": "USD", "assessor_assigned": null, "created_at": "2026-02-14T10:30:00Z"}Additional Claims Endpoints
Section titled “Additional Claims Endpoints”GET /v1/rails/takaful/claimsGET /v1/rails/takaful/claims/:idPUT /v1/rails/takaful/claims/:idPOST /v1/rails/takaful/claims/:id/assessPOST /v1/rails/takaful/claims/:id/approvePOST /v1/rails/takaful/claims/:id/rejectPOST /v1/rails/takaful/claims/:id/settlePOST /v1/rails/takaful/claims/:id/appealGET /v1/rails/takaful/claims/:id/history4. Underwriting (underwriting)
Section titled “4. Underwriting (underwriting)”Risk assessment and policy pricing with Shariah-compliant rating factors.
Submit Underwriting Request
Section titled “Submit Underwriting Request”POST /v1/rails/takaful/underwriting/requestsconst uwRequest = await iof.takaful.underwriting.submit({ policy_type: "general", product_type: "property", applicant_id: "part_abc123", risk_profile: { property_type: "commercial", construction: "concrete", location: "low_risk_zone", fire_protection: "sprinkler_system", sum_to_cover: 2000000, currency: "USD", }, medical_declaration: null,});Additional Underwriting Endpoints
Section titled “Additional Underwriting Endpoints”GET /v1/rails/takaful/underwriting/requestsGET /v1/rails/takaful/underwriting/requests/:idPOST /v1/rails/takaful/underwriting/requests/:id/evaluatePOST /v1/rails/takaful/underwriting/requests/:id/approvePOST /v1/rails/takaful/underwriting/requests/:id/declineGET /v1/rails/takaful/underwriting/rating-tables5. Retakaful (retakaful)
Section titled “5. Retakaful (retakaful)”Islamic reinsurance for ceding risk from takaful operators to retakaful operators, compliant with AAOIFI SS-41.
Place Retakaful Treaty
Section titled “Place Retakaful Treaty”POST /v1/rails/takaful/retakaful/treatiesconst treaty = await iof.takaful.retakaful.create({ treaty_type: "quota_share", retakaful_operator_id: "rtak_op_001", cession_percentage: 30, coverage_class: "property", effective_date: "2026-01-01", expiry_date: "2026-12-31", limit: 10000000, currency: "USD", commission_rate: 0.25, profit_sharing_rate: 0.15,});Additional Retakaful Endpoints
Section titled “Additional Retakaful Endpoints”GET /v1/rails/takaful/retakaful/treatiesGET /v1/rails/takaful/retakaful/treaties/:idPUT /v1/rails/takaful/retakaful/treaties/:idDELETE /v1/rails/takaful/retakaful/treaties/:idPOST /v1/rails/takaful/retakaful/treaties/:id/bordereauxGET /v1/rails/takaful/retakaful/treaties/:id/settlementsPOST /v1/rails/takaful/retakaful/facultativeTreaty types: quota_share, surplus, excess_of_loss, facultative.
6. Fund Management (fund-management)
Section titled “6. Fund Management (fund-management)”Segregated fund accounting for participant risk funds (PRF), participant investment funds (PIF), and shareholder funds.
Get Fund Summary
Section titled “Get Fund Summary”GET /v1/rails/takaful/fund-management/summaryconst funds = await iof.takaful.funds.summary({ as_of_date: "2026-02-14", fund_type: "participant_risk_fund",});Response:
{ "fund_type": "participant_risk_fund", "as_of_date": "2026-02-14", "currency": "USD", "balance": { "opening": 12500000, "tabarru_contributions": 850000, "claims_paid": -420000, "retakaful_ceded": -255000, "investment_income": 187500, "reserves": -1200000, "closing": 11662500 }, "reserves": { "outstanding_claims": 780000, "ibnr": 320000, "unearned_contribution": 100000 }}Additional Fund Management Endpoints
Section titled “Additional Fund Management Endpoints”GET /v1/rails/takaful/fund-management/fundsGET /v1/rails/takaful/fund-management/funds/:idPOST /v1/rails/takaful/fund-management/funds/:id/allocateGET /v1/rails/takaful/fund-management/funds/:id/transactionsGET /v1/rails/takaful/fund-management/investment-portfolioPOST /v1/rails/takaful/fund-management/qard-hasanThe qard-hasan endpoint handles interest-free loans from the shareholder fund to the participant fund when the participant fund has a deficit.
7. Surplus Distribution (surplus)
Section titled “7. Surplus Distribution (surplus)”Calculate and distribute underwriting surplus to participants after deducting claims, retakaful costs, and reserves.
Calculate Surplus
Section titled “Calculate Surplus”POST /v1/rails/takaful/surplus/calculateconst surplus = await iof.takaful.surplus.calculate({ period: "2025", fund_type: "participant_risk_fund", distribution_model: "contribution_based",});Response:
{ "id": "surp_2025_001", "period": "2025", "status": "CALCULATED", "total_contributions": 5200000, "total_claims": 2800000, "retakaful_cost": 780000, "reserves_increase": 320000, "management_expenses": 150000, "gross_surplus": 1150000, "operator_share": 460000, "participants_share": 690000, "distribution_model": "contribution_based", "participant_count": 4200, "currency": "USD"}Additional Surplus Endpoints
Section titled “Additional Surplus Endpoints”GET /v1/rails/takaful/surplusGET /v1/rails/takaful/surplus/:idPOST /v1/rails/takaful/surplus/:id/approvePOST /v1/rails/takaful/surplus/:id/distributeGET /v1/rails/takaful/surplus/:id/allocationsGET /v1/rails/takaful/surplus/history8. Compliance (compliance)
Section titled “8. Compliance (compliance)”Shariah compliance monitoring, Shariah board review workflows, and regulatory reporting.
Run Compliance Check
Section titled “Run Compliance Check”POST /v1/rails/takaful/compliance/checkconst result = await iof.takaful.compliance.check({ policy_id: "tak_gen_xyz", check_types: [ "tabarru_ratio", "investment_screening", "surplus_distribution", "qard_hasan_terms", ],});Additional Compliance Endpoints
Section titled “Additional Compliance Endpoints”GET /v1/rails/takaful/compliance/checksGET /v1/rails/takaful/compliance/checks/:idPOST /v1/rails/takaful/compliance/shariah-reviewGET /v1/rails/takaful/compliance/shariah-reviewsPOST /v1/rails/takaful/compliance/regulatory-reportGET /v1/rails/takaful/compliance/audit-trail9. Actuarial (actuarial)
Section titled “9. Actuarial (actuarial)”Actuarial valuations, reserve calculations, and experience studies.
Run Actuarial Valuation
Section titled “Run Actuarial Valuation”POST /v1/rails/takaful/actuarial/valuationsconst valuation = await iof.takaful.actuarial.valuate({ valuation_date: "2026-02-14", fund_type: "participant_risk_fund", methodology: "chain_ladder", confidence_level: 0.75,});Additional Actuarial Endpoints
Section titled “Additional Actuarial Endpoints”GET /v1/rails/takaful/actuarial/valuationsGET /v1/rails/takaful/actuarial/valuations/:idPOST /v1/rails/takaful/actuarial/reserve-calculationGET /v1/rails/takaful/actuarial/loss-trianglesGET /v1/rails/takaful/actuarial/experience-studiesPOST /v1/rails/takaful/actuarial/pricing-model10. Commissions (commissions)
Section titled “10. Commissions (commissions)”Agent and intermediary commission management under Wakalah fee structures.
Create Commission Schedule
Section titled “Create Commission Schedule”POST /v1/rails/takaful/commissions/schedulesconst schedule = await iof.takaful.commissions.createSchedule({ agent_id: "agent_789", product_type: "motor", commission_type: "wakalah_fee_share", rate: 0.15, clawback_period_months: 12, effective_date: "2026-01-01",});Additional Commission Endpoints
Section titled “Additional Commission Endpoints”GET /v1/rails/takaful/commissions/schedulesGET /v1/rails/takaful/commissions/schedules/:idPUT /v1/rails/takaful/commissions/schedules/:idDELETE /v1/rails/takaful/commissions/schedules/:idGET /v1/rails/takaful/commissions/payoutsPOST /v1/rails/takaful/commissions/payouts/calculatePOST /v1/rails/takaful/commissions/payouts/processTakaful Operating Models
Section titled “Takaful Operating Models”Wakalah Model (Agency)
Section titled “Wakalah Model (Agency)”The takaful operator acts as an agent (wakeel) managing the fund on behalf of participants. The operator receives a fixed Wakalah fee upfront from each contribution regardless of fund performance.
| Component | Description |
|---|---|
| Operator role | Agent (Wakeel) |
| Operator income | Fixed Wakalah fee (percentage of contribution) |
| Investment management | Operator may receive a separate investment Wakalah fee |
| Surplus | 100% belongs to participants |
| Deficit (Qard Hasan) | Operator provides interest-free loan to cover shortfall |
Mudarabah Model (Profit-Sharing)
Section titled “Mudarabah Model (Profit-Sharing)”The takaful operator acts as an entrepreneur (mudarib) investing the pool funds. Profits from investment are shared between operator and participants according to a pre-agreed ratio.
| Component | Description |
|---|---|
| Operator role | Entrepreneur (Mudarib) |
| Operator income | Share of investment profits (pre-agreed ratio) |
| Underwriting surplus | Belongs to participants |
| Investment profit split | e.g., 60% participants / 40% operator |
| Deficit (Qard Hasan) | Operator provides interest-free loan to cover shortfall |
Hybrid Model (Wakalah + Mudarabah)
Section titled “Hybrid Model (Wakalah + Mudarabah)”Combines both models: Wakalah fee for underwriting management and Mudarabah profit-sharing for investment activities. This is the most widely adopted model globally.
| Component | Description |
|---|---|
| Underwriting management | Wakalah fee (fixed percentage of contribution) |
| Investment management | Mudarabah profit-sharing on investment returns |
| Surplus | Shared between operator and participants (pre-agreed) |
| Deficit (Qard Hasan) | Operator provides interest-free loan to cover shortfall |
Set the operating model when creating a policy:
const policy = await iof.takaful.general.create({ // ...policy details operating_model: "hybrid", // "wakalah" | "mudarabah" | "hybrid" wakalah_fee_rate: 0.35, mudarabah_profit_share: { operator: 40, participants: 60 },});Claims Lifecycle
Section titled “Claims Lifecycle”The claims lifecycle follows a structured flow from submission through settlement:
SUBMITTED -> ACKNOWLEDGED -> UNDER_ASSESSMENT -> ASSESSED | | | v v v WITHDRAWN ADDITIONAL_INFO_REQUIRED APPROVED -> SETTLED -> CLOSED | v REJECTED -> APPEAL -> RE_ASSESSED| Status | Description |
|---|---|
SUBMITTED | Claim submitted by participant |
ACKNOWLEDGED | Claim received and registered, reference number assigned |
UNDER_ASSESSMENT | Assessor assigned and investigation in progress |
ADDITIONAL_INFO_REQUIRED | Additional documents or information requested from participant |
ASSESSED | Assessment complete, recommended amount determined |
APPROVED | Claim approved by claims committee |
REJECTED | Claim rejected with documented reasons |
APPEAL | Participant has appealed a rejected claim |
RE_ASSESSED | Claim under re-assessment following appeal |
SETTLED | Payment disbursed to participant from the tabarru fund |
WITHDRAWN | Claim withdrawn by participant |
CLOSED | Claim fully resolved and file closed |
Policy Status
Section titled “Policy Status”| Status | Description |
|---|---|
DRAFT | Policy created, pending underwriting |
PENDING_UNDERWRITING | Submitted for underwriting assessment |
UNDERWRITTEN | Underwriting complete, pricing confirmed |
PENDING_SHARIAH_REVIEW | Awaiting Shariah board approval |
SHARIAH_APPROVED | Approved by Shariah board |
ACTIVE | Policy in force, coverage active |
LAPSED | Contributions not paid, policy lapsed |
SURRENDERED | Family takaful policy surrendered by participant |
MATURED | Family takaful policy reached maturity date |
EXPIRED | General takaful policy term ended |
CANCELLED | Policy cancelled, pro-rata refund issued |
CLAIM_IN_PROGRESS | Active claim being processed under this policy |
Shariah Compliance Rules
Section titled “Shariah Compliance Rules”Takaful operations must adhere to the following Shariah principles:
Tabarru (Voluntary Contribution)
Section titled “Tabarru (Voluntary Contribution)”- Participants donate a portion of their contribution to the risk pool (tabarru fund)
- The tabarru is an irrevocable gift (hibah) to the common pool
- Tabarru funds are used exclusively for paying claims and related expenses
- The tabarru portion must be clearly separated from savings and fee components
- Minimum tabarru ratios are enforced per product type
Surplus Distribution
Section titled “Surplus Distribution”- Underwriting surplus belongs to participants, not the operator
- Surplus may only be distributed after deducting claims, retakaful costs, reserves, and management expenses
- Distribution must follow the pre-agreed method (contribution-based, claims-based, or equal)
- Participants who made claims may receive reduced or no surplus depending on the policy terms
- The Shariah board must approve the surplus distribution methodology annually
Investment Restrictions
Section titled “Investment Restrictions”- All fund investments must be Shariah-compliant (no riba, gharar, or haram industries)
- Investment screening must follow recognized indices (e.g., DJIM, FTSE Shariah, S&P Shariah)
- Fixed-income alternatives must use sukuk or commodity murabaha structures
- No short-selling, conventional derivatives, or interest-bearing instruments
Qard Hasan (Benevolent Loan)
Section titled “Qard Hasan (Benevolent Loan)”- When the participant fund has a deficit, the operator provides a qard hasan (interest-free loan)
- The loan is repaid from future surpluses only; no interest is charged
- If the fund cannot repay, the operator bears the loss
- Qard hasan terms must be documented and approved by the Shariah board
Segregation of Funds
Section titled “Segregation of Funds”- Participant risk fund (PRF) must be completely segregated from shareholder funds
- Participant investment fund (PIF) must be separately maintained for family takaful
- Fund commingling is a critical Shariah violation
- Each fund must have its own ledger accounts and financial statements
Webhooks and Events
Section titled “Webhooks and Events”| Event | Description |
|---|---|
takaful.policy.created | New policy created in DRAFT status |
takaful.policy.underwritten | Underwriting completed and pricing confirmed |
takaful.policy.shariah_approved | Shariah board approved the policy |
takaful.policy.activated | Policy is now active and coverage has commenced |
takaful.policy.renewed | Policy renewed for a new term |
takaful.policy.lapsed | Policy lapsed due to non-payment of contributions |
takaful.policy.cancelled | Policy cancelled, refund issued |
takaful.policy.matured | Family takaful policy reached maturity |
takaful.contribution.received | Contribution payment received and allocated |
takaful.contribution.overdue | Contribution payment is overdue |
takaful.claim.submitted | New claim submitted by participant |
takaful.claim.acknowledged | Claim acknowledged and reference assigned |
takaful.claim.assessed | Assessment completed with recommended amount |
takaful.claim.approved | Claim approved for settlement |
takaful.claim.rejected | Claim rejected with reasons |
takaful.claim.settled | Claim payment disbursed |
takaful.claim.appealed | Rejected claim appealed by participant |
takaful.surplus.calculated | Surplus calculated for a period |
takaful.surplus.approved | Surplus distribution approved by Shariah board |
takaful.surplus.distributed | Surplus payments disbursed to participants |
takaful.fund.qard_hasan_issued | Qard hasan issued to cover fund deficit |
takaful.fund.qard_hasan_repaid | Qard hasan repaid from surplus |
takaful.retakaful.treaty_placed | Retakaful treaty placed with retakaful operator |
takaful.retakaful.bordereaux_submitted | Bordereaux submitted to retakaful operator |
takaful.compliance.check_completed | Compliance check completed |
takaful.compliance.violation_detected | Shariah compliance violation detected |
takaful.actuarial.valuation_completed | Actuarial valuation completed |
takaful.commission.payout_processed | Agent commission payout processed |
Webhook payload structure:
{ "id": "evt_tak_001", "type": "takaful.claim.approved", "timestamp": "2026-02-14T14:30:00Z", "data": { "claim_id": "clm_abc123", "policy_id": "tak_gen_xyz", "approved_amount": 4200, "currency": "USD", "assessor_id": "usr_assessor_01" }, "tenant_id": "tnt_001", "rail": "takaful"}Integration Points
Section titled “Integration Points”Ledger Integration
Section titled “Ledger Integration”All takaful financial transactions are recorded in the TigerBeetle ledger with proper fund segregation:
| Ledger Account Type | Purpose |
|---|---|
takaful:prf | Participant Risk Fund (tabarru pool) |
takaful:pif | Participant Investment Fund (family savings) |
takaful:shareholder | Shareholder Fund (operator capital) |
takaful:wakalah_fee | Wakalah fee receivable |
takaful:claims_payable | Outstanding claims liability |
takaful:retakaful_ceded | Amounts ceded to retakaful operators |
takaful:qard_hasan | Qard hasan loan balance |
takaful:surplus_distributable | Surplus available for distribution |
Compliance Integration
Section titled “Compliance Integration”// Automatic compliance check on policy creationconst policy = await iof.takaful.general.create({ // ...policy details compliance: { auto_check: true, required_checks: ["tabarru_ratio", "investment_screening"], },});The compliance rail automatically validates:
- Tabarru ratio meets minimum thresholds per product type
- Investment portfolio passes Shariah screening
- Surplus distribution methodology is Shariah board-approved
- Fund segregation is maintained
Zakat Integration
Section titled “Zakat Integration”Takaful funds are subject to zakat obligations:
GET /v1/rails/takaful/fund-management/funds/:id/zakat-liabilityThe zakat rail calculates zakat on:
- Participant investment fund balances (family takaful)
- Shareholder fund balances
- Net zakatable assets per AAOIFI FAS 9 methodology
Reporting Integration
Section titled “Reporting Integration”GET /v1/rails/takaful/reports/financial-statementsGET /v1/rails/takaful/reports/claims-experienceGET /v1/rails/takaful/reports/fund-performanceGET /v1/rails/takaful/reports/surplus-historyGET /v1/rails/takaful/reports/regulatoryReports are generated through the reporting rail and include:
- Fund financial statements (PRF, PIF, Shareholder)
- Claims ratio and experience reports
- Surplus distribution history
- Solvency margin calculations
- Regulatory submissions (per jurisdiction)
AAOIFI Standards
Section titled “AAOIFI Standards”SS-26: Islamic Insurance (Takaful)
Section titled “SS-26: Islamic Insurance (Takaful)”AAOIFI Shariah Standard No. 26 governs takaful operations:
| Requirement | Implementation |
|---|---|
| Tabarru commitment | Enforced via tabarru_portion field on contributions |
| Separation of funds | Segregated ledger accounts per fund type |
| Surplus ownership | Participants own surplus; operator share requires Shariah approval |
| Qard hasan for deficit | Automated qard hasan issuance when PRF deficit detected |
| Investment compliance | Shariah screening on all fund investments |
| Wakalah fee disclosure | Fee percentage disclosed at policy inception |
| Shariah board oversight | Review workflows built into compliance sub-rail |
SS-41: Islamic Reinsurance (Retakaful)
Section titled “SS-41: Islamic Reinsurance (Retakaful)”AAOIFI Shariah Standard No. 41 governs retakaful arrangements:
| Requirement | Implementation |
|---|---|
| Retakaful operator must be Shariah-compliant | Operator registry with compliance verification |
| Treaty terms must follow takaful principles | Treaty model validation on creation |
| Cession must not transfer all risk | Maximum cession percentage enforced |
| Profit-sharing on retakaful surplus | Automated surplus sharing per treaty terms |
| Conventional reinsurance as last resort | Allowed only when no retakaful capacity available, with Shariah board approval |
FAS 19: Contributions in Islamic Insurance
Section titled “FAS 19: Contributions in Islamic Insurance”Financial Accounting Standard No. 19 requirements:
- Contributions recognized as revenue when due
- Unearned contribution reserve calculated on a time-apportioned basis
- Deficiency reserve established when expected claims exceed unearned contributions
FAS 20: Deferred Acquisition Costs
Section titled “FAS 20: Deferred Acquisition Costs”Financial Accounting Standard No. 20 requirements:
- Acquisition costs (commissions, underwriting costs) may be deferred
- Deferred costs amortized over the policy period
- Recoverability tested at each reporting date
Admin Portal Mapping
Section titled “Admin Portal Mapping”The admin portal exposes takaful management through the following sections:
| Admin Section | Takaful Feature | Route |
|---|---|---|
| Policies | View and manage all takaful policies | /admin/takaful/policies |
| Policy Detail | Individual policy lifecycle management | /admin/takaful/policies/:id |
| Claims | Claims queue, assessment, approval workflows | /admin/takaful/claims |
| Claim Detail | Individual claim lifecycle with document review | /admin/takaful/claims/:id |
| Underwriting | Underwriting queue and risk assessment tools | /admin/takaful/underwriting |
| Fund Management | Fund balances, allocations, and transactions | /admin/takaful/funds |
| Surplus Distribution | Calculate, approve, and distribute surplus | /admin/takaful/surplus |
| Retakaful | Treaty management and bordereaux submission | /admin/takaful/retakaful |
| Compliance Dashboard | Shariah compliance monitoring and violations | /admin/takaful/compliance |
| Actuarial | Valuations, reserves, and loss triangles | /admin/takaful/actuarial |
| Commissions | Agent commission schedules and payouts | /admin/takaful/commissions |
| Reports | Financial, regulatory, and performance reports | /admin/takaful/reports |
| Product Configuration | Takaful product definitions and rating tables | /admin/takaful/products |
TypeScript SDK Reference
Section titled “TypeScript SDK Reference”The takaful rail is available through the IOF SDK under the iof.takaful namespace:
import { IOFClient } from "@iof/sdk";
const iof = new IOFClient({ api_key: process.env.IOF_API_KEY, tenant_id: "tnt_001",});
// General takafulconst generalPolicy = await iof.takaful.general.create({ ... });const generalPolicies = await iof.takaful.general.list({ status: "ACTIVE" });
// Family takafulconst familyPolicy = await iof.takaful.family.create({ ... });const savingsBalance = await iof.takaful.family.getSavingsBalance("tak_fam_xyz");
// Claimsconst claim = await iof.takaful.claims.submit({ ... });const claims = await iof.takaful.claims.list({ policy_id: "tak_gen_xyz" });await iof.takaful.claims.approve("clm_abc123", { approved_amount: 4200 });
// Underwritingconst uwRequest = await iof.takaful.underwriting.submit({ ... });await iof.takaful.underwriting.approve("uw_req_001", { rating_class: "standard" });
// Retakafulconst treaty = await iof.takaful.retakaful.create({ ... });await iof.takaful.retakaful.submitBordereaux("treaty_001", { period: "2026-Q1" });
// Fund managementconst fundSummary = await iof.takaful.funds.summary({ fund_type: "participant_risk_fund" });await iof.takaful.funds.issueQardHasan({ amount: 500000, currency: "USD" });
// Surplusconst surplus = await iof.takaful.surplus.calculate({ period: "2025" });await iof.takaful.surplus.distribute("surp_2025_001");
// Complianceconst check = await iof.takaful.compliance.check({ policy_id: "tak_gen_xyz" });const reviews = await iof.takaful.compliance.listShariahReviews();
// Actuarialconst valuation = await iof.takaful.actuarial.valuate({ valuation_date: "2026-02-14" });
// Commissionsconst schedule = await iof.takaful.commissions.createSchedule({ ... });await iof.takaful.commissions.processPayouts({ period: "2026-01" });Next Steps
Section titled “Next Steps”- Compliance Rail - Platform-wide compliance management
- Ledger Rail - Financial transaction ledger
- Zakat Rail - Zakat calculation and distribution
- Reporting Rail - Financial and regulatory reports
- Underwriting Rail - General underwriting framework
- Risk Rail - Risk assessment and management