August 2026 / Reports and downloads
Draft run · not closedPrototype v0.2 · real August data, masked
For: finance officer and manager · J1

What can I download for August?

All the reports from the original requirements in one place, with the reconciliation ledger that carries the money.

Decisions this view supportsWhich format the accounts team wants (Excel or CSV) · Whether the ledger later feeds an accounting system
August 2026 reportOne Excel workbook with every report as a sheet. It opens on the executive summary. Every download is logged with who and when.
Reports for August12an executive summary, exceptions by type and one by one, the original reports and the trading day analysis, plus a separate file check for finance
Ledger entries22,99222,256 posted, 736 waiting for acceptance
Transaction amount in the ledgerKES 35.20Mmatched KES 35.38M · net KES 34.04M
Exceptions1,78123 high, 555 medium, 1,203 low priority assumed rule

Executive summary, in plain words

The first page of the workbook. Every number comes from this run; nothing is typed in by hand.

What this report is
The payments reconciliation for KFC Hurlingham, August 2026. It compares what the POS says was sold with what each aggregator and payment provider says it collected. It is a draft: the figures are not final until the finance manager closes the month.
What was read
The POS sales export: 25,447 sales worth KES 39.15 million. The exports from 8 aggregators and aggregators (Glovo, Uber Eats, Bolt Food, Little Cab, M-Pesa till, Card machines, Meal cards, Vouchers), and the cash deposit sheet. In total 86,034 rows were read (the POS lists each item on its own line, so its lines were grouped into sales) and 6,272 were set aside, each with its reason. A separate file check, kept by the finance team, shows file by file that nothing was lost.
What was done
Every POS sale was checked against the payment record that confirms it. Aggregator orders (Glovo, Uber Eats, Bolt Food, Little Cab) were paired by the order number printed on the POS docket. M-Pesa and card payments were paired by the same amount within 15 minutes, and meal cards and vouchers by the same amount on the same day. A sale and a payment are only ever paired within the same branch. Each sale is counted on its trading day as the POS records it, so sales after midnight belong to the day before.
What matched
94.8% of the sales that can be checked one by one (the reconciliation rate; cash is not checked this way). 22,256 sales worth KES 34.13 million matched exactly and are recorded in the reconciliation ledger. The fees on them come to KES 1.26 million, so KES 32.87 million is what those sales bring in after fees. Fees and commission are expected deductions, not variances.
What is still open
1,781 exceptions need a person to look at them, worth KES 1,753,647 in financial exposure. Each is a row on the Exceptions sheet with its type, priority and what to check first. They are: 692 amount variances (the payment was found but the amount is different); 568 missing POS (payments with no matching sale on the POS); 301 missing settlements (POS sales with no payment found); 160 cancellations and 44 refunds (the app cancelled or refunded the order but the POS kept the sale); 16 inter-punches (a sale rung up under the wrong delivery app or payment type). By priority: 23 high, 555 medium and 1,203 low. A further 63 orders are listed as timestamp variances for information only: the money agrees.
What the exceptions mostly are
The Exceptions by type sheet sorts them into 35 named types, each saying what it is, the likely reason, who acts and what to do. The three biggest: (1) Glovo amount KES 385 above POS price: 327 Glovo orders were paid exactly KES 385 more than the price on the POS. Likely reason: the same gap every time points to a price difference: Glovo's menu price, a packaging or delivery charge, or a promotion that is set up differently on the POS. (2) M-Pesa payment, no POS sale: 321 M-Pesa payments were received with no matching POS sale at this branch. Likely reason: a sale rung up under another payment type, a payment meant for another branch or M-Pesa till, or an order at the end of the month that the POS dated in the next month. (3) Card payment, no POS sale: 175 card payments were received with no matching POS sale at this branch. Likely reason: a sale rung up under another payment type, a payment meant for another branch or M-Pesa till, or an order at the end of the month that the POS dated in the next month.
How sure we are
1,010 exceptions are shown directly in the files. 771 are likely but need a person to confirm, because the payment files for M-Pesa, cards, meal cards and vouchers carry no order number. Some things cannot be checked with these files at all: whether each app paid out in full (partial settlement needs the apps' payout files) and whether payouts reached the bank. The column "What these files can't show" says this row by row.
Cash
Cash is shown for audit only: it is not matched and nothing about people is concluded from it. The POS recorded KES 3.17 million in cash sales and the deposit sheet shows KES 2.79 million deposited. The largest single cash sale was KES 250,000 on 26 Aug.
What happens next
1. The finance officer works through the Exceptions sheet, starting with high priority and the repeating types. 2. Each store explains its own items. 3. The finance manager accepts or sends back each explanation; the 736 sales whose amounts differ are posted only once accepted. 4. When nothing is left open, the finance manager closes the month and these figures become final. No one's pay is affected by this report: any confirmed loss goes to HR for review, never as an automatic deduction.

Exceptions by type

The 1,781 exceptions fall into 35 named types (including 63 timestamp variances shown for information). Repeating gaps (10 or more items, same aggregator, same variance) get their own type. The 8 biggest are shown here. In the workbook each type also gives the likely reason (to confirm) and what to do, and clicking a type opens its rows on the Exceptions sheet.

TypeException typeItemsFinancial exposure (KES)How sureWhat it isWho acts
Glovo amount KES 385 above POS priceAmount variance327126KShown in the files327 Glovo orders were paid exactly KES 385 more than the price on the POS.Finance officer
M-Pesa payment, no POS saleMissing POS321347KLikely, to confirm321 M-Pesa payments were received with no matching POS sale at this branch.Finance officer
Card payment, no POS saleMissing POS175262KLikely, to confirm175 card payments were received with no matching POS sale at this branch.Finance officer
Card sale, no payment foundMissing settlement148222KLikely, to confirm148 sales were rung up on the POS as card, but no card payment was found.Store manager
M-Pesa sale, no payment foundMissing settlement100171KLikely, to confirm100 sales were rung up on the POS as M-Pesa, but no M-Pesa payment was found.Store manager
Uber Eats amount KES 100 above POS priceAmount variance888,800Shown in the files88 Uber Eats orders were paid exactly KES 100 more than the price on the POS.Finance officer
Cancelled on Glovo, still on the POSCancellation77127KShown in the files77 Glovo orders were cancelled by Glovo, but the POS kept the sale.Store manager
Cancelled on Uber Eats, still on the POSCancellation68110KShown in the files68 Uber Eats orders were cancelled by Uber Eats, but the POS kept the sale.Store manager

Exceptions, one by one

Its own sheet in the workbook: one row per exception, sorted by type, with filters on every column. Every row says how sure we are and what these files cannot show. The first row of each exception type is shown here.

Exception typeTypePriorityHow sureTrading dayTransaction amount, POS (KES)Aggregator / provider amount (KES)What these files can't show
Amount variance 692Glovo amount KES 385 above POS priceLowShown in the files01 Aug 2026490875Payout not checked: no Glovo payout file. Glovo's commission is not in its export.
Inter-punch 16Rung as Bolt Food, paid in another appMediumLikely, to confirm09 Aug 20261,000Payout not checked: no Bolt Food payout file.
Missing settlement 301Bolt Food sale, no payment foundMediumShown in the files21 Aug 20262,300Payout not checked: no Bolt Food payout file.
Cancellation 160Cancelled on Bolt Food, still on the POSMediumShown in the files01 Aug 20261,6001,600Payout not checked: no Bolt Food payout file.
Refund 44Refunded on Uber Eats, still on the POSLowShown in the files01 Aug 20263,2802,580Uber's file has no order time, so timing was not checked. Payout date shown; payout not checked against the bank.
Missing POS 568Bolt Food payment, no POS saleLowShown in the files31 Jul 2026990Payout not checked: no Bolt Food payout file.
Timestamp variance 63Bolt Food: rung up on the POS 30+ minutes after the orderLowShown in the files02 Aug 20262,3302,330Payout not checked: no Bolt Food payout file.

Every report, where it lives and who can download it

One Excel workbook with a sheet per report; the ledgers also come as CSV. Every download is logged with who and when.

ReportWhat it holdsRowsFormatWho can download
Executive summaryStart here: what was read, what was done, what matched, the exceptions, how sure we are and what happens next, in a few short paragraphs9ExcelEveryone with reports accessDownload
Exceptions by typeThe exceptions grouped into named types: what each is, the likely reason, how sure we are, who acts and what to do35ExcelFinance officer, managerDownload
ExceptionsEvery exception, one row each, with type, priority, how sure, trading day, items ordered and what these files can't show: 692 amount variance, 568 missing pos, 301 missing settlement, 160 cancellation, 63 timestamp variance, 44 refund, 16 inter-punch. Cash excluded (audit only)1,844ExcelFinance officer, managerDownload
What each type meansEvery exception type, priority and column explained, including what could not be checked with these files16ExcelEveryone with reports accessDownload
Matched transactionsDate, aggregator or aggregator, POS sale number, order code, transaction amount, matched amount, fee, net, match method22,256Excel, CSVFinance officer, managerDownload
Inter-punchesPOS sale number, POS aggregator (rung as), originating aggregator (paid in), amount, date, POS user, status16ExcelFinance officer, managerDownload
Missing settlement by userPOS sales with no payment found, grouped by POS user (cash excluded)301ExcelFinance officer, managerDownload
HR reportConfirmed losses only, by POS user, with evidence0ExcelAdmin only (HR report)
Aggregator summaryPer aggregator and aggregator: transactions, matched, exceptions by type, fees9ExcelAll except store managerDownload
Trading day analysisPer trading day: transactions, matched, exceptions, reconciliation rate, financial exposure31ExcelFinance officer, managerDownload
Reconciliation ledgerFinancial entries: transaction amount, matched amount, variance, fee, net; corrective entries for confirmed inter-punches22,992Excel, CSVFinance officer, managerDownload
File check (row ledger)Input check per file: rows read, kept, fixed, set aside, ignored. A separate file for the finance team, not part of the client report11Excel (separate)Finance officer, managerDownload

Reconciliation ledger, first entries

The financial record. Transaction amount is the POS value; matched amount is the payment actually matched to it, so a variance shows on the entry itself. Net is the matched amount less the fee: commission is a fee, not a variance. Matched sales are posted; amount variances and refunds wait for the manager. A confirmed inter-punch never edits an entry: it adds a void on the wrong aggregator and a repost on the right one (last two rows, an example).

Entry no.DateAggregatorPOS saleOrder code / provider referenceTransaction amount, POS (KES)Matched amount (KES)DifferenceFee (KES)Net (KES)Type
12026-08-01Glovo…70633…609582,6002,60002,600Posted
22026-08-01Glovo…70883…632951,7701,77001,770Posted
32026-08-01Glovo…70884…647795005000500Posted
42026-08-01Glovo…72656…719851,3001,30001,300Posted
82026-08-01Glovo…75761…916971,7001,650−5001,650Pending acceptance
122026-08-01Glovo…80388…196631,1901,575+38501,575Pending acceptance
…2026-08-05Uber Eats…29115−3,250−3,2500−3,250Void example
…2026-08-05Glovo…291153,2503,25003,250Repost example
Two ledgers, two jobsThe file check (row ledger) checks the input: every row of every file is counted as kept, fixed, set aside or ignored, so nothing is lost in cleaning. The reconciliation ledger is the money record: matched transactions with transaction amount, matched amount, fee and net, and corrective entries. It is append-only.

Built from the pipeline run of 10 Oct 2026 (Payments.xlsx + POS export). Customer details are masked and cashiers are shown as pseudonyms. Items tagged "assumed" rest on assumptions in the spec.

Look