How duplicate payments happen, how to find them by hand in any ledger, and where automated detection genuinely helps.
What is duplicate payment detection?
Duplicate payment detection is the practice of finding invoices that have been paid more than once — same supplier, same amount, sometimes the same invoice number, settled twice. It sounds like the kind of mistake a competent bookkeeper wouldn't make. It happens in competent teams constantly, because no single person makes it: the supplier emails the invoice, then posts it; the first copy is keyed from the email, the second from the envelope; each one sails through approval on its own merits.
How duplicates actually get in
A few patterns account for most of them:
- The same invoice arrives twice — email and post, or email and supplier portal — and is entered by two people, or by one person a fortnight apart.
- A supplier statement gets paid as well as the invoices on it. The statement total goes through as one payment; the individual invoices had already been paid.
- A resubmitted invoice after a query. The first copy was parked, the query resolved, the reissued copy entered fresh — and eventually someone finds and pays the parked one too.
- Slightly different invoice numbers.
INV-1042and1042are the same invoice to the supplier and two different records to your AP system. - A payment method changes mid-stream. Paid by card to settle quickly, then paid again by the normal EFT run because the invoice was still sitting in the queue.
Note what these have in common: the second payment usually doesn't share an invoice number with the first. Any check that only looks for repeated invoice numbers misses most of the real cases.
How to find them by hand
You can do a credible duplicate check in any accounting system, or in a spreadsheet export, without buying anything:
- Export the supplier payment history for the period — supplier, date, amount, invoice reference.
- Sort by supplier, then amount. Exact-amount pairs to the same supplier are your candidates. Most will be legitimate (rent is the same every month), so look at the dates: two identical amounts to one supplier within 30 days deserve the invoice pulled.
- Check invoice references loosely, not exactly. Strip prefixes and leading zeros before comparing.
INV-1042,1042and#01042should all collide. - Scan for statement-shaped amounts — a payment to a supplier that equals the sum of two or three recent invoices to the same supplier is the statement-paid-on-top pattern.
- Do it quarterly. Recovery gets harder with age; a supplier will happily credit last month's double payment and will quietly bank last year's.
The limitation of the manual method is honest and obvious: it's exact-match on amounts, it's slow, and step 4 — combinations — is genuinely tedious by eye. Fuzzy supplier-name matches (the same vendor entered as "J Smith Plumbing" and "Smith Plumbing Pty Ltd") defeat the sort entirely.
Where automated detection helps, and where it doesn't
Automated duplicate detection does the same checks continuously and adds the ones that are impractical by hand: fuzzy supplier matching, similar-description matching across different vendor records, and cross-method detection (card then EFT). Finanomaly's duplicate module runs six such rules, each producing a confidence score rather than a verdict — an exact invoice-number-and-amount match to the same supplier scores near certain; a same-amount pair to similarly-named vendors within 45 days scores much lower, because rent, retainers and subscriptions look exactly like that.
The limits are real too. Detection flags candidates; a human still has to pull the invoice and decide. Recurring charges produce false positives that no threshold fully eliminates. And no tool recovers the money — that's a phone call to the supplier.
FAQ
How do I find duplicate payments in my ledger? Export supplier payments, sort by supplier and amount, and investigate exact-amount pairs to the same supplier within about 30 days. Compare invoice references loosely — strip prefixes and leading zeros first. Also check for payments that equal the sum of several recent invoices to the same supplier, which is the statement-paid-twice pattern.
What's the most common cause of duplicate payments? The same invoice arriving through two channels — usually email plus post or a supplier portal — and being entered twice. The second entry rarely carries the same reference, which is why invoice-number checks alone catch a minority of real duplicates.
Finanomaly runs these checks continuously against your finance data. It's currently waitlisted — join the list and you'll hear when it opens.