Matching receipts to card transactions

Match on amount first, date within a small window second, and vendor last — because vendor names are the least reliable field of the three. The goal is one receipt per card transaction, and the value of the exercise is less in the matches than in what fails to match.

Your card statement is an authoritative list of what you spent. Your receipts are the evidence of why. Neither is complete on its own, and the gap between them is where all the useful information is.

Why amount comes first

Amounts are the most reliably extracted field on a receipt and they arrive from the bank exactly. Two numbers that agree to the cent are strong evidence, and they’re cheap to compare.

Dates come second because they’re close but not exact. A card transaction settles some time after the purchase — same day usually, next day often, over a weekend sometimes two or three days later. So date is a window, not an equality test. A couple of days either side catches nearly everything.

Vendor comes last because bank descriptors are hostile. The slip says “Northwest Tools”. The statement says SQ *NWTS HOLD 4412 LONDON GB. Payment processor prefix, truncated legal name, store number, city, country code. Matching those strings directly is unreliable; matching them after an amount-and-date match has already narrowed the candidates to one or two is easy.

The amount mismatches that are normal

Not every disagreement is an error, and knowing the routine cases prevents chasing them.

Restaurant tips. The card is authorised for the bill and settled for bill-plus-tip. The receipt in your hand shows one amount; the statement shows another, higher one. Entirely normal. Match on the receipt amount being less than or equal to the settled amount, for known restaurant-type vendors, within a plausible margin.

Fuel pre-authorisation. Some pumps authorise a holding amount and settle the actual fill. The intermediate figure may appear briefly in a feed.

Hotels. Authorised at check-in for an estimate, settled at check-out for the real total, sometimes with incidental charges added.

Foreign currency. The receipt is in the local currency; the statement is in yours, converted at a rate the receipt doesn’t know, possibly with a separate fee line.

Partial refunds. A credit for part of a purchase produces a transaction with no receipt of its own, or a receipt whose amount matches nothing.

Each of these is a rule worth encoding once rather than a mystery to solve monthly.

The three unmatched buckets

The output that matters is the leftovers, in three piles.

Transactions with no receipt. The most important pile. Every one is an expense you can’t support with a document. Reviewed weekly, many are recoverable — the paper is still in a bag, the email is still in an inbox. Reviewed at year end, they’re gone. This is the entire argument for reconciling often.

Receipts with no transaction. Usually one of: paid in cash, paid on a personal card by mistake, paid on an account not connected to the feed, or a duplicate whose twin already matched. Each has a different fix, and “paid on a personal card” is the one that needs handling promptly because it’s a reimbursement someone is owed.

Ambiguous matches. Two transactions, two receipts, same amounts, same day. Common with repeat purchases at the same vendor. Don’t guess — the pairing doesn’t usually matter for totals, but do confirm the count is right, because that’s what tells you whether something’s missing.

Cadence

Weekly is the right rhythm for most small businesses. Frequently enough that a missing receipt is still findable, infrequently enough that it doesn’t feel like a task.

Monthly works if capture discipline is good. Quarterly means accepting that some evidence will be unrecoverable. At year end, you’re not reconciling, you’re reconstructing.

The check itself is short once the routine exists — the long ones are always the first few, where you’re discovering the systematic issues (a card that isn’t connected, a vendor whose descriptor never matches) and fixing them permanently.

Cash makes this harder, and there’s no trick

A cash purchase produces a receipt and no transaction, so the invariant doesn’t apply. The only real answer is to treat cash expenses as a separate, explicitly reviewed set, and to keep them few. Every cash purchase is an expense whose only evidence is one piece of paper, with no independent record to check it against.

What good looks like

A reconciled week has: every transaction matched to exactly one receipt, every receipt matched to exactly one transaction, the routine mismatches explained by rules rather than by hand, and a short deliberate list of cash items.

What you get from it isn’t tidiness. It’s the knowledge that your expense data is complete — which is a different and much stronger claim than knowing each individual entry is accurate.