The verdict in three sentences
Between the operator statement, the transactions recorded on your site and the accounting entries, a 2 to 5 % monthly discrepancy is the norm when everything is manual in 2026. The fix is automatic matching by external reference that reconciles all three sources and flags every anomaly. Well tooled, the monthly close drops from 6 hours to 45 minutes, with a residual discrepancy under 0.5 %.
Where discrepancies come from
The gaps are not theft: they are timeouts, unrecorded refunds, forgotten operator fees and payments confirmed outside the callback. Catching them early avoids a year-end nightmare.
| Source of gap | Typical share | Fix |
|---|---|---|
| Payments confirmed outside callback | 30-40 % | Daily getStatus poll |
| Uncounted merchant fees | 20-30 % | Automatic fee entry |
| Unmatched refunds | 15-25 % | Disbursement reconciliation |
| Timeouts wrongly marked "paid" | 10-15 % | Strict TIMEOUT status |
| Reference duplicates | 5-10 % | Idempotency key |
As an order of magnitude, 70 % of discrepancies come from three causes: missed callbacks, forgotten fees and untracked refunds.
Statement formats and monthly close
MTN MoMo and Orange Money export different statements; automating the match means knowing their fields.
| Criterion | MTN MoMo (UG) | Orange Money (SN) |
|---|---|---|
| Export format | CSV / statement API | CSV / merchant portal |
| Matching key | X-Reference-Id | merchant reference |
| Itemized fees | separate line | separate line |
| Export frequency | daily / API | daily |
| Currency | UGX | FCFA (XOF) |
Once automated, the close checklist runs like this.
| Close step | Manual time | Automated time |
|---|---|---|
| Export operator statement | 30 min | 2 min |
| Match by reference | 3 h | 10 min |
| Resolve discrepancies | 1 h 30 | 20 min |
| Fee entries | 45 min | 8 min |
| Final validation | 15 min | 5 min |
| Total | ~6 h | ~45 min |
Mini case study
Sarah, accountant for an online store in Jinja, ran the MoMo close by hand: 6 hours a month and a 3.5 % average gap on UGX 30,000,000 of volume, roughly UGX 1,050,000 unexplained. After deploying reference matching, the gap falls to 0.4 % (UGX 120,000) and the close to 45 minutes. Over the year she recovers 63 hours of work and hardens her books for the auditor.
Need a professional website?
Kolonell builds websites that attract clients, optimized for the Sénégalese market. Free quote in 2 minutes.
FAQ
What monthly gap is normal without automation?
As a 2026 order of magnitude, expect 2 to 5 % between operator statement, site and accounting. Beyond 5 %, a payment-flow audit is due.
How do I automate reconciliation?
The foundation is matching by external reference: each transaction carries a unique identifier present in all three sources. A daily script cross-checks statement, site database and entries.
Should merchant fees be booked separately?
Yes, they appear on a dedicated statement line and must generate a distinct expense entry. Forgetting them distorts margin by 1.5 to 2 %.
Do MTN MoMo and Orange Money use the same statement format?
No: MTN MoMo offers CSV and a statement API, Orange Money exports a CSV via the merchant portal. The matching keys differ (X-Reference-Id versus merchant reference).
How much time is saved?
A 6-hour manual close drops to about 45 minutes once matching is automated, saving over 60 hours a year.
Let's talk about your project. We automate your MTN MoMo and Orange Money reconciliation with export and matching ready for your accountant. 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.
