- 23 Feb 2023
- 2 Minutes To Read
- Updated On 23 Feb 2023
- 2 Minutes To Read
Mambu fully supports industry standard authorization hold flows for card payments and allows you to request, adjust, reverse, and settle holds against Current Account and Revolving Credit type products.
Using the Cards API, you can process transaction requests, transaction advices, and transaction reversals.
There are two different models for how payment cards operate:
- Single Message Schema: the requested amount is written off immediately by executing a transaction after a successful payment card authorization. This is achieved using transaction requests.
- Dual Message Schema: the requested amount is held after successful authorization and a transaction is executed only after receiving a confirmation as a clearing or settlement transaction. This is achieved using a combination of authorization requests and transaction advices. Clearing or settlement transactions can come in a file or in a batch and each transaction must be posted as a transaction advice.
The transaction direction is determined using the dedicated parameter
DBIT: to debit a payment card account.
CRDT: to credit a payment card account.
If the reference to an authorization hold is present and it is in
PENDING state, the transaction direction is determined by the authorization hold type correspondingly:
DBIThold triggers a debit transaction,
CRDThold triggers a credit transaction.
creditDebitIndicator, nor reference to a hold are present, the payment card account is debited by default.
The following table describes the different types of messages that pass between the card issuer and Mambu, depending on the type of transaction initiated.
|Card message Type||Debit Cards Availability||Credit Cards Availability|
|Debit Transaction Request|
|Credit Transaction Request|
|Debit Transaction Advice|
|Credit Transaction Advice|
|Full Transaction Reversal|
|Partial Transaction Reversal|
There are credit card flows that we currently do not support, but we are working on achieving parity.
Transaction requests are posted to Mambu using a dedicated Create card transaction request. Request body parameter
advice is used to determine if it is a transaction request or a transaction advice. If
FALSE, the request is considered a transaction request. If it is a debit transaction request, the available balance is checked: if the requested transaction amount doesn't exceed the available balance, a transaction is executed. Otherwise, the transaction request is declined due to insufficient funds.
Transaction advices are posted to Mambu using a dedicated API request with the request body parameter
advice equal to
TRUE. This will cause the authorization to be made without validating the available balance and as a result can allow a cardholder to make a transaction for an amount over any defined limits as well as allow an account to go into Technical Overdraft.
If a clearing transaction has been successfully matched to an authorization request, the reference to it can be filled in a request body parameter
externalAuthorizationReferenceId. If an authorization hold is found and it is in
PENDING state, it is released after a transaction is successfully executed. Such authorization hold doesn't impact the available balance anymore and is left in
You can reverse previously made transactions using the Reverse card transactions endpoint.
Debit transactions can be reversed in full or partially. Mambu makes sure that the sum of all reversed transactions does not go over the amount of the initial transaction.
To reverse a credit transaction, you must use the exact amount.