Duplicate Agent
Duplicates are not a fraud problem. They are a filing problem that costs real money, and they survive because the second copy usually arrives through a different door than the first.
The same invoice cannot be paid twice.Every arriving invoice is matched against every invoice that vendor has ever sent — the portal, the shared mailbox, the one handed to someone at the site office. The channel is not a hiding place.
What it checks
On every invoice, not a sample.
- Invoice number against every prior invoice from the same vendor, not just the current period
- Same amount, same date, same PO — the near-match that a changed invoice number is meant to hide
- The same document arriving on a second channel after it was already booked
- Credit notes that reverse an invoice which was never actually paid
What it reads, what it writes
Reads
Vendor invoices from every channel — portal, email, file drop, scanned paper · The full invoice history for that vendor · PO and GRN references
Writes
A hold on the second copy, before it can enter a payment run · The matching earlier invoice, attached, so the reviewer can see why · An audit entry recording what matched and who released it
Where it sits in the team
Agents do not work alone. Each one hands its result to the next, so a finding raised here shows up as context downstream rather than being re-derived.
Hands to it
Nothing — this runs first, on the document as it arrives.
It triggers
When it isn't sure
A near-match is not a duplicate. Where the amount and date align but the invoice number does not, the entry is held and both documents are put side by side for a person to decide — it is not silently released, and it is not silently blocked.
Any check that runs on every transaction will meet cases it cannot settle. What makes a control trustworthy is not that it never hesitates — it is that hesitation produces a named question for a person, rather than a silent pass or a silent block.
See what this one finds in your last 90 days.
One export. No connector. We come back within a working day.
$Check your savings→