- A three-way match compares each supplier invoice with its purchase order and with the receiving report before the invoice is approved for payment.
- It stops you paying for what was not ordered, what never arrived, or a price other than the one on the PO.
- Tolerances decide which differences clear on their own. Anything above them is held and reviewed by a person.
- Comparing fields line by line only works when the three documents describe the same thing the same way. Most exceptions come from documents that agree in substance but not in wording, units or structure.
- Resolving those takes reading the documents for what they mean: matching a supplier's description to your part, converting units, tying one invoice to several receipts, and checking a price change against the contract.
- That understanding can now be automated. The decisions on exceptions and the release of the payment run stay with people.
What is a three-way match?
A three-way match is the control accounts payable runs before approving a supplier invoice for payment: checking that what was invoiced matches what was ordered (the purchase order) and what actually arrived (the receiving report, or the goods receipt posted in the ERP). Three documents, one invoice, every line.
If the three documents agree, the invoice posts and is paid on its due date. If they do not, the invoice is held until someone explains the difference. The match is the reason a PO exists in the first place: it is the one document that says what the company agreed to buy, at what price, and who authorized it.
What does it catch?
It catches overpayment that nobody would otherwise notice. The typical cases are invoices for more units than were received, unit prices above the PO price, duplicate invoices sent through two channels, charges that were never on the order, and in the worst case invoices from suppliers who should not be billing you at all. It also leaves an audit trail: for every payment you can show the PO that authorized it and the receipt that justifies it, which is what your auditors and your bank ask for when they test controls over cash disbursements.
For a plant buying $40 million a year in materials, a 1 percent leak in unmatched price differences is $400,000. None of those differences looks large on its own. That is the argument for matching every line rather than sampling.
Two-way, three-way or four-way?
| Type | What it compares | When it is used |
|---|---|---|
| Two-way | Purchase order and invoice | Services, software, utilities and other purchases with no physical receipt to post. The approver of the PO confirms delivery instead. |
| Three-way | Purchase order, receiving report and invoice | Materials, parts and MRO. The standard in accounts payable at manufacturers and contractors. |
| Four-way | Purchase order, receiving report, quality inspection and invoice | Critical or regulated materials that are not paid until incoming inspection accepts them. |
The discrepancies that show up most
| Discrepancy | Example | What to do |
|---|---|---|
| Quantity | The invoice bills 200 units; the receiving report shows 180. | Pay for what was received and ask for a credit memo or the back-ordered 20 units. |
| Unit price | The PO says $12.40 per unit; the invoice says $12.90. | Check whether a price adjustment was agreed in the contract. If not, dispute the line. |
| Unplanned charge | Freight, fuel surcharge, pallets or an expedite fee that were not on the PO. | Clear it if the supplier's terms cover it and it is within tolerance. Otherwise the buyer decides. |
| Sales tax | The PO was quoted without tax; the invoice adds tax, or adds it for a state where you hold an exemption certificate. | Verify the tax treatment and your exemption status. Tax errors are common and rarely small. |
| Duplicate | The same invoice arrives by email and through the supplier portal. | Hold the second one on invoice number and amount and tell the supplier. |
| No PO | An invoice from a supplier with no purchase order behind it. | Do not pay until someone with authority approves it or a PO is raised after the fact, with a note on why. |
Why line-by-line matching is not enough
A classic match compares fields. The invoice line says part 40-1187, quantity 1,000, $0.42 each; the PO line says the same; the receipt says the same; the invoice posts. That works when all three documents were produced from the same item master. Supplier invoices are not. They use the supplier's part numbers and descriptions, its units of measure and its own way of grouping shipments. So the fields disagree even when nothing is wrong, and the invoice drops into the exception queue.
Most of the exception queue in a manufacturing AP team is not overbilling. It is documents that agree in substance and disagree in form. Clearing them means reading all three the way a buyer would. The cases that come up every week:
| What the documents show | What a field match sees | What it actually means |
|---|---|---|
| PO: “Hex bolt 1/2-13 x 2, grade 5, zinc”. Invoice: “HHCS 1/2-13X2 G5 ZP”, supplier SKU 88214. | Two different items. Line unmatched. | The same bolt, written in the supplier’s shorthand. Match on meaning and record the cross-reference for next time. |
| PO: 1,000 each at $0.42. Invoice: 4 boxes at $105.00. | Quantity 4 against 1,000. Price $105 against $0.42. | 4 boxes of 250 is 1,000 each at $0.42. No difference at all. |
| One invoice for 500 units. Two receipts posted: 320 on the 3rd and 180 on the 10th. | No single receipt matches the invoice quantity. | Two deliveries billed together. Fully received. |
| Invoice price 3.8% above the PO. The supply agreement adjusts price quarterly to a Producer Price Index series. | Price variance above a 2% tolerance. Held. | Possibly correct. Check the index movement for the quarter against the clause before disputing it. See how price adjustment clauses work. |
| Packing slip note: “304 SS substituted for 316 per J. Ruiz, see email 3/14”. | Item matches, price differs. Held. | A substitution the buyer agreed to. The price question is whether the agreed price was updated, and the email answers it. |
| Delivery ticket: “Shipped 180, B/O 20”. Invoice bills 200. | Quantity mismatch. | A back order invoiced early. Pay for 180, hold 20 until the rest is received. |
None of this is solved by better OCR. OCR turns a scanned invoice into characters; it does not know that “B/O 20” is a back order or that a box holds 250. ERP rules then compare those characters field by field. Closing the gap takes reading the three documents together, plus the contract and the supplier's emails when the answer is in them, and reaching the conclusion a careful AP specialist would.
How do you set tolerances?
A tolerance is the difference you accept without a manual review. It is usually set as a percentage and as a dollar amount, and the stricter of the two applies: for example, up to 2 percent or up to $50 per line. With no tolerance, every rounding difference holds an invoice and AP spends its week clearing pennies. With a tolerance that is too wide, small errors are paid without anyone seeing them, and over a year they stop being small.
- Keep quantity and price tolerances separate. Receiving less than you were billed for is a different problem from paying more per unit than you agreed.
- Set a zero tolerance on charges that are not on the PO, unless the contract or the supplier's published terms explicitly allow them.
- Set tolerances by supplier category where it makes sense. A commodity distributor with frequent small price moves does not need the same rule as a contract manufacturer on fixed pricing.
- Review tolerances each quarter against your exception data. If nearly every exception is approved unchanged, the tolerance is too tight and is costing you discount days.
The process, step by step
Receive the invoice and capture its data
Supplier, remit-to address, invoice number, invoice date, PO number, line items with quantity and unit price, freight, sales tax and total. If the invoice does not cite a PO, it has to be located by supplier and amount, or returned.
Find the PO and the receiving report
Pull the purchase order and the goods receipts posted against it in the ERP. One invoice can cover several deliveries, and one delivery can be invoiced in parts, so the match is at line level, not document level.
Pair each invoice line with what it actually refers to
Work out which PO line and which receipt each invoice line covers, even when the supplier uses its own part numbers, a different unit of measure, or combines several deliveries on one invoice. Then compare quantity received with quantity billed, and unit price with the PO price. Check the lines the PO did not carry: freight, fuel surcharge, pallets, expedite fees, and sales tax where the PO was quoted without it.
Apply the tolerances
If every difference is inside tolerance, the invoice posts and is scheduled for payment on its due date, with any early-payment discount applied. If any difference is outside, the invoice is held with the reason attached.
Resolve the exceptions
Ask the supplier for a credit memo or an explanation, confirm with receiving what actually came in, or route the decision to the buyer who placed the order. Record what was decided and why, next to the invoice.
Which part can be automated?
Most ERPs already clear the invoices whose fields agree exactly. That is the easy part, and it is not where AP spends its week. The time goes into the exception queue: lines that look wrong only because the supplier described, counted or grouped them differently, and the smaller set that really is wrong and needs the supplier to fix it.
That queue is the part Iris, Traza's invoice audit agent, takes on. She reads the invoice, the PO and the receipts together, the way your AP team would. She pairs the supplier's descriptions with your items, converts units, ties one invoice to several deliveries, and checks a price change against the contract clause that allows it. When the documents agree once they are understood, she shows the reasoning and the invoice moves on under the rules you set. When something really is off, she works it with the supplier: requesting the credit memo, confirming the short shipment, or asking for the backup on a surcharge.
Each exception reaches your team as a decision, not a variance: what differs, why she thinks it differs, the evidence, and the supplier's reply if there is one. Someone on your team approves or rejects it. The payment run is still released by your AP lead.
Two things stay with people by design. The decision on each real exception, because it is a judgment call about a supplier relationship, and the payment release, because it is cash leaving the company. The reading, reconciling and chasing in between is the work your team should not be doing by hand.
Frequently asked questions
What is the difference between a two-way and a three-way match?
A two-way match checks the invoice against the purchase order only. A three-way match adds the receiving report, so the invoice is also checked against what physically arrived. Two-way is normal for services and software, where nothing is received into inventory. Three-way is the standard for materials and parts.
What happens when the invoice arrives before the goods are received?
The invoice stays on hold until the receipt is posted. The system should re-run the match automatically when the receiving report lands, so nobody has to remember to come back to it. If the invoice is dated before shipment, that is worth a question to the supplier.
How do I handle a charge that is not on the PO, like freight or a fuel surcharge?
If the contract or the supplier's terms allow it and the amount is within the tolerance you set for unplanned charges, it can clear. If not, it is an exception: AP asks the supplier to confirm it and the buyer who placed the order approves or rejects it.
Can you run a three-way match in Excel?
With a few dozen invoices a month, yes. At a few hundred, cross-checking POs, receipts and invoices by hand takes hours each week and errors slip through. Most ERPs include a match that clears invoices whose fields agree exactly. Everything else lands in an exception queue for someone to investigate.
Who decides the exceptions?
Usually AP investigates and the buyer who placed the order decides: whether to accept the price, whether the material was received, or whether to dispute. What matters for the audit is that the decision is recorded with the invoice, not in an email thread.
Does a three-way match affect early-payment discounts?
Yes, in both directions. A fast match lets you take a 2/10 net 30 discount on clean invoices because they are approved well inside the ten days. A slow match loses the discount while the invoice sits in a queue. Exceptions should be worked in due-date order for the same reason.
Isn't an automated three-way match just OCR plus ERP rules?
No. OCR turns an invoice image into text. ERP matching rules then compare fields that must agree exactly or within a tolerance. Neither knows that a supplier's part description refers to your item number, that 4 boxes of 250 are the 1,000 each on the PO, or that a 3 percent price increase is allowed by the contract's escalation clause. Those cases are most of the exception queue, and they need the documents to be understood, not just read.
Keep reading
Sources
This article is for information and is not legal advice. Practices and references are for the United States; check what applies to your contracts and your state.
