The verdict in three sentences
In Kenya, M-Pesa exceeds 96% of mobile-money share: ignoring STK Push closes the door on the vast majority of buyers. The Daraja API handles the STK Push flow, C2B and B2C, with a 60-second timeout and roughly 85% first-attempt success. A well-built retry recovers about 8 extra points, turning abandoned carts into real sales.
The STK Push flow end to end
STK Push sends a PIN-entry prompt straight to the customer's phone. Here are the key steps and their 2026 constraints.
| Step | Endpoint / action | Constraint |
|---|---|---|
| Authentication | OAuth token | Expires ~3600 s |
| Trigger | STK Push (Lipa na M-Pesa) | 60 s timeout |
| Client PIN entry | On the handset | Abandonment possible |
| Result callback | CallBackURL (HTTPS) | Must be public |
| Verification | STK Query / C2B | Fallback if no callback |
Moving from sandbox to production requires distinct credentials, a reachable HTTPS CallBackURL, and Safaricom's validation of your shortcode.
Fees, ceilings and availability
The figures below are a 2026 order of magnitude for a Kenyan merchant account.
| Parameter | M-Pesa (Kenya) | Orange Money (francophone) |
|---|---|---|
| Merchant till fee | 0.5 - 1.5% tiered | ~1.5% |
| Daily ceiling | KES 250,000 / day | varies by country |
| Settlement | T+1 | T+2 |
| First-attempt success | ~85% | ~80% |
| East Africa cross-border | Native | Not native |
Orange Money is not native in anglophone East Africa: to serve a cross-border francophone customer, you often route through an aggregator rather than a direct integration.
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
James runs a phone-accessory store in Nairobi. He receives 500 M-Pesa payment attempts a month, average basket KES 1,500. At 85% first-attempt success, 75 sales failed each month, KES 112,500 in lost revenue. By adding an automatic retry after timeout and an STK Query fallback, he recovers about 40 of those sales, KES 60,000 in extra monthly revenue without spending a shilling more on advertising.
FAQ
What exactly is STK Push? It is a Lipa na M-Pesa prompt that appears on the customer's phone to enter their PIN. The customer does not dial a USSD code manually, which reduces errors.
What if the callback never arrives? Use STK Query or C2B confirmation as a fallback. About 15% of transactions need active verification to avoid leaving an order pending.
Can the 60-second timeout be changed? No, it is a platform constraint. Design your UI to show a clear waiting state and offer a retry after expiry.
Can I charge a francophone customer via M-Pesa? Not directly, since Orange Money is not native to anglophone East Africa. A multi-country aggregator routes the payment based on the customer's country.
What ceiling should I know? As a 2026 order of magnitude, the limit is about KES 250,000 per day per account. For high-value baskets, plan for splitting or an alternative channel.
Let's talk about your project. We integrate M-Pesa via Daraja and Orange Money into your checkout, with retry and fallback verification to maximize conversions. 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.

