The verdict in three sentences
Integrating M-Pesa STK Push (Daraja API) and Airtel Money relies on one pattern: you send a push request, the customer approves on their handset, then you confirm the state (PENDING → SUCCESS / FAILED) via callback or polling. The number-one trap in 2026 is the timeout: the customer can take 60 to 90 seconds to approve the prompt, so a callback window that is too short fails otherwise-valid payments. Budget 3 to 5 days of integration per operator and design for a 90 second window to reach an 88 to 95% success rate.
Key parameters by operator
| Parameter | M-Pesa (Daraja) | Airtel Money |
|---|---|---|
| Test environment | Daraja sandbox | Partner sandbox |
| Transaction id | CheckoutRequestID | Merchant reference |
| States | PENDING / SUCCESS / FAILED | PENDING / SUCCESS / FAILED |
| Confirmation | STK callback + query | Callback + polling |
| Countries | Kenya, Tanzania | Kenya, Tanzania, several markets |
| Integration time | 3 to 5 days | 3 to 4 days |
2026 estimate: API details vary by version and merchant contract.
Reliability: timeout, retry and success rate
Success rate depends directly on how you manage the wait window and retries.
| Parameter | Recommended value | Impact if misconfigured |
|---|---|---|
| Collection timeout | 90 seconds | < 60 s: valid payments fail |
| Polling interval | 3 to 5 seconds | too short: API quota exceeded |
| Retry count | 2 to 3 | 0: abandons on network error |
| Idempotency key | Mandatory | double-charging the customer |
| Target success rate | 88 to 95% | < 85%: direct revenue loss |
Moving from a 45 s to a 90 s window alone can lift the success rate from 82% to 93% on M-Pesa STK Push.
Need a professional website?
Kolonell builds websites that attract clients, optimized for the Sénégalese market. Free quote in 2 minutes.
Mini case study
Ibrahim runs an online store: 600 payment attempts/month, 18,000 FCFA-equivalent average basket. With a 45 s callback window his success rate caps at 82%, i.e. 108 failed payments and 1,944,000 FCFA of lost revenue/month. By extending the window to 90 s and adding 2 retries he reaches 93%, recovering 66 payments worth 1,188,000 FCFA/month — a single setting change, with no new product or ad spend.
FAQ
How long to integrate M-Pesa? Budget 3 to 5 days with the Daraja sandbox: STK Push request, state handling and callbacks. Go-live depends on your merchant account validation.
What timeout should I use? 90 seconds is the right trade-off in 2026. Below 60 s you fail payments the customer is still approving on their handset.
Polling or callbacks? Both: the callback confirms fast when it arrives, polling is your safety net if it is lost. Query every 3 to 5 seconds.
How do I avoid double charges? An idempotency key per payment attempt. Without it, a network retry can charge the customer twice — the leading dispute cause.
Does Airtel Money cover all of East Africa? Not entirely — Airtel is strongest in Kenya, Tanzania and several markets. Combine operators according to your target countries.
Let's talk about your project. We integrate M-Pesa and Airtel with timeout, retries and idempotency tuned to maximise your success rate. 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.
