Reconciliation and controls
Reconciling payments and bank records when no transaction IDs match
A financial institution. Delivered as Mwega Intelligence.
- saved
- Ksh 20M
- confidence bands
- 4
- reconciliations: payments and refunds
- 2
- shared transaction IDs needed
- 0
- Challenge
- M-PESA payments, bank statements and refunds sat in separate systems with no shared transaction ID. Narrations were typed by hand, shortened or rewritten, and fees, delays and batching meant amounts and dates rarely lined up. Refunds carried the highest risk of fraud and over-payment.
- Approach
- We stopped trying to force exact matches. Each payment was treated as a claim that money should appear in the bank, and we weighed the evidence for it the way an experienced finance team would: how alike the narrations are, how close the amounts and dates sit, and whether the customer can be identified.
- Solution
- Narrations were cleaned into a common form, a shortlist of likely bank entries was drawn up for each payment, and every pair received a confidence score built from four signals. Scores sorted each item into auto-reconciled, review, weak match or unmatched. Refunds went through a stricter test that also checked refund size and timing. Every decision came with a plain-language reason, so finance, risk and audit could all read the same record.
- Result
- The institution saved Ksh 20 million by debiting the accounts behind the transactions flagged as auto-reconciled. Staff time went to the items that needed judgement, and every decision could be traced back to its evidence.
You're not alone in figuring this out.
Ready to build better?
Whether you're trying to understand your data, improve your systems, adopt AI or grow your organisation, Mwega can help you identify the next step.