Skip to content

Rails & SKUs

Understanding the rail-based architecture and SKU licensing model for Islamic Open Finance™.

Rails are self-contained functional modules that provide specific capabilities. Islamic Open Finance™ provides 73 specialized rails across 12 major categories, designed for Shariah-compliant financial infrastructure.

graph TB
subgraph platform ["🏛️ Islamic Open Finance™ Platform"]
subgraph core ["🏛️ Core Business Rails"]
CONTRACTS["📋 Contracts"]
KYC["🔍 KYC/KYB"]
COMPLIANCE["✅ Compliance"]
AML["🛡️ AML/CFT"]
ZAKAT["🕌 Zakat"]
end
subgraph financial ["💰 Financial Rails"]
TREASURY["🏦 Treasury"]
CLEARING["🔄 Clearing"]
PORTFOLIO["📊 Portfolio"]
RISK["⚠️ Risk"]
LIMITS["📏 Limits"]
UNDERWRITING["📝 Underwriting"]
end
subgraph payments ["💳 Payments & Routing"]
ROUTING["🔀 Routing"]
MESSAGES["📨 Messages"]
RECONCILIATION["🔗 Reconciliation"]
end
subgraph governance ["⚖️ Governance & Legal"]
GOVERNANCE["🏛️ Governance"]
LEGAL["📜 Legal"]
DISPUTES["⚡ Disputes"]
CASES["📁 Cases"]
end
subgraph identity ["🔐 Identity & Access"]
AUTH["🔑 Auth"]
CONSENT["📝 Consent"]
APIKEYS["🔐 API Keys"]
end
subgraph integration ["🔌 Integration & Events"]
WEBHOOKS["🔔 Webhooks"]
EVENTS["📡 Events"]
NOTIFICATIONS["📬 Notifications"]
end
subgraph infra ["⚙️ Infrastructure"]
ANALYTICS["📈 Analytics"]
REPORTING["📊 Reporting"]
SEARCH["🔎 Search"]
BILLING["💳 Billing"]
end
end
click CONTRACTS "/api/rails/contracts" "View Contracts API"
click KYC "/api/rails/kyc" "View KYC API"
click COMPLIANCE "/api/rails/compliance" "View Compliance API"
click AML "/api/rails/aml" "View AML API"
click TREASURY "/api/rails/treasury" "View Treasury API"
click CLEARING "/api/rails/clearing" "View Clearing API"
click WEBHOOKS "/api/rails/webhooks" "View Webhooks API"
click BILLING "/api/rails/billing" "View Billing API"
click ANALYTICS "/api/rails/analytics" "View Analytics API"
click REPORTING "/api/rails/reporting" "View Reporting API"
click SEARCH "/api/rails/search" "View Search API"
style platform fill:#f5f5f5,stroke:#1a5f4a,stroke-width:3px
style core fill:#e8f5e9,stroke:#2e7d32,stroke-width:2px
style financial fill:#e3f2fd,stroke:#1565c0,stroke-width:2px
style payments fill:#fff3e0,stroke:#ef6c00,stroke-width:2px
style governance fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
style identity fill:#fce4ec,stroke:#c2185b,stroke-width:2px
style integration fill:#e0f2f1,stroke:#00695c,stroke-width:2px
style infra fill:#eceff1,stroke:#455a64,stroke-width:2px
RailDescriptionKey FeaturesEndpoints
ContractsIslamic contract lifecycle managementMurabaha, Ijarah, Musharakah, Mudarabah, Sukuk25+
KYCCustomer verification & identityEnhanced KYC/KYB, identity verification, document validation18+
ComplianceRegulatory compliance & policy enforcementShariah compliance, jurisdiction rules, automated checks15+
AMLAnti-money laundering & sanctionsScreening, PEP detection, sanctions matching, monitoring12+
ZakatZakat calculation & distributionNisab calculation, asset classification, distribution tracking10+
RailDescriptionKey FeaturesEndpoints
TreasuryPosition & liquidity managementCash positions, FX management, liquidity forecasting20+
ClearingSettlement & clearing operationsT+0 to T+3 settlement, netting, multi-currency15+
PortfolioPortfolio managementPosition tracking, NAV calculation, rebalancing14+
RiskRisk assessment & managementCredit risk, market risk, exposure limits12+
LimitsFinancial limits & controlsTransaction limits, velocity checks, thresholds10+
UnderwritingRisk underwritingProposal evaluation, risk scoring, approval workflows12+
RailDescriptionKey FeaturesEndpoints
RoutingPayment routing & rulesIntelligent routing, cost optimization, failover10+
MessagesFinancial messagingISO 20022, SWIFT, local formats, transformation15+
ReconciliationTransaction reconciliationAuto-matching, exception handling, reporting12+
RailDescriptionKey FeaturesEndpoints
GovernanceShariah governanceBoard management, fatwa tracking, resolution workflows12+
LegalLegal document managementContract templates, version control, signatures10+
DisputesDispute resolutionCase management, escalation, resolution tracking10+
CasesCase managementWorkflow automation, SLA tracking, audit trails12+
RailDescriptionKey FeaturesEndpoints
AuthAuthenticationJWT, session management, MFA support15+
OAuth2OAuth 2.0 / OpenID ConnectAuthorization flows, token management12+
SAMLEnterprise SSOSAML 2.0, IdP integration8+
ConsentPrivacy & consentGDPR/CCPA compliance, preference management10+
API KeysAPI key managementKey generation, rotation, scoping8+
RailDescriptionKey FeaturesEndpoints
WebhooksEvent notificationsDelivery, retry, HMAC signing10+
EventsEvent distributionPub/Sub, event sourcing, replay8+
NotificationsMulti-channel notificationsEmail, SMS, push, in-app10+
IntegrationsExternal integrationsConnectors, sync jobs, data feeds12+
RailDescriptionKey FeaturesEndpoints
AnalyticsReal-time analyticsHigh-performance OLAP, dashboards, custom queries12+
ReportingRegulatory reportingBasel III, AAOIFI, IFSB, custom templates10+
SearchFull-text searchFast indexing, faceted search, filters6+
BillingUsage metering & billingStripe integration, invoicing, usage tracking12+
ObservabilityPlatform monitoringSLO tracking, distributed tracing, audit logs10+
AuditAudit trailsComprehensive logging, compliance reporting8+

SKUs (Stock Keeping Units) package rails into commercial offerings:

// Example SKU structure
{
id: "banking-core",
tier: "professional",
enabled_rails: [
"contracts", "kyc", "compliance", "aml",
"treasury", "risk", "reporting", "webhooks"
],
limits: {
contracts_max: 100000,
api_calls_per_month: 5000000,
rate_limit_per_minute: 1200
},
price: 8500, // USD/month
sla: { uptime: "99.9%", support: "24x7" }
}
SKUTierTargetRails
Sandbox FreeFreeDevelopers4 rails
Funds ProProfessionalFund Managers10 rails
Banking CoreProfessionalRetail Banks16 rails
National RailEnterpriseCentral Banks20 rails
Takaful CompleteEnterpriseTakaful Operators23 rails
PackJurisdictions
GCC RegulatorySAMA, CBUAE, DIFC, CBB, CBK, CBO, QCB
Malaysia PackBNM, SC Malaysia
FeatureDescription
Advanced AnalyticsAI-powered insights
White LabelCustom branding
Dedicated InfrastructureSingle-tenant
Extended Retention10-year data retention

Rails are enabled per workspace via the SDK:

import { IslamicOpenFinance } from "@iof/sdk";
const iof = new IslamicOpenFinance({ apiKey: process.env.IOF_API_KEY });
// Enable a rail for a workspace
await iof.workspaces.enableRail({
workspaceId: "ws_123",
rail: "contracts",
sku: "iof.contracts.murabaha.growth",
});
// Check enabled rails
const workspace = await iof.workspaces.get("ws_123");
console.log(workspace.enabledRails);
// ["contracts", "kyc", "compliance", "webhooks"]

Each rail operates independently with:

  • Own database schema - Isolated data models
  • Own API endpoints - Dedicated routes under /api/v1/{rail}
  • Own events - Rail-specific event types
  • Own policies - Cerbos authorization policies
  • Own metrics - Prometheus metrics per rail

Rails communicate via standard event envelopes:

interface EventEnvelope {
event_id: string;
event_type: string; // e.g., "contract.created"
schema_version: string; // Semantic versioning
occurred_at: string; // ISO 8601
producer: string; // Rail name
trace_id: string; // Distributed tracing
entity: {
type: string; // e.g., "contract"
id: string;
};
payload: Record<string, unknown>;
term_ids: string[]; // Taxonomy terms
}

All rails are multi-tenant by design:

  • Tenant isolation - Data is always scoped by tenantId
  • Workspace partitioning - Workspaces further segment tenant data
  • Policy enforcement - Cerbos policies enforce access control
  • Audit trails - All operations are logged with tenant context