The verdict in three sentences
Testing payments before launch avoids the worst case: a customer pays KES 3,000 and their order never appears. Every provider (M-Pesa, Paystack, Flutterwave, Wave, Orange Money, MTN) offers a sandbox separate from live where you simulate success, failure, timeout and double submission with no real money. The minimum protocol: five test cases per provider, one real webhook test via ngrok, and a validation on 3G with an actual phone.
Sandbox environments per provider
Each provider has its own sandbox. Never test with live keys on real amounts.
| Provider | Sandbox available | Separate keys | Simulates fail/timeout |
|---|---|---|---|
| M-Pesa (Daraja) | Yes | Yes | Yes |
| Paystack | Yes (sk_test) | Yes | Yes (test cards) |
| Flutterwave | Yes | Yes | Yes |
| MTN MoMo | Yes | Yes | Yes |
| Wave | Yes | Yes | Yes |
| Orange Money | Yes | Yes | Yes |
The classic mistake is testing only the success case. Yet it is the failure cases — timeout, insufficient balance, cancellation — that create ghost orders in production if mishandled.
Mandatory test cases
Here are the cases to validate for each provider before opening the store.
| Test case | Expected result | Priority |
|---|---|---|
| Successful payment | Order marked paid + receipt | Critical |
| Failed payment | Order not fulfilled, clear message | Critical |
| Timeout / abandon | Session expired, retry possible | Critical |
| Double submission (double click) | Single charge, no duplicate | Critical |
| Decimal / rounding amount | Exact amount captured | High |
| Replayed webhook | Idempotent, no double fulfil | High |
| Real 3G on phone | Load < 2 s, payment OK | High |
The webhook test is most often skipped: with ngrok, expose your local server to receive a real sandbox notification and verify the signature. Also test replay: a webhook received twice must fulfil the order only once (idempotency).
Mini case study
Sarah, who runs an online grocery in Nakuru, launches without testing the timeout case. In week one, 12 customers abandon mid-payment; with no handling, their orders stay pending and lock inventory. Average basket KES 3,000, i.e. KES 36,000 in frozen sales and several unhappy customers. A two-day QA pass billed at KES 25,000 would have prevented it: the cost of a payment bug in production almost always exceeds the cost of testing.
The Kolonell referral program
Know merchants launching a store who dread exactly these payment bugs? Refer them to Kolonell and earn a referral commission, with nothing to build yourself.
Need a professional website?
Kolonell builds websites that attract clients, optimized for the Sénégalese market. Free quote in 2 minutes.
| Pole referred | Commission on sale | Recurring |
|---|---|---|
| Showcase site | 15% | + 5% |
| E-commerce | 12% | — |
| Marketplace | 10% | — |
| Institutional | 8% | — |
On an e-commerce store sold at KES 250,000 (≈ 1,500,000 FCFA), a referrer earns KES 30,000. All it takes is one successful introduction: we handle the payment QA, testing and go-live.
FAQ
Why is testing the timeout case critical?
Because about one in ten customers abandons mid-payment. Without timeout handling, those orders stay pending, freeze stock and distort your accounting. It is the number-one post-launch incident source.
What is ngrok for in testing?
To expose your local server on a public URL so it receives real webhooks from the sandbox. You validate receipt and signature before deploying to production.
How many test cases per provider?
At least five: success, failure, timeout, double submission and decimal amount. Add webhook replay to guarantee idempotency.
How much does a production payment bug cost?
As an order of magnitude, tens to hundreds of thousands in lost orders, plus lost trust. A two-day QA pass (KES 15,000 to 30,000) is far cheaper.
Can I become a referrer with no technical skills?
Yes. You make the introduction, we build and test. Commission ranges from 8% (institutional) to 15% + 5% recurring (showcase) on the project value.
Let's talk about your project. We test your payments end to end, or pay you as a referrer. 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.

