Daily till reconciliation is the single control that decides whether an M-PESA till is a real business tool or a slow leak. The procedure is short: at cut-off, pull the M-PESA statement for the day, sum M-PESA credits, compare against POS-tagged M-PESA sales, count the cash drawer, book the day, deposit. Ten to fifteen minutes. The M-PESA merchant base reached 3.13 million tills in FY26 (Source: Safaricom PLC Annual Report FY2026) and most of them never do this. That is the whole gap.
Why daily, not weekly
A weekly reconciliation cadence looks efficient and is not. By Friday you cannot remember which of Monday's 47 M-PESA receipts was the disputed one. Daily reconciliation catches the problem while the customer, the staff member and the cashier all still remember the transaction. The cost is ten minutes; the benefit is the ability to actually identify the source of any gap.
The four data streams
Every till reconciliation compares four independent records of the same trading day.
| Stream | Source | What it captures |
|---|---|---|
| POS sales log | POS Z-report or notebook | What you say you sold |
| M-PESA statement | Business Portal export | What Safaricom recorded as credits to your till |
| Cash drawer | Physical count | What is physically in the till |
| Other tenders | Card slips, bank alerts | Any non-M-PESA, non-cash receipts |
The daily close procedure
- 1. Cut off the trading day. Decide the cut-off time (e.g. 21:00) and stop accepting till payments after it. Any payment after cut-off belongs to the next trading day.
- 2. Print the M-PESA statement for the day. Log into the M-PESA Business Portal, run Transaction Statement for the till shortcode with from-date = to-date = today. Export CSV.
- 3. Total M-PESA receipts. Sum the credit column. Ignore reversals and outgoing settlement entries. This is your M-PESA line total.
- 4. Total POS or notebook sales. From your POS system or a paper sales log, total all sales tagged as M-PESA payment method.
- 5. Compare the two totals. M-PESA statement total should equal POS M-PESA-tagged total. If it matches, proceed. If not, work the mismatch diagnostic ladder before continuing.
- 6. Count the cash drawer. Physical count of cash. Opening float + cash sales - cash payouts - drops to safe = expected drawer amount. Check against physical count.
- 7. Book the day. Record daily takings by tender type (M-PESA, cash, card) in the daily book. File the M-PESA statement PDF, the POS Z-report and the cash-count sheet together.
- 8. Deposit and settle. Bank the cash. Confirm the M-PESA auto-settlement to your bank account hits the following morning. Close.
When the totals do not match
Any mismatch, even KES 10, gets worked. Do not paper over it. Run the diagnostic ladder in order: typo, duplicate, wrong till, staff reversal, timing lag, staff pilfer. Full detail in the reconciliation mismatch guide.
The cash-up sheet
Cash reconciliation is separate arithmetic. Opening float plus cash sales less cash payouts less drops-to-safe should equal drawer count. If you find cash short by the exact amount of an M-PESA over, someone charged a customer both ways: cash accepted but the M-PESA receipt not voided (or the reverse). This pattern is common and instructive.
The M-PESA auto-settlement
A Buy Goods till settles daily to the nominated bank account. Settlement runs overnight; funds land in the settlement bank the following morning. The daily settlement should equal yesterday's M-PESA statement credit total less merchant commission (0.55 percent above KES 500, capped at KES 200 above KES 36,363 per transaction; Source: Safaricom Consumer Tariffs). If yesterday's settlement does not equal yesterday's till credits less commission, escalate to Safaricom Business Support on 0722 002 100.
Who does it, and when
Separation of duties: the person on shift counts the cash and prepares the cash-up sheet. The owner, a checker or a second staff member compares to the M-PESA statement. If a single person controls both cash and reconciliation, all internal control collapses. This is the single most common Kenyan SMB weakness we see, and the fix is procedural, not technological.
A minimum viable template
A single spreadsheet with these columns is enough to start: Date, Till shortcode, POS M-PESA total, M-PESA statement total, Difference, Cash opening float, Cash sales, Cash payouts, Cash count, Cash difference, Notes. One row per day. Any operator running this template for 30 days will have caught something.
Related business guides
- M-PESA for Business hub
- M-PESA reconciliation mismatch: diagnostic ladder
- Customer disputes and chargebacks
- Float management for shops and agents
- M-PESA B2C for supplier payments and refunds
- How to accept M-PESA payments in your shop
- How to download an M-PESA statement
- How to reverse an M-PESA transaction
- M-PESA charges 2026
- Kenya mobile money statistics 2026
FAQ
How often should I reconcile my till?
Daily, at close of trading. Weekly reconciliation is where money disappears silently: by day five you cannot remember which mismatch is which. A ten-minute daily close catches typos and staff errors while the transaction is still fresh in every witness memory. For high-volume tills, reconcile at every shift change as well.
What do I need to reconcile?
Four data streams. One, the point-of-sale (POS) or notebook sales log. Two, the M-PESA Business Portal transaction statement for the till on that trading date. Three, cash in drawer against opening float plus cash sales less payouts. Four, any card, bank transfer or supplier IOU takings. They should all add up to the same closing figure.
Why does the M-PESA statement not match my till confirmations?
Almost always one of five causes: a customer paid the wrong till, a customer paid twice and one was reversed, a staff member reversed a completed transaction, an SMS confirmation lagged past midnight and landed on the wrong day, or the customer paid a personal number instead of the till. Work through them in that order.
How do I download the M-PESA statement for a single day?
Log into the M-PESA Business Portal at m-pesaforbusiness.co.ke. Reports then Transaction Statement, set from and to date to the same trading day (e.g. 01/09/2026 to 01/09/2026), pick the correct till shortcode, export as CSV or PDF. See our full guide on downloading M-PESA statements.
What if the gap is small, say KES 50?
Do not ignore it. A KES 50 gap today becomes a KES 5,000 gap in a quarter if the cause is a systematic rounding error or a slow pilfer. Log it in the reconciliation notebook with date, amount, direction (over or short), and the working hypothesis. Patterns emerge in three to five days.
Who should reconcile: owner or staff?
Both, on a separation-of-duties model. The staff member on shift counts and prepares the cash-up sheet. The owner or a second person compares it against the M-PESA statement. If one person does both, cash and reconciliation controls collapse into the same failure point.
Do I need software for this?
No, though it helps. A spreadsheet template with columns for date, till shortcode, POS total, M-PESA total, cash total, gap and reason is enough for a single till. Multi-till or multi-branch operators graduate to a POS with M-PESA reconciliation built in (Vend, Loyverse, or a custom Daraja integration).
Verified 1 September 2026. Merchant figures from Safaricom PLC Annual Report FY2026. Tariff and commission figures from Safaricom Consumer Tariffs. Business Portal flows verified on m-pesaforbusiness.co.ke on 1 September 2026.
Related reading
Curated external sources we cite. Open in a new tab.
M-Pesa Buy Goods (Till) Calculator
Till number transaction calculator from a merchant perspective.
mpesa.or.ke · calculator
Fuliza for Business Calculator
B2B Fuliza fees for merchants who use Fuliza for Business.
mpesa.or.ke · calculator
M-Pesa Bulk Payments Calculator
B2C bulk-disbursement fees for businesses paying many recipients.
mpesa.or.ke · calculator