Two-way reconciliation — matching your bank statement to your general ledger — is the version most finance teams grow up on. Three-way reconciliation adds a third source: the payment gateway or processor sitting between the customer and the bank. It's more accurate, and considerably more painful to do by hand.
The three legs
- Bank statement. The actual settled cash movement, often batched and net of fees.
- Payment gateway log. The transaction-level detail — individual charges, refunds, and gateway fees — before batching.
- Accounting ledger. The invoices and receivables your finance system expects to be paid.
For a transaction to be considered fully reconciled, all three need to agree — not just in amount, but in timing, since gateway settlement often lags the transaction date by one to three business days.
Why manual 3-way matching breaks down
The moment volume passes a few hundred transactions a month, spreadsheet-based matching stops being viable. Batched bank deposits don't map 1:1 to gateway transactions. FX variances and gateway fees create small, legitimate discrepancies that look like errors. Someone ends up manually annotating a growing exception list every single cycle.
What automated matching actually does differently
A rule-based reconciliation engine doesn't try to force exact-amount matching — it applies tolerance margins for known, expected variances like bank charges and FX movement, and only flags what falls genuinely outside those bounds. Matching runs on a schedule, typically daily, so exceptions are caught within a day of occurring rather than discovered in a end-of-month scramble.
The goal isn't zero exceptions. It's making sure every exception that does surface is a real one worth a human's attention.
What "done" looks like
A functioning 3-way reconciliation bridge produces a daily run log, an exception dashboard with clear categorization (timing difference, fee variance, genuine mismatch), and an audit trail that satisfies external auditors without anyone re-running the matching by hand.
See this applied to your own data.
Book a 20-minute audit and bring a sample export — we'll show you the fix live.