For finance teams
We build tools that check invoices and payments against your own records before money goes out, on your real data, and you own the code.
We build tools that check invoices and payments before any money goes out: duplicates, wrong prices, payouts that do not match the ledger. The Proof is from 1,500 euro and takes 5 working days on your real data. You own the code at the end.
The problems we build for
- Duplicate invoices. The same invoice arrives twice and is paid twice. Catch duplicate supplier invoices before they get paid.
- Invoice matching before payment. Each invoice checked against the agreed prices and terms. Check every invoice against its agreement.
- Three-way match. Purchase order, goods received note and invoice, compared line by line. Match purchase orders, receipts and invoices.
- Bank and Stripe reconciliation. Each payout split into payments, fees and refunds, then matched to your invoices. Reconcile bank and Stripe payouts with your ledger.
- PDF invoice extraction. Fields read from the PDF and checked before anything is posted. Get the data out of PDF invoices.
The checks run on written rules: supplier, invoice number, date, amount, purchase order, line, quantity and price. No model sees your data unless a step reads PDFs.
Try the free checker first
Our duplicate invoice checker is free and runs in your browser. Drop in a CSV or Excel export. Nothing leaves your browser. You see the count and value of suspected duplicates.
How the Proof works
- One workflow, fixed scope. On day 1 we write 3 to 5 pass/fail tests with you. The tool is done when it passes them on your data.
- Shadow mode. The Proof reads and reports. It writes nothing to your systems.
- Half up front, the other half when it passes the tests. If it fails and we can't fix it within 5 working days, the first half comes back.
- Credited in full against a Pilot booked within 30 days. The Pilot is from 6,000 euro: 30 days live in your systems, against a baseline you agree first.
Your data: you choose on day 1
- Scrubbed export. Our engineers write a masking script. It masks names, bank details and personal fields before anything leaves your systems, and the Proof runs on the masked export.
- Inside your environment. The tool runs in your cloud account or on your server. We see logs, test results and masked samples, never the raw rows.
More on Data and terms.
Systems we read
- Through their APIs: Xero, QuickBooks Online, Sage Business Cloud, Exact Online, Stripe, Mollie and Adyen.
- From their exports: Sage 50, Sage 200, Dynamics 365 Business Central, Sage Intacct, NetSuite and SAP.
- Directly: CSV and Excel files, PDFs, Google Sheets, and Postgres, MySQL and SQL Server databases.
What the Proof hands over
- The amounts found, in your currency. For example, duplicates already paid and invoices on the hold list. The day-5 result states them in pounds for a UK ledger, or euro or dollars.
- The list a person works through, each line with its evidence.
- The code, the tests and the test results. All yours. The Pilot decision has a number behind it.
Prices are in euro, excluding VAT. A quote in euro, pounds or dollars is fixed on day 1.
A worked example, on synthetic data
The sample hold list shows the day-5 output of the duplicate check. Every row on it is synthetic: 20 sample invoices, 4 held, shaped like a week of a UK wholesaler's purchase ledger.
One held row is invoice DG 10482: the same number and amount as DG-10482 from Monday, sent again with the date changed. A space in place of the dash does not hide it. Another held row is a waste fee with last month's amount. The service month is different, so the person releases it.
The result: 3 confirmed duplicates, 1 false alarm released. On that sample, £7,465.35 would have been paid twice. Nothing on the list is paid until a person decides.
Send us the job in the form below and a plan with a fixed price comes back within 24 hours.
Contact
Send us the problem or email jayron@geurs.com