The verdict in three sentences
In Uganda, MTN MoMo exposes the Collections API with a subscription key and a dedicated sandbox environment. The right method is to validate in sandbox before go-live, with separate keys per environment, then switch to production keys once callbacks are confirmed. Lock down from the start the transaction limit (ballpark 7,000,000 UGX), the subscription key and the callback carrying the X-Reference-Id.
Sandbox then go-live: the sequence that avoids production incidents
The classic mistake is coding straight against production. Going through a sandbox environment, with dedicated subscription keys, lets you test callbacks, timeouts and failure cases without moving real money.
| Step | Environment | Keys used | Goal |
|---|---|---|---|
| 1. Development | Sandbox | test subscription key | Code the flow |
| 2. Callback tests | Sandbox | test subscription key | Verify notifications |
| 3. Acceptance | Sandbox | test subscription key | Failure cases + timeouts |
| 4. Go-live | Production | production keys | Collect for real |
| 5. Reconciliation | Production | production keys | fallback status() |
Only request production keys once sandbox callbacks are stable. This avoids exposing production credentials during trial phases.
Endpoints, keys and limits in Kampala for 2026
Here are the parameters to lock down for MTN MoMo Collections in Uganda. Limits are 2026 ballparks, to confirm with the merchant contract.
| Parameter | MTN MoMo Uganda |
|---|---|
| Collection mode | Collections API (RequestToPay) |
| Authentication | Ocp-Apim-Subscription-Key |
| Callback | X-Reference-Id header |
| Limit per transaction | ballpark 7,000,000 UGX |
| Creation timeout | 30 to 60 seconds |
| Currency | UGX |
| Idempotency | Unique reference-id |
Comparison with Burkina Faso mobile money (Ouagadougou)
In Burkina Faso, Orange Money and Moov Money expose distinct Collect APIs, best wrapped behind a common abstraction, with limits expressed in FCFA.
Need a professional website?
Kolonell builds websites that attract clients, optimized for the Sénégalese market. Free quote in 2 minutes.
| Criterion | MTN MoMo Uganda (Kampala) | Mobile money Burkina (Ouaga) |
|---|---|---|
| API | Collections API | Orange Collect / Moov |
| Key | Ocp-Apim-Subscription-Key | subscription/API key |
| Sandbox | Yes, dedicated | Yes |
| Callback | X-Reference-Id | notify_url |
| Indicative limit | 7,000,000 UGX | 1,000,000 FCFA |
| Currency | UGX | XOF (FCFA) |
| Timeout | 30 to 60 s | 30 s |
Mini case study
David runs a spare-parts store in Kampala, collecting 350 orders per month at an average basket of 450,000 UGX, i.e. 157,500,000 UGX. Some B2B orders exceeded the 7,000,000 UGX per-transaction limit and failed silently. By automatically splitting these payments into several under-limit transactions and reconciling via status(), he eliminates 100 % of these failures, securing about 12,000,000 UGX of previously lost B2B sales each month.
FAQ
Is there a single mobile money API in Uganda? MTN MoMo Collections is the main one in Kampala, but if you also serve Airtel you will wrap both behind a common abstraction, one implementation per provider.
Why go through a sandbox before production? To test callbacks, timeouts and failure cases without moving real money, and to expose production keys only once the flow is stable. It avoids costly production incidents.
What is the per-transaction limit in 2026? Ballpark 7,000,000 UGX for MTN MoMo Uganda, to confirm with your merchant contract. For large B2B payments, automatically split into several under-limit transactions.
What is the subscription key for? It authenticates your calls to the Collections API and distinguishes your test and production environments. Never mix a sandbox key with production calls.
How do I handle a missing callback? Plan reconciliation via a status() call on the unique reference-id. If the callback never arrives, this fallback check confirms or refutes the payment.
Let's talk about your project. We integrate the MTN MoMo Collections API in Kampala, from sandbox to go-live, with limit handling and reconciliation. WhatsApp +221 77 596 93 33.
Mohamed Bah
Fondateur, Kolonell
Passionate about digital and entrepreneurship in Africa, Mohamed has been helping Sénégalese businesses with their digital transformation since 2020. Founder of Kolonell, he believes every SME deserves a professional and accessible online présence.

