Callback
Setting up a Callback URL
Transfer and RequestToPay APIs are Asynchronous in MTN MoMo API Platform
When a merchant system sends a POST of either /transfer, or /requesttopay APIs, the Gateway validates the request and then responds with “202 Accepted”
The transaction is then queued for processing.
Once processed, a callback with the final result of the transaction is sent to the merchant system
In order to receive the callback for your transactions, please consider the following:
a) On Sandbox
Register your callback host by specifying the domain as providerCallbackHost when creating your API Keys. On production this will be done via the Account Portal
Specify the callback URL in each of your /requesttopay or /tranfer POST
Use http and not https on sandbox
Allow PUT & POST on your callback listener host
b) On Production
After Go-live you will be provided a link to log on to your Accounts Portal
You will be required to register you callback host on the portal when creating your API keys as shown below
Only https is allowed on production
Allow PUT & POST on your callback listener host
The Wallet Platform will only send the callback once. There is no retry on the callback if the Partner system does not respond. A merchant system can, in cases where a callback was not received , poll for the transaction status as described in the GET method
Let's look at the Deposit API under the product set Disbursement for instance.
The are two Deposit APIs - Deposit-V1 and Deposit-V2.
The callback resuest for Deposit-V1 can be sent via
https://momodeveloper.mtn.com/docs/services/disbursement/operations/depositV1-POST
The callback received would be of the type POST.
Approved Intermediate CA's for Open API
For Open API callbacks to function, the 3PP Intermediate certificate chains must be imported on the PG’s tls_keystore and callback URL’s are required to use https L7 protocol:
CN – Refers to the Common name of the immediate intermediate CA Chain
Alias – Name that is used while storing the Certificate in PG’s tls_keystore
Below is the list of Approved Intermediate CA's that's already available to use:
NOTE: Incase any Partner's callback URL is not part of the Approved Intermediate CA's, callbacks might not work for the said Partners.