Integration Guide
Transaction Processing
Ledger patterns, double-entry accounting, transaction types, and limit enforcement in M2P Prepaid Platform.
All financial transactions follow a double-entry accounting pattern in the Transaction Service, ensuring an auditable and reconcilable ledger.
Ledger Entry Patterns
| Transaction | Debit Account | Credit Account |
|---|---|---|
| Load (Credit to wallet) | Pool Account / Funding Source | Customer Wallet |
| Debit (Purchase / ATM) | Customer Wallet | Settlement Account |
| Fee | Customer Wallet | Fee Collection Account |
| Tax (GST) | Fee Collection Account | Tax Liability Account |
| Reversal | Reverse original entries | Reverse original entries |
Transaction Origins
| Origin | Description | Channel Type |
|---|---|---|
ATM | ATM withdrawal | Card Present |
POS | Point of sale | Card Present |
ECOM | E-commerce | Card Not Present |
NFC | Contactless tap-to-pay | Card Present |
NFC_WITHPIN | Contactless with PIN | Card Present |
MICRO_ATM | Micro ATM | Card Present |
LOAD | Load via API | API |
CORPORATE_LOAD | Corporate bulk load | API |
CORPORATE_DEBIT | Corporate debit | API |
PAYMENT_TO_BANK | IMPS/NEFT payment | API |
LOAD_DIY | Self-service load | API |
Limit Enforcement
Limits are enforced at multiple levels during authorization:
| Level | Scope | Override |
|---|---|---|
| Product | All customers of a product | Base configuration |
| KYC Tier | Full KYC / Min KYC / No KYC | Per-tier limits |
| Channel | ATM, POS, ECOM, UPI, IMPS | Per-channel limits |
| Time Period | Daily, Monthly, Yearly, Lifetime | Per-period limits |
| Transaction Group | Combined limit across types | Group configuration |
| Per-Entity | Specific customer/corporate | Override product-level |
When a transaction exceeds any limit, it is declined with a Limit Exceeded reason. Transaction count limits and amount limits are checked independently.
