Core Capabilities
The ID.Banking platform delivers nine integrated modules that together form a complete core banking engine. Each module operates as an independent microservice, communicable via event-driven messaging, and deployable in isolation or as a unified stack.
Architecture Overview
flowchart TB
subgraph presentation["Presentation Layer"]
direction LR
SPA["Admin SPA (Angular)"]
API["Open Banking Gateway"]
end
subgraph services["Service Modules"]
direction LR
Payments --- Lending --- Cards --- Treasury --- FX --- Fraud
end
subgraph core["Core Ledger Engine"]
direction LR
L["Double-entry immutable accounting"]
end
subgraph warehouse["Warehouse (Analytics)"]
direction LR
W["Reporting, BI, and regulatory data"]
end
presentation --> services --> core --> warehouse
Module Summary
| Module | Function | Key Metric |
|---|---|---|
| Ledger | Double-entry accounting engine | 10,000+ TPS per node |
| Payments | Multi-rail payment orchestration | 8+ African rails |
| Lending | Full loan lifecycle management | Origination to collections |
| Cards | Virtual and physical card issuance | Visa/Mastercard ready |
| Treasury | Liquidity and position management | Real-time visibility |
| FX | Multi-currency conversion | 40+ African currencies |
| Fraud | Transaction risk scoring | Sub-50ms decisioning |
| Warehouse | Reporting and analytics | IFRS 9 compliant |
| Open Banking Gateway | Third-party API access | PSD2 / FSCA aligned |
1. Ledger
The core accounting engine implements a double-entry, immutable ledger using event sourcing and append-only storage. Every financial state change is recorded as an immutable event, providing a complete audit trail from inception.
Key Features
- Double-entry bookkeeping with automated balancing validation
- Immutable append-only journal — no transaction can be deleted or altered
- Multi-currency account support with real-time position tracking
- Chart of accounts aligned to BIAN service domains
- Event-sourced architecture enabling point-in-time balance reconstruction
Ledger Entry Structure
{
"journalId": "jnl_2024_001542",
"timestamp": "2024-01-15T09:32:11.445Z",
"entries": [
{ "account": "1001-ZAR-SAVINGS", "debit": 1500.00, "credit": 0 },
{ "account": "2001-ZAR-TRANSIT", "debit": 0, "credit": 1500.00 }
],
"metadata": {
"source": "payment-service",
"correlationId": "pay_rtc_8f3a2b",
"immutable": true
}
}
2. Payments
The payments module orchestrates transactions across 8+ African payment rails, handling routing, retry logic, reconciliation, and settlement in a single unified interface.
Supported Rails
| Rail | Coverage | Settlement | Type |
|---|---|---|---|
| PayShap | South Africa | Real-time | Account-to-account |
| RTC (Rapid Transfer Credit) | South Africa | Real-time | Interbank |
| PAPSS | Pan-African (7 countries) | Near real-time | Cross-border |
| SADC-RTGS | 16 SADC member states | Same-day | Regional RTGS |
| M-Pesa | Kenya, Tanzania, DRC | Real-time | Mobile money |
| MTN MoMo | 15 African markets | Real-time | Mobile money |
| Airtel Money | 14 African markets | Real-time | Mobile money |
| EFT (Electronic Funds Transfer) | South Africa | T+1 | Batch |
Payment Flow
flowchart LR A[Initiation] --> B[Validation] B --> C[Sanctions Check] C --> D[Rail Selection] D --> E[Submission] E --> F[Settlement Confirmation] F --> G[Reconciliation] G --> A
3. Lending
End-to-end loan lifecycle management from origination through collections, supporting consumer credit, microfinance, and institutional lending products.
Lifecycle Stages
- Origination — Application capture, document collection, and eligibility pre-screening
- Credit Scoring — Bureau integration (TransUnion, Experian, XDS) plus internal ML scoring models
- Underwriting — Rule-based and manual approval workflows with delegation authorities
- Disbursement — Multi-channel payout via any supported payment rail
- Servicing — Interest accrual, repayment processing, statement generation
- Collections — Automated arrears management, SMS/email campaigns, external agency handoff
Product Configuration
Lending products are defined declaratively, enabling non-technical staff to create new products:
product:
name: "Personal Loan - Standard"
currency: ZAR
term_range: [3, 60] # months
amount_range: [1000, 250000]
interest:
type: reducing_balance
rate_range: [12.5, 27.5] # annual percentage
fees:
initiation: { type: percentage, value: 2.5, cap: 5000 }
monthly_service: { type: fixed, value: 69 }
collections:
grace_period_days: 7
escalation_stages: [sms, email, call, legal]
4. Cards
Virtual and physical card issuance with processor-agnostic integration, supporting prepaid, debit, and credit card programmes on Visa and Mastercard networks.
Capabilities
- Instant virtual card provisioning via API
- Physical card lifecycle management (issue, activate, replace, block)
- 3D Secure authentication integration
- Real-time authorisation with configurable spend controls
- PIN management and card-not-present fraud rules
- Apple Pay and Google Pay tokenisation support
Card Controls
| Control | Description | Configurable |
|---|---|---|
| Daily spend limit | Maximum daily transaction value | ✓ |
| Merchant category blocking | Block specific MCC codes | ✓ |
| Geographic restrictions | Country-level allow/deny | ✓ |
| Channel restrictions | ATM, POS, e-commerce toggle | ✓ |
| Velocity limits | Max transactions per time window | ✓ |
5. Treasury
Real-time liquidity and position management across all accounts, currencies, and counterparties, providing treasury teams with consolidated visibility.
Key Features
- Real-time nostro/vostro position monitoring
- Cash flow forecasting with configurable time horizons
- Automated sweep and pool configurations
- Counterparty exposure tracking
- Regulatory reserve calculations (CRR, LCR)
- Integration with central bank settlement systems
Position Dashboard Data Model
flowchart TB A["ZAR Nostro — Navi Bank"] --> B["Opening: R 45,230,000"] A --> C["Inflows: R 8,150,000"] A --> D["Outflows: R 6,920,000"] A --> E["Projected close: R 46,460,000"] A --> F["Required reserve: R 12,000,000"] A --> G["Available liquidity: R 34,460,000"]
6. FX (Foreign Exchange)
Multi-currency conversion engine supporting 40+ African currencies with real-time rate feeds, margin management, and FinSurv/BoP reporting built in.
Features
- Real-time spot rate feeds from multiple providers
- Configurable margin/spread per currency pair and client tier
- Automatic FinSurv Balance of Payments (BoP) categorisation
- SARB reporting-ready transaction records
- Forward contract and swap support
- Multi-leg cross-currency routing (e.g., KES → USD → ZAR)
Supported Currency Pairs (Sample)
| Base | Quote | Spread (bps) | Daily Volume Capacity |
|---|---|---|---|
| ZAR | USD | 25–50 | Unlimited |
| ZAR | GBP | 30–60 | Unlimited |
| KES | ZAR | 40–80 | $10M equivalent |
| NGN | USD | 50–100 | $5M equivalent |
| GHS | ZAR | 45–90 | $5M equivalent |
7. Fraud
Real-time transaction risk scoring engine delivering sub-50ms decisions using rule-based and machine-learning models to detect and prevent fraudulent activity.
Detection Capabilities
- Velocity-based anomaly detection (unusual transaction frequency)
- Geolocation inconsistency detection (impossible travel)
- Device fingerprinting and behavioural biometrics
- Merchant reputation scoring
- Network graph analysis for syndicate detection
- SIM-swap detection integration with MNOs
Decision Pipeline
flowchart LR
A[Transaction] --> B[Feature Extraction]
B --> C[Rule Engine]
B --> D[ML Model]
C --> E{Final Decision}
D --> E
E -->|Allow| F[Process]
E -->|Review| G[Case Management]
E -->|Block| H[Decline]
Performance Targets
| Metric | Target | Achieved |
|---|---|---|
| Decision latency (p95) | < 50ms | 38ms |
| False positive rate | < 2% | 1.4% |
| Detection rate | > 95% | 96.2% |
| Model refresh cycle | Daily | Daily |
8. Warehouse
Analytics and reporting data warehouse providing regulatory-grade reporting, business intelligence, and IFRS 9 compliance calculations.
Capabilities
- Real-time data replication from operational services via CDC (Change Data Capture)
- Pre-built regulatory report templates (SARB BA returns, FinSurv)
- IFRS 9 Expected Credit Loss (ECL) calculations
- Customer segmentation and cohort analysis
- Configurable dashboard and alerting framework
- Data retention policies aligned to regulatory requirements (5–7 years)
Report Categories
- Regulatory — BA100, BA200, BA300, BA900 series; FinSurv BoP reports
- Financial — P&L, balance sheet, trial balance, cash flow statements
- Risk — ECL provisions, portfolio-at-risk (PAR), concentration risk
- Operational — Transaction volumes, SLA adherence, system health
- Commercial — Product performance, customer acquisition, revenue per product
9. Open Banking Gateway
API gateway enabling third-party access to banking services, aligned with PSD2 (EU), FSCA Conduct Standards (South Africa), and Open Banking Nigeria frameworks.
Standards Alignment
| Standard | Jurisdiction | Status |
|---|---|---|
| PSD2 / Berlin Group | EU/EEA | Compliant |
| FSCA Conduct Standards | South Africa | Aligned |
| Open Banking Nigeria | Nigeria | Aligned |
| FSD Kenya Guidelines | Kenya | Roadmap |
Gateway Features
- Consent management with granular permission scopes
- OAuth 2.0 / OpenID Connect authentication
- Rate limiting and quota management per third-party
- API versioning with backward compatibility guarantees
- Real-time webhook notifications for account events
- Developer portal with sandbox environment
API Surface
flowchart TB
subgraph API["Open Banking API Surface"]
direction TB
A["/accounts — Balances and statements"]
B["/payments — Initiation and status"]
C["/cards — Controls and issuance"]
D["/lending — Applications and status"]
E["/fx — Rate quotes and conversion"]
F["/consent — Consent lifecycle"]
G["/webhooks — Event subscriptions"]
end
Modular Deployment
Each module can be deployed independently, enabling institutions to adopt capabilities incrementally:
flowchart TB
subgraph deploy["Deployment Profiles"]
direction TB
A["Minimal viable bank: Ledger + Payments + Lending"]
B["Digital wallet: Ledger + Payments + Cards"]
C["Treasury operation: Ledger + Treasury + FX"]
D["Full-stack bank: All 9 modules"]
end
This modular approach reduces time-to-market and allows institutions to expand capabilities as their licence and business model evolves.