3 way matching automation compares each supplier invoice with its purchase order and goods receipt, books the lines that agree within tolerance and sends the rest to a person. Clean invoices rarely cause trouble. Whether automation pays off depends on the exceptions: missing receipts, partial deliveries, changed prices and invoices with no purchase order at all.
At Lleverage we think most three-way matching projects are scoped on the wrong invoices. The demo matches a tidy invoice to a tidy order. The AP desk then spends its week on the ones that fail, because the answer to each failure sits with a buyer, a warehouse or a supplier, and nobody brings it to the invoice. Our accounts payable agents are built around that queue: they read the invoice, run the match, and take each exception to the person who can settle it with the documents attached.
This article takes the exceptions apart one by one: what each looks like, where it comes from, who owns it and what an AI agent does with it. For choosing between products, read our comparison of invoice matching software. To see the exceptions from your own last month handled, book a demo.
What is 3 way matching, and why do exceptions decide whether it works?
3 way matching is the accounts payable control that checks a supplier invoice against 2 other documents before it is paid: the purchase order, which says what you agreed to buy at what price, and the goods receipt, which says what actually arrived. When vendor, item, quantity and price agree within your tolerance, the invoice is booked. When they do not, it stops.
Every mainstream ERP supports the control. SAP, according to its own documentation on invoices for purchase orders, runs goods receipts and invoice receipts through a GR/IR clearing account, and a balance stays open on that account until the two agree. Business Central offers Get Receipt Lines and Get Order Lines on the purchase invoice, with a Matched Order Lines page to review what each invoice line covers.
What the ERP does not do is resolve the mismatch. It flags it. According to the Ardent Partners report Accounts Payable Metrics that Matter in 2026, the average invoice exception rate is 19.9%, and even the best-in-class group sits at 11.8%. That is roughly 1 invoice in 5 that a person has to pick up, and every one of them waits for an answer that lives outside AP.
Which exceptions break three-way matching most often?
Six exceptions make up most of the queues we see at manufacturers and distributors. In our experience few of them are supplier fraud or genuine billing errors. Most are timing and structure: the receipt is late, the delivery was split, the price moved without anyone telling finance.
| Exception | What AP sees | Usual cause | Who can settle it | What the agent does |
|---|---|---|---|---|
| Missing goods receipt | Invoice with no receipt to match | Goods arrived but the receipt is not booked yet | Warehouse | Holds the invoice, asks the warehouse, rematches when the receipt lands |
| Partial delivery | Invoiced quantity above received quantity | Supplier billed the full order after a short shipment | Buyer or warehouse | Matches what arrived, holds the balance against the open order line |
| Price variance | Invoice price above the PO price | Price change agreed by the buyer, never put on the PO | Buyer | Compares with the supplier's confirmation and the contract, sends the difference to the buyer |
| Invoice with no PO | No order reference, or one that does not exist | Services, urgent buys, or a reference in the wrong field | Requester or budget holder | Searches for the order by supplier, items and amount, or routes for coding and approval |
| Split and combined invoices | 1 invoice for 3 orders, or 3 invoices for 1 order | Supplier invoices per shipment or per month | AP | Matches across orders and receipts at line level |
| Unit, freight and surcharge lines | Lines with no counterpart on the PO | Boxes against pieces, freight, energy or metal surcharges | AP with the buyer | Converts units, applies the rule for each charge, flags what has no rule |
What happens when the goods receipt is missing?
The invoice arrives, the order is there, and the receipt is not. In most cases the goods are on a shelf: the warehouse has not booked the receipt yet, or booked it against the wrong order line. In a minority of cases the goods really have not arrived, and the supplier has invoiced on dispatch.
SAP, according to its documentation, lets the invoice be posted before the goods receipt, uses the invoice price as the basis, and clears the GR/IR account when the receipt follows. Business Central's Get Order Lines action, according to Microsoft's documentation, lets you match an invoice line to order lines whether or not receipts exist and decide later how to receive them. Either way, somebody still has to find out whether the goods came in.
That question goes to the warehouse, and that is where the days go. An agent changes the order of work. It holds the invoice, sends the warehouse the specific question (did 46 flanges from this supplier arrive on Tuesday against this order?), and matches again once the receipt is booked. AP never sees the invoice unless the answer is no.
How do partial deliveries and split invoices break the match?
A partial delivery fails the match on quantity. The supplier shipped 46 of 50, invoiced 50, and the remaining 4 are either on the next truck or not coming at all. The right answer depends on what the buyer agreed, which is rarely written on the invoice.
Split and combined invoices fail on structure. One invoice covers 3 purchase orders, or a single order is billed across several invoices as it ships. Line-level rules expect 1 invoice line to 1 order line, so anything else falls out. Microsoft documents limits even on its native route: Get Order Lines does not work with prepayments or Item Charges lines, and cannot be used with orders linked to projects, subcontracting, blanket orders or intercompany transactions.
For a project-based manufacturer that list is the normal way of buying. An agent matches the quantity that arrived, keeps the open balance against the order line, and recognises the second invoice when it comes. Where one invoice spans several orders, it matches each line to the order and receipt it belongs to, instead of rejecting the document because the header carries 1 reference.
Why do price variances keep failing the match?
Because the price changed somewhere other than the purchase order. A buyer accepted a new price on the phone, a supplier added a surcharge in its order confirmation, or the contract price was updated in a spreadsheet and never in the ERP. The invoice is correct. The PO is out of date.
Tolerances help with rounding, not with this. A 1% band absorbs a few cents per line. It will not absorb a 6% price increase the buyer agreed last month, and it should not, because that is exactly the case the control exists for: someone has to confirm the new price is the agreed one.
The better fix sits upstream. Our procurement agents read supplier order confirmations against the order when they come in, so a changed price reaches the buyer weeks before the invoice does. When a variance still reaches AP, the agent puts the PO price, the confirmed price and the contract side by side and sends it to the buyer who placed the order, not to the AP clerk.
What about invoices with no purchase order?
Some invoices were never meant to have one: utilities, rent, subscriptions, services ordered by email. Others had a PO, but the reference is missing, mistyped, or sits in a free-text line the capture step did not read. The first group needs coding and approval. The second needs finding.
An agent first looks for the order: same supplier, matching items and quantities, an amount that fits an open order. If it finds one with confidence, the invoice goes through 3 way matching like any other. If not, it codes the invoice to the cost centre that supplier is usually booked to and sends it to the budget holder for approval, with the reason it could not find an order.
A supplier that invoices without an order every month should have a framework order in the ERP. That pattern is worth raising with purchasing.
Why do unit, freight and surcharge lines fail?
These are the small lines that make an otherwise clean invoice fail. You ordered 500 pieces, the supplier invoiced 20 boxes of 25. The PO has no freight line, the invoice has one. A metal or energy surcharge appears on the invoice and nowhere else.
Each has a rule, and the rule usually lives in one person's head: this supplier always invoices in boxes, freight under a set amount is accepted, the surcharge is agreed in the framework contract. The fix is to write those rules down once and have them applied every time. Xpol did the same on its order desk, where 25 customer-specific rulesets covering unit conversions and multi-depot splits now sit in the agent instead of in the heads of senior staff. According to Xpol's customer story, the agent saves roughly 20 minutes per large order. That rule library sits in a company brain your team can read and correct, not in a configuration file nobody opens.
How does an AI agent clear 3 way matching exceptions instead of queueing them?
An ERP matches and flags. An agent also does the step after the flag: it works out which exception it is, gathers what the person who can settle it needs, and sends it to that person. The AP controller stops being the inbox for questions only the warehouse or the buyer can answer.
In practice that means 4 things:
- Classify the exception. Missing receipt, quantity, price, no PO, structure or an unknown line. Each has its own owner and its own next step.
- Bring the context. The invoice, the order and the receipt side by side, plus the supplier's confirmation, the contract price and the previous resolution for this supplier.
- Route to the owner. Quantity questions to the warehouse, price questions to the buyer who placed the order, coding questions to the budget holder.
- Learn the resolution. When a person approves the same kind of variance for the same supplier, that becomes a rule for next time, visible and editable.
Tolerances stay yours. You set them per supplier or category, invoices inside them are booked in the ERP, and anything outside waits for a person with all 3 documents open. Releasing a payment is never the agent's call, and every action is written to an audit trail your controller can read. The agent books into SAP, Business Central, Exact, AFAS and Infor, filling the fields your team fills today; see how it works in Business Central and in SAP.
Getting into the ERP can be the harder part. Microtechniek's on-premise ERP had no way in until an API module was installed. At Microtechniek, orders that took about 10 minutes each by hand are now written in by an agent, and the director saw the same route opening up invoice processing.
The design choice that matters is what happens when the agent is unsure. It leaves the field blank and asks. Xpol built its order agent the same way, and its general manager put the reason plainly:
"It's a matter of building trust in the organisation with these kinds of initiatives. You can't just throw something like this over the fence." Cees Maaskant, General Manager, Xpol
Which exceptions should always go to a person?
Some exceptions should never be settled by a rule, however often they repeat. Our recommended line, which you can move:
- A price above the PO that no confirmation or contract explains goes to the buyer.
- Changed supplier bank details stop the invoice and go to finance, every time.
- A short delivery the warehouse cannot confirm stays open until it can.
- A non-PO invoice above the budget holder's approval limit goes to the next approver.
- Payment release is always a person.
Measure the result by what is booked correctly, not by what passes untouched. A high touchless rate on wrongly booked invoices is a worse result than a lower one on correct invoices, which is the argument we make in touchless rate vs correct rate.
Frequently asked questions
What is the difference between 2 way and 3 way matching?
A 2 way match compares the supplier invoice with the purchase order on item, quantity and price. A 3 way match adds the goods receipt, so you only pay for what actually arrived. 2 way suits services and subscriptions with nothing to receive. 3 way is the standard control for physical goods bought against a purchase order.
What is the most common reason a three-way match fails?
In the queues we see at manufacturers and distributors, the usual causes are a goods receipt that is not booked yet, a partial delivery invoiced in full, and a price change agreed with the buyer but never put on the purchase order. Genuine supplier billing errors are rarer than most finance teams expect.
Can three-way matching be fully automated?
The matching can, for invoices inside your tolerances. The exceptions can be handled much faster but not all removed: a disputed price or an unconfirmed short delivery needs a person. An AI agent classifies each exception, gathers the documents and sends it to the right owner, so AP only decides what genuinely needs deciding.
Does three-way matching work with PEPPOL e-invoices?
Yes, and structured e-invoices make the capture step cleaner because line data arrives as data instead of a PDF. They do not remove the exceptions: a PEPPOL invoice can still arrive before the goods receipt or carry a changed price. Our guide to EU e-invoicing for manufacturers covers the mandates.
How long does it take to automate three-way matching?
With Lleverage, forward deployed engineers match the first invoices beside your finance team, so the invoice run comes off the desk in the first weeks rather than at the end of a project. Tolerances and routing are agreed with your controller. Every correction teaches the agent your suppliers, so fewer invoices need a person over the months.
Start with last month's exception queue
The quickest way to judge three-way matching automation is to test it on the invoices that already failed. Pull last month's exceptions from your ERP: the missing receipts, the short deliveries, the price variances and the invoices with no order. Sort them by cause and by who finally settled each one.
Then bring that list to us. We will run an AP agent against those invoices in your own ERP and show which are booked, which go to the warehouse or the buyer, and which still need your controller. Book a demo and we will set it up with your AP lead.
