Accounts mapping
Mambu Payments mirrors your Mambu Core objects. Each Mambu Core loan account becomes a loan in Mambu Payments. Each Mambu Core credit arrangement becomes a credit_arrangement. These objects are the anchor for all disbursement and repayment flows.
Object mapping
IDs are generated deterministically, you never need a separate mapping table:
loan.id=UUIDv5(namespace = legal_entity_id, name = loanAccount.ID)credit_arrangement.id=UUIDv5(namespace = legal_entity_id, name = creditArrangement.ID)
Any Mambu Payments ID is always derivable from the Mambu Core ID using your tenant's legal_entity_id.
Creation flow
You can create objects in two ways.
Automatic, via Mambu Core webhooks
- Create and approve a loan or credit arrangement in Mambu Core.
- Mambu Core fires an approval webhook.
- Mambu Payments ingests the webhook and creates the corresponding
loanorcredit_arrangement. - Mambu Payments sends you a creation webhook confirming the object is ready.
Manual — via the API
Call POST /loans or POST /credit_arrangements directly with the fields below.
Loan fields POST /loans
POST /loans| Field | Required | Description |
|---|---|---|
amount | Yes | Loan amount in smallest currency units (e.g. 200000 = €2,000.00). |
currency | Yes | ISO 4217 currency code (e.g. EUR). |
cbs_source | Yes | Always mambu. |
cbs_account_type | Yes | Always loan. |
cbs_account_id | Yes | The loan account ID in Mambu Core (e.g. LOAN-001). |
credit_arrangement_id | No | Attach the loan to an existing active credit_arrangement. When set, disbursement_details and repayment_details must be left empty, they are inherited from the credit arrangement. |
disbursement_details.connected_account_id | No | ID of the enabled connected account used to disburse. Omit when credit_arrangement_id is set. |
disbursement_details.receiving_account_id | No | ID of the approved external_account that receives the disbursement funds. |
repayment_details.direct_debit_mandate_id | No | ID of an active outgoing direct debit mandate. Used for debit-based repayment collection. |
repayment_details.receiving_account_id | No | ID of an active internal_account used to receive repayments via credit transfer. |
metadata | No | Additional JSON key/value pairs. Useful for storing your internal loan reference. |
When a loan is attached to a
credit_arrangement,disbursement_detailsandrepayment_detailsmust be left empty on the loan — the credit arrangement supplies them for all its loans.
Credit arrangement fields — POST /credit_arrangements
POST /credit_arrangements| Field | Required | Description |
|---|---|---|
amount | Yes | Total credit line in smallest currency units. |
currency | Yes | ISO 4217 currency code. |
cbs_source | Yes | Always mambu. |
cbs_account_type | Yes | Always credit_arrangement. |
cbs_account_id | Yes | The credit arrangement ID in Mambu Core. |
loan_ids | No | Array of loan IDs to attach at creation time. |
disbursement_details.connected_account_id | No | Connected account used for all disbursements under this arrangement. |
disbursement_details.receiving_account_id | No | External account that receives disbursement funds. |
disbursement_details.cbs_booking_account | No | Mambu Core account where the disbursement is booked. Contains source (always mambu), type (always deposit), and id. |
repayment_details.direct_debit_mandate_id | No | Direct debit mandate used for collections across all loans under the arrangement. |
repayment_details.receiving_account_id | No | Internal account receiving credit transfer repayments. |
repayment_details.cbs_booking_account | No | Mambu Core account where repayments are booked. Contains source, type, and id. |
metadata | No | Additional JSON key/value pairs. |
A credit arrangement acts as the configuration hub for all loans beneath it. Payment routing, booking accounts, and mandate references set on the arrangement are inherited by all attached loans.
Updated about 2 hours ago
