What Is Three-Way Matching? (PO, Delivery, Invoice)
The control that stops you paying for goods you never received, at prices you never agreed — what three-way matching is, how it works, and when two-way or four-way matching fits better.
Three-way matching is an accounts payable control that compares three documents before a supplier invoice is paid: the purchase order (what you agreed to buy, at what price), the goods received note or delivery record (what actually arrived), and the invoice (what the supplier is charging). Payment is released only when all three agree — same items, same quantities, same prices, within tolerance. If any pair disagrees, the invoice is held until the difference is explained.
Why it exists: the three failure modes it blocks
- Paying for what never arrived. The invoice says 100 units; the receiving record says 80. Without the match, the missing 20 are paid for and written off later as "shrinkage".
- Paying a price you never agreed. The PO said 45.00 per unit; the invoice says 48.50. Unit-price drift across hundreds of invoices is one of the quietest margin leaks in any operation.
- Paying twice. Duplicate and re-sent invoices get caught because the PO they reference has already been fully matched and closed.
The match, step by step
- 1. PO ↔ Receipt: was everything received actually ordered, and did everything ordered arrive (or is the balance still open)? Over-deliveries and substitutions surface here.
- 2. Receipt ↔ Invoice: is the supplier billing only for what was received? Partial deliveries should produce partial invoices — or partial payments.
- 3. PO ↔ Invoice: do prices, discounts, and terms on the invoice match what was agreed on the order?
- 4. Exception handling: any mismatch outside tolerance routes to a human with the three documents side by side — approve with a reason, or dispute with the supplier.
| Variant | Documents matched | Best for |
|---|---|---|
| Two-way match | PO ↔ Invoice | Services and utilities where "receiving" is not physical |
| Three-way match | PO ↔ Receipt ↔ Invoice | All physical goods — the standard |
| Four-way match | PO ↔ Receipt ↔ Inspection ↔ Invoice | Goods requiring quality acceptance before payment (pharma, food, regulated inputs) |
Tolerances: strictness that survives reality
A zero-tolerance match holds every invoice over a rounding cent and teaches the team to bypass the control. Practical setups allow small tolerances — commonly 1–2% on price or a fixed small amount, and exact quantity matching for discrete goods — with everything outside tolerance requiring an explicit, logged approval. The tolerance is policy; the log is the audit trail.
The match is only as honest as the receiving record
Three-way matching assumes someone actually counted the delivery. If receiving means signing the driver's note unread, the match automates a fiction. The control chain is: independent receiving (not the person who ordered), counted against the PO, then the match. Weighing and counting at the door is where the money is defended.
Implementing it without drowning in paper
Manual three-way matching is a filing exercise that fails at volume — which is why it belongs in the purchasing system: the PO, receiving record, and invoice live as linked documents, matching runs automatically, and only exceptions need eyes. It is one link in the wider procure-to-pay chain, and the payoff compounds with volume: the hundredth invoice costs nothing to check.
For sector-specific applications, see how the match protects NGO procurement, hotel receiving bays, and clinic supply chains.
Match every invoice automatically
AWRA OpsHub links POs, receiving, and invoices — payment releases on the match, exceptions route to a human.
See three-way matching in AWRAFrequently asked questions
What is the difference between two-way and three-way matching?
Two-way matching compares only the purchase order and the invoice; three-way adds the receiving record. For physical goods, three-way is the standard because it verifies delivery, not just agreement. Two-way suits services, subscriptions, and utilities where nothing physical arrives.
Does three-way matching slow down supplier payments?
Clean invoices actually pay faster, because matching is automatic and approval queues shrink. What slows down are mismatched invoices — which is the control working. Suppliers who deliver and bill accurately quickly notice they get paid on time, every time.
What tolerance should we set?
A common starting point: 1–2% or a small fixed amount on price, zero tolerance on quantity for discrete goods, and looser quantity tolerance for weighed/bulk goods where scale variance is physical reality. Review the exception log quarterly and tune — a tolerance that generates constant exceptions is set wrong in one direction or the other.
Can small businesses use three-way matching without an ERP?
The principle scales down: staple the PO copy, the counted delivery note, and the invoice together, and pay only complete staples. It works at low volume — and its breakdown point (volume, multiple approvers, partial deliveries) is usually the signal the business has outgrown manual controls.