Three-Way Matching: PO, GRN and Invoice
Three-way matching is the control that stops you paying for goods you did not order or never received. Here is how it works and how to make it quick.
Contents
Every business pays vendor invoices. Fewer can prove, at the moment of payment, that each invoice corresponds to something they ordered and actually received.
Three-way matching is the control that closes that gap. It is old, unglamorous, and one of the highest-return process disciplines available to a growing business.
The three documents
| Document | Created by | Answers |
|---|---|---|
| Purchase order | Purchasing | What did we agree to buy, at what price? |
| Goods receipt note | Stores | What actually arrived? |
| Vendor invoice | Vendor | What are we being asked to pay for? |
Matching means confirming all three agree on the essentials — item, quantity and rate — before payment is released.
What each mismatch is telling you
Invoice quantity exceeds GRN quantity. You are being billed for goods you did not receive. Either the delivery was short (raise it with the vendor) or part of the consignment is still in transit (hold the difference).
Invoice rate exceeds PO rate. A price increase that was never agreed, or a data-entry error. Either way, it is a conversation before payment, not after.
Invoice with no PO. Someone bought outside the process. Worth resolving twice: pay it if legitimate, then fix the process gap that allowed it. This is the category where genuinely fraudulent invoices hide.
GRN with no invoice, long overdue. Less urgent but worth watching — it means a liability exists that your books may not reflect yet.
Quantity received but rejected at inspection. You should not be paying for material that failed incoming QC. This is why inspection outcomes belong in the same system as receipts.
Why it is hard without a system
On paper, matching means physically retrieving three documents from three departments for every invoice. Most businesses do it for large amounts and wave through the small ones — which is precisely where errors accumulate quietly.
When all three documents live in one system and reference each other, the match becomes a lookup rather than a search. The purchase order links to the GRN; the GRN records what was received; discrepancies are visible without a filing cabinet.
Tolerances keep it practical
Insisting on exact matching creates a queue of trivial exceptions and trains people to override them. Define sensible tolerances instead:
- Small quantity variances on bulk material weighed at the vendor's end
- Rounding differences of a few rupees
- Freight or handling charges agreed separately
Set the tolerance deliberately, apply it consistently, and investigate everything outside it. The goal is to reserve human attention for the exceptions that actually matter.
Making it quick
Four habits that keep matching from becoming a bottleneck:
- Record the GRN the same day goods arrive. Matching cannot happen against a receipt that has not been entered yet — this is the most common cause of payment delays blamed on "the process".
- Receive against the PO, not from the challan. See what a GRN should record.
- Route inspection outcomes into the same record, so rejected quantities are excluded from payable amounts automatically.
- Review unmatched items weekly, not at month-end. A week-old discrepancy is solvable; a month-old one is a negotiation.
The payoff
Businesses that implement three-way matching properly usually find three things in the first quarter:
- A handful of invoices billed for more than was delivered
- At least one duplicate invoice
- Several purchases made outside the approval process
None of these are signs of a badly run business — they are what happens in any operation where three departments keep separate records. What matters is that the control finds them before the money leaves.
See purchase orders, receipts and inspection outcomes connected in one system — book a FlexgrewERP demo and bring an invoice you have always suspected.