AP 3-Way Match Workspace DEMO

The clean match is the easy part — every ERP does it. The cost is the invoices that don't match: no PO, no goods receipt, wrong price, possible duplicate. This catches each one, works out who to chase, and drafts the message to them — automatically. The exception work that still eats AP's mornings, outside SAP / D365.
Portfolio demo · illustrative synthetic data · no real company data. A production version runs on your actual ERP exports.
👉 It already ran on 10 sample invoices below. 4 matched cleanly. The other 6 broke — click any flagged one to see what went wrong and the chase message it auto-wrote and routed to the right person. Or drop your own CSV at the bottom.
Run resultNot run
0
auto-matched & coded
0
exceptions surfaced
Auto-apply matches above 95% confidence; everything below goes to the queue.
Test live on one line
Paste one invoice line — vendor, invoice no, qty, unit price, PO (optional).
Matching queue
Run the match to see results.
Invoices  ·  Purchase orders  ·  Goods receipts
3-way match + exception reasoning
AP-ready journal (CSV)
📄 Or drop a real invoice (PDF)
Invoices arrive as PDFs, not spreadsheets. Drop one here — it reads the vendor, amount and PO, matches it against the POs above, and (if it breaks) drafts the chase. No PDF handy? Download a sample to try.
Click or drop an invoice PDF here
read in your browser — nothing uploaded
↓ Sample PO invoice (PDF)  ·  ↓ Sample non-PO invoice (PDF)
Or upload CSVs (bulk)
The three templates are pre-filled with the sample run. Download one, drop your own rows in, and re-upload here. Files are parsed in your browser — nothing is sent anywhere.
Invoices CSV
sample loaded
Purchase orders CSV
sample loaded
Goods receipts CSV
sample loaded
Reasoning panel
Run the match, then select a line to see why it didn't auto-match — and the suggested fix.
The time it saves
~3 min to match an exception by hand in Excel vs ~8 sec to review & approve here. At ~50 problem invoices a day that's roughly 600 hours / year of AP time freed for higher-value work.
Where does your data live?
Runs three ways: (1) fully in-browser like this demo, (2) your own Cloudflare/EU-resident worker, (3) inside your network next to the ERP. Only residual unmatched lines ever need processing.
Stays useful after a D365/SAP migration
Copilot/standard matching improves the clean flow — the exceptions still need a human. This layer is built to handle exactly that part, and exports a posting your ERP accepts.