3-way invoice matching is the practice of comparing three documents before paying a vendor invoice: the purchase order (what you agreed to buy, and at what price), the receiving record (what actually arrived), and the invoice (what you're being billed). If all three agree, the invoice is safe to pay. If they don't, you've caught the error while it's still a conversation with the vendor — not money already gone.
It's a standard control in corporate accounts payable. Almost no small healthcare practice does it. This post explains what each document proves, why the manual version doesn't survive contact with a busy front office, and what quietly slips through without it.
What are the three documents in 3-way matching?
Each document answers a different question, and no one of them can answer the other two. That's the entire logic of the match.
The purchase order: what you agreed to buy
The purchase order (PO) is the record of intent: which items, what quantities, from which vendor, at which prices. It's the only document in the trio that captures the price you agreed to — which makes it the only defense against being billed a different one.
In a typical practice, the PO — when it exists at all — lives in a vendor's online portal, in a confirmation email, or in the memory of whoever placed the order. Many practices order by phone, rep visit, or website cart without generating any PO they keep, which means the agreed price exists nowhere they can check later.
The receiving record: what actually arrived
The receiving record proves delivery: which items showed up, in what quantities, in what condition. It's the only document that can tell you whether something you're being billed for ever physically entered the building.
In a typical practice, this is the packing slip in the box — which gets glanced at, maybe checkmarked, and thrown away with the packaging. If deliveries aren't checked in against anything, the receiving record effectively doesn't exist.
The invoice: what you're being billed
The invoice is the vendor's claim: pay this amount for these items. It's the only one of the three documents the vendor produces, which is exactly why it shouldn't be trusted alone — it reflects the vendor's records of the transaction, not yours.
In a typical practice, invoices arrive by email or inside a monthly statement, and live in an inbox, an accounts payable folder, or the bookkeeper's stack.
Notice where the three documents live: a vendor portal, a discarded packing slip, and an email inbox. Three different places, owned by different people, on different timelines. That geography — not laziness — is the real reason the match rarely happens.
Why don't most practices do 3-way matching manually?
Because the manual version is a genuinely expensive habit, and the cost is paid in the front office's scarcest resource: uninterrupted time.
As purely illustrative math, not a measurement: suppose matching one delivery means finding the original order confirmation, locating the packing slip before it's discarded, and comparing a 15-line invoice against both — call it 10 to 15 minutes when everything is findable, longer when it isn't. A practice receiving four or five deliveries a week is looking at something like an hour of focused reconciliation weekly, done by someone who is also answering phones, checking in patients, and handling insurance. The numbers will differ office to office; the shape of the problem won't.
And the work has a discouraging property: most invoices match. Staff who spend a week checking clean invoices reasonably conclude the checking is pointless — right up until the exception they've stopped looking for.
So the process decays predictably. First the receiving check gets skipped on busy days. Then the packing slips stop being kept. Then "matching" becomes glancing at the invoice total to see if it looks about right. At that point the practice is paying every invoice on trust, which is the polite term for paying whatever arrives.
What slips through without invoice matching?
No matching process means specific, mechanical failure modes — not hypothetical ones. These are the categories of error that a match exists to catch:
Billed but never shipped. An item is backordered or shorted from the shipment, but the invoice bills the full order. Without a receiving record to compare against, the invoice looks perfectly normal — every line on it was genuinely ordered. Only the match against what arrived reveals the gap.
Price creep against the PO. The price you agreed to and the price on the invoice drift apart: a list-price increase, an expired negotiated rate, a repriced substitute. Each instance is small enough to survive a glance at the total. Because nothing about it looks wrong, it compounds — and it's one of the quiet reasons a practice's supply spend drifts toward the top of the commonly cited benchmark ranges without anyone deciding to spend more.
Duplicate invoices. The same shipment billed twice — once as an invoice, once on a statement, or re-sent after a payment posting delay. Without a record tying each invoice to a specific PO, the second copy looks exactly as payable as the first.
Substituted products. The vendor ships an equivalent item — different brand, different size, different price — and bills the substitute. The box count matches, the total looks close, and unless someone compares line items against the original order, the practice never affirmatively agreed to the swap or its price.
None of these require a dishonest vendor. Backorders, catalog updates, statement re-bills, and substitutions are ordinary operational noise at every distributor. Matching isn't an accusation; it's the only mechanism by which ordinary noise gets caught by the buyer instead of absorbed by them.
What's the difference between 2-way and 3-way matching?
2-way matching compares just the purchase order and the invoice, skipping the receiving record. It's worth being honest about what that does and doesn't buy you.
| Error | 2-way (PO vs invoice) | 3-way (PO vs receiving vs invoice) |
|---|---|---|
| Price higher than agreed | Caught | Caught |
| Item billed that was never ordered | Caught | Caught |
| Quantity billed above quantity ordered | Caught | Caught |
| Duplicate invoice for the same PO | Caught | Caught |
| Item billed but never shipped | Missed | Caught |
| Short shipment billed in full | Missed | Caught |
| Substitute product shipped and billed | Missed | Caught |
2-way matching is a real improvement over nothing — it closes the pricing and duplicate categories, which require no receiving discipline at all, only a kept PO. What it structurally cannot catch is anything where the invoice agrees with the order but disagrees with reality: the vendor billed exactly what you ordered, and shipped less. Only the receiving record sees that.
The honest framing: 2-way matching verifies you're being billed what you agreed to. 3-way matching verifies you're being billed for what you got. If your practice keeps no receiving records today, 2-way matching is the right first step — and the receiving half is the part worth automating rather than adding to someone's job description.
What does automated 3-way matching look like?
The reason automation changes the answer isn't that software compares lines faster than people — it's that the three documents stop living in three places.
In an automated workflow, generically:
- Ordering creates the PO. Orders placed through the system generate a purchase order automatically, with items and agreed prices recorded — no separate paperwork step.
- Receiving is a check-off, not a filing task. When a delivery arrives, staff confirm what came in against the open PO — a few taps, not a document to store. That confirmation is the receiving record.
- The invoice is read and matched automatically. The vendor's invoice — usually a PDF — is extracted and compared line by line against the PO and the receiving record.
- Humans review only exceptions. Clean invoices match without anyone touching them. Staff see the flagged lines: the price above the PO, the item billed but not received, the duplicate — with the discrepancy stated in plain language.
The economics invert. Manual matching costs time on every invoice, including the clean ones, which is why it decays. Automated matching costs time only on the invoices that are actually wrong.
The extraction-and-comparison step is where AI has changed what's feasible for small practices — reading any vendor's PDF without templates or EDI projects. We've covered that piece in depth in AI invoice matching for medical practices, including what accuracy to expect and what to demand from a system before trusting it.
Where does SupplyLasso fit?
SupplyLasso runs 3-way matching on every order as a byproduct of how ordering already works in the platform: placing an order creates the purchase order, checking in the delivery creates the receiving record, and uploaded invoices are read and matched line by line — with only the discrepancies surfaced for a human decision, and nothing paid automatically.
If your practice is currently paying invoices on trust because the manual version was never realistic, schedule a demo and we'll show you what the match catches on real invoices like yours.
