ISO 20022 message-based integration
Integrate with Mambu Payments (formerly Numeral) using ISO 20022 messages exchange over API or SFTP
This guide explains how to integrate with Mambu Payments using ISO 20022 messages. It covers supported payment types and schemes, payment and message flows, connectivity options, and how to send and receive messages using SFTP or API endpoints.
This approach gives the flexibility to connect your existing systems to Mambu Payments and support partner banks, clearing houses, or last-mile connectivity providers that are not natively supported by Mambu Payments, while enjoying the benefits of our payments hub.
The integration is based on the exchange of ISO 20022 messages for payment initiation, payment status reports, and account statements over SFTP, API, or webhook.
1. Payment types and schemes
The integration supports a wide range of payment types and schemes and their related payment flows that can be represented using ISO 20022 messages:
- Credit transfers
- Direct debits
- Real-time payments
- RTGS / high-value payments
Any scheme with a compatible ISO 20022 message structure can be supported on demand. Learn more about payment schemes currently supported.
2. Payment flows and ISO 20022 messages
Mambu Payments supports the most common payment flows using ISO 20022 messages.
Incoming messages are parsed and converted into the corresponding Mambu Payments-native objects (e.g., incoming payment, balances, transactions, status updates…). They must conform to the ISO 20022 XSD schemas and business logics below.
Outgoing messages are generated from Mambu Payments-native objects (e.g., payment orders). They also conform to the ISO 20022 XSD schemas and business logics below.
3. Supported connectivity options
3.1. Customer to Mambu Payments
| Method | Description |
|---|---|
| API | Send ISO 20022 messages through API |
| SFTP | Upload ISO 20022 messages as files |
3.2. Mambu Payments to customer
| Method | Description |
|---|---|
| API | Retrieve ISO 20022 messages generated by Mambu Payments through API |
| SFTP | Download ISO 20022 messages uploaded in customer-specific SFTP directory |
| Webhook | For real-time payments, Mambu Payments will send messages to your webhook endpoint. You must respond with the appropriate status code and payload |
4. High-level integration flows
4.1. Customer to Mambu Payments
sequenceDiagram autonumber participant C1 as Customer<br/>via unified Mambu<br/>Payments API box participant M as Mambu Payments participant C2 as Customer<br/>via ISO 20022<br/>integration end participant PBCH as Partner bank / clearing house PBCH ->> C2: Forward message<br/>from another participant C2 ->> C2: Format message into<br/>Mambu Payments ISO<br/>20022 compliant message C2 ->> M: Send message<br/>to SFTP / API M ->> M: Validate message against<br/>XSD schema M ->> M: Parse message into Mambu Payments<br/>objects (incoming payments, return requests, <br/>balances, transactions…) M ->> C1: Send event to webhook
4.2. Mambu Payments to customer
sequenceDiagram autonumber participant C1 as Customer<br/>via unified Mambu<br/>Payments API box participant M as Mambu Payments participant C2 as Customer<br/>via ISO 20022<br/>integration end participant PBCH as Partner bank / clearing house C1 ->> C1: Create resource (payment order, return request…) C1 ->> M: Send corresponding API request M ->> M: Process API request M ->> M: Create or update object<br/>(payment order, return request…) M ->> C1: Send event to webhook M ->> M: Batch object(s) into<br/>Mambu Payments ISO<br/>20022 compliant message M ->> C2: Send message to SFTP / API M ->> C1: Send event to webhook C2 ->> C2: Format message into partner bank<br/>/ clearing house compliant format C2 ->> PBCH: Send message loop PBCH ->> C2: Report C2 ->> C2: Format message into<br/>Mambu Payments ISO<br/>20022 compliant message C2 ->> M: Send message<br/>to SFTP / API M ->> M: Validate message against<br/>XSD schema M ->> M: Parse message into Mambu Payments<br/>objects (payment status report, result of investigation…) M ->> C1: Send event to webhook end
5. ISO 20022 message library
Below are the ISO 20022 messages supported as well as associated specifications.
| Message type | Message name | Specifications |
|---|---|---|
| pacs.008.001.08 | FIToFICustomerCreditTransferV08 | pacs.008.001.08 XSD schema and business logic |
| pacs.003.001.08 | FIToFICustomerDirectDebitV08 | Link |
| pacs.002.001.10 | FIToFIPaymentStatusReportV10 | pacs.002.001.10 XSD schema and business logic |
| camt.053.001.02 | BankToCustomerStatementV02 | Link |
| camt.056.001.08 | FIToFIPaymentCancellationRequestV08 | Link |
| pacs.004.001.09 | PaymentReturnV09 | Link |
| camt.029.001.09 | ResolutionOfInvestigationV09 | Link |
| pacs.007.001.09 | FIToFIPaymentReversalV09 | Link |
| pacs.028.001.03 | FIToFIPaymentStatusRequestV03 | Link |
6. ISO 20022 message ack / nack
The HTTP status code for API or webhook requests or the SFTP status code for SFTP requests is used to determine the success or failure of reception by Mambu Payments or the customer. The table below summarises the different codes:
| Status code | Method | Description |
|---|---|---|
| SFTP zero exit code | SFTP | Successful operation |
| SFTP non-zero exit code | SFTP | Failed operation |
| HTTP 2xx | API / webhook | Successful operation |
| HTTP 400 | API / webhook | Indicates a client error in the ISO 20022 message structure |
| HTTP 404 | API / webhook | Resource not found |
| HTTP 401 / 403 | API / webhook | Authentication / authorisation error. Contact [email protected] |
| HTTP 409 | API / webhook | Conflict |
| HTTP 5xx | API / webhook | Server error. Contact [email protected] |
Updated about 10 hours ago
