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

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.

Talk To Zaleo

See this applied to your own data.

Book a 20-minute audit and bring a sample export — we'll show you the fix live.