MTN MoMo API: how to integrate it
The MTN MoMo API lets your app request a payment from a customer's MTN Mobile Money wallet. The customer gets a prompt on their phone, approves it with their PIN, and you get notified. It's how most apps in Ghana, Uganda, Rwanda, Zambia, Cameroon and Côte d'Ivoire take MoMo payments directly. Here's how it works, what you need to get access, and when a gateway is the faster route.
Key facts
- Official developer portalmomodeveloper.mtn.com
- Main productsCollections (receive money), Disbursements (send money), Remittances
- Payment flowRequest to Pay. The customer approves on their phone with their PIN.
- Sandboxfree to test, with test numbers
- Going liveneeds approval from MTN in your country, plus business registration documents
- It works only for MTN subscribers. Other networks need their own integration.
How the integration works
- Sign up on the MTN MoMo developer portal and subscribe to the Collections product to get your subscription key.
- Create an API user and API key in the sandbox, then generate an access token.
- Call Request to Pay with the amount, currency and the customer's MTN number.
- The customer approves on their phone. Check the payment status, or wait for your callback URL to be notified.
- Only give value (the order, access or credits) after the status is SUCCESSFUL, checked from your server.
- To go live, apply through MTN in your country with your company documents, then switch to live credentials.
Want it done for you?
Kollekt integrates MTN MoMo into your app or store. Built your app but stuck on payments? Kollekt integrates mobile money for you.
Questions people ask
Can I use the MTN MoMo API without a registered business?
Not for live payments. The sandbox is open to anyone, but going live needs approval from MTN in your country, which requires company registration documents. If you don't have those yet, a payment gateway that already supports MTN MoMo is usually the quicker path.
Should I use the MTN MoMo API directly or a payment gateway?
Go direct if you only need MTN in one country and can handle the onboarding. Use a gateway if you also need other networks (Airtel, Orange, Telecel) or several countries, since one integration then covers them all.