3-way matching — definition
3-way matching validates an invoice against the purchase order and goods receipt before approving payment. It catches pricing errors, quantity discrepancies, and unauthorized charges.
Key takeaways
- 3-way matching works perfectly until exception queues become the full-time job
- Most mismatches aren't errors, they're operational reality like partial shipments and email-approved changes
- The gap is in resolution and vendor follow-up, not detection
Your AP team implemented 3 way matching for control. Purchase order, goods receipt, invoice—all three must align before payment. It catches pricing errors, prevents fraud, stops duplicate payments. It works exactly as designed.
Then the exception queue becomes the full-time job.
Partial shipments that were expected. Freight charges added at delivery. Price adjustments approved over email. Consolidated invoices covering multiple POs. Missing goods receipt notes from a busy warehouse.
The invoice automation system correctly flags all of them as "mismatches." They're not fraud. They're not errors. They're operational reality meeting a process designed for perfect linear workflows.
Your AP specialist spends 15 hours a week researching exceptions, emailing buyers for confirmation, hunting through Slack for approvals, waiting on warehouse to log receipts retroactively. The matching software did its job in 30 seconds. The resolution work takes 5 days.
The Gap: 3-way matching excels at detection. But when exception resolution starts consuming the majority of AP time, the bottleneck isn't matching logic—it's the coordination work that happens after the flag.
What Is 3 Way Matching (And Why It Exists)
The Control Framework:
3 way matching (also called three way matching or 3-way matching) compares three documents before authorizing payment:
- Purchase Order (PO) – Authorization to buy (vendor, items, quantities, prices)
- Goods Receipt Note (GRN) – Confirmation of delivery (items, quantities received)
- Vendor Invoice – Request for payment (vendor, items, quantities, amounts)
If all three align → payment queue. If mismatch → exception queue.
Why This Matters:
This isn't bureaucracy. It's financial control architecture:
- Fraud prevention: Can't pay for goods never ordered or never received
- Overpayment protection: Catches price and quantity discrepancies before payment
- Audit compliance: SOX requirements, segregation of duties, documentation trails
- Budget enforcement: Can't pay more than authorized
| Risk | Without Matching | With 3 Way Matching |
|---|---|---|
| Unauthorized purchases | Vendor invoices directly | PO required before payment |
| Payment for undelivered goods | Invoice triggers payment | GRN confirms physical receipt |
| Price discrepancies | Pay whatever vendor charges | Verified against PO terms |
| Duplicate payments | Same invoice twice | Cross-referenced against PO |
2 Way vs 3 Way:
2 way matching (PO + Invoice only) works for:
- Services with no physical delivery (SaaS, consulting, subscriptions)
- When GRN adds no verification value
3 way matching (PO + GRN + Invoice) essential for:
- Physical goods requiring receiving confirmation
- Inventory, materials, manufacturing inputs
- When partial shipments or quality issues are possible
The invoice matching process in 6 steps
The invoice matching process follows a defined workflow:
- Invoice receipt – Invoice arrives (email, portal, EDI)
- Data extraction – System captures vendor, amounts, line items, tax details
- PO matching – System attempts to match invoice to purchase order
- Receipt matching – System verifies goods receipt note (GRN) confirms delivery
- Tolerance application – Minor variances within thresholds (±5%) auto-approved
- Exception routing – Mismatches flagged and routed to AP for resolution
For clean matches, this process completes in under 2 minutes. For exceptions, it's where manual coordination work begins.
The process serves a critical purpose. The challenge appears when exception volume grows to where resolution effort exceeds the control benefit.
Three Common Scenarios That Break Matching
Real business transactions that three way matching correctly flags—but can't resolve:
Scenario 1: The Partial Shipment
Invoice: $12,500 for 500 units PO: 1,000 units ($25,000) GRN: 500 units received
System sees: 50% quantity shortage
What happened: Vendor shipped available inventory immediately, remainder backordered to next week. Warehouse knows. Buyer knows. The system doesn't.
Manual work required:
- AP emails buyer: "Why only 500 units?"
- Buyer confirms partial shipment expected
- AP manually processes partial payment
- Second invoice arrives next week
- System flags "PO already invoiced"
- AP manually confirms second shipment, processes remainder
Time: 5-7 days across two invoices. Same pattern repeats monthly with multiple vendors.
What a coordination layer would do: Auto-detect partial receipt pattern, prompt buyer to confirm expected split shipment, pre-approve partial payment with audit documentation, flag second invoice as continuation rather than duplicate.
Scenario 2: The Freight Add-On
Invoice: $31,200 ($28,000 materials + $2,400 freight + $800 duty) PO: $28,000
System sees: 11% overage
What happened: PO covered product only. Freight and customs added at shipment. Standard practice for this vendor—for three years.
Manual work required:
- AP flags to buyer
- Buyer confirms: "Freight always separate"
- AP verifies shipping charges
- Manually approves with documentation
- Next month: Same vendor, same pattern, same manual review
The real issue: System never learns this vendor legitimately exceeds POs by freight amounts.
What a coordination layer would do: After third identical approval for this vendor, ask: "Auto-approve freight add-ons for this vendor within 15% going forward?" Future invoices route automatically with notification rather than blocking for review.
Scenario 3: The Missing GRN
Invoice: Exists PO: Exists GRN: Not logged
System sees: Cannot complete 3 way match
What happened: Warehouse received goods two weeks ago. New receiving clerk, busy shift, or system was down. Physical inventory is on shelf. Digital receipt was never created.
Manual work required:
- AP emails warehouse: "Did we receive PO-7821?"
- Warehouse confirms receipt (after searching)
- AP requests retroactive GRN creation
- Warehouse supervisor logs backdated receipt
- Invoice finally matches, moves to payment
How common: In companies without rigorous receiving processes, this affects a noticeable share of monthly invoices.
What a coordination layer would do: Auto-check with warehouse system for physical receipt confirmation, send prompt notification to receiving manager if GRN missing for invoices received 7+ days prior, escalate to warehouse supervisor at day 10 with one-click GRN creation option.
The Pattern: Matching identifies discrepancies correctly. But the discrepancies aren't fraud—they're operational variance. Resolution requires coordination across procurement, warehouse, and vendors. That's where time disappears.
Where Time Actually Goes
| Exception Type | In Queue | Typical Days to Resolve | Why It Takes Long |
|---|---|---|---|
| Partial shipments | 8 | 4-5 days | Buyer confirmation, manual override |
| Freight/duty variances | 6 | 3-4 days | Verification, approval documentation |
| Missing GRNs | 5 | 5-7 days | Warehouse follow-up, retroactive logging |
| Price adjustments | 7 | 5-6 days | Hunt for email approval, PO amendment |
| Consolidated invoices | 3 | Same day | Manual splitting (20 min each) |
The Time Breakdown:
- Exception research: 15-25 minutes per invoice
- Waiting for responses: 3-5 days average (buyer, warehouse, vendor)
- Manual documentation: 5-10 minutes
- Total: What should take 30 minutes stretches to multiple days due to coordination delays
What many mid-market AP teams report:
- Clean matching consumes 15-20% of AP time
- Exception handling often consumes the majority
- The matching system handles the clean portion perfectly
- The exception resolution work still requires human coordination
This pattern is common in companies processing 200+ invoices monthly. The accounts payable automation system handles document processing efficiently—but coordination delays between procurement, warehouse, and AP create the actual bottleneck. If this sounds familiar, these are the same signs your business has outgrown manual spend management.
Your AP team isn't slow at matching invoices. They're fast at flagging exceptions and slow at coordinating with buyers, warehouse, and vendors to resolve them. That coordination work doesn't shrink because invoice capture got faster. See how integration affects this: AP Automation & ERP Integration Reality
What Traditional AP Automation Optimizes (And What It Doesn't)
Most invoice processing automation platforms excel at specific workflow steps. Understanding what they optimize—and what they leave behind—clarifies where bottlenecks persist.
What Traditional AP Automation Optimizes:
✓ Capture – Digitizing invoices from email, portals, EDI ✓ Extraction – OCR pulling vendor names, amounts, line items, tax details ✓ Matching – Automated PO-GRN-Invoice comparison logic ✓ Routing – Rule-based approval workflows and notification triggers ✓ Posting – ERP integration and transaction creation
These steps typically compress from hours of manual work to minutes of automated processing.
What It Doesn't Optimize:
✗ Response latency – Waiting 3-5 days for buyers to respond to variance questions ✗ Context gathering – AP manually hunting emails, Slack, contracts for approval documentation ✗ Cross-team follow-up – Sending reminders, escalating to managers, tracking who needs to respond ✗ Vendor communication – "Where's my payment?" inquiries still route to AP inbox ✗ Pattern learning – Same vendor, same legitimate variance, same manual override every month
The Result:
In audits we've conducted with mid-market companies, the automated steps typically consume 10-15% of total AP time. The unoptimized coordination work—the waiting, following up, context gathering—consumes 60-70% of AP time.
| Activity | Automated by Traditional Systems | Still Manual |
|---|---|---|
| Invoice capture & extraction | ✓ 5-10 min/week | — |
| PO matching logic | ✓ Instant | — |
| Exception research | — | ✗ 12-15 hrs/week |
| Follow-up coordination | — | ✗ 8-10 hrs/week |
| Vendor payment inquiries | — | ✗ 4-6 hrs/week |
Traditional AP automation digitizes documents and applies rules efficiently. But when the majority of AP time is spent coordinating responses—not processing transactions—the automation addresses the smaller problem.
What Invoice Matching Software Automates (And What It Leaves Behind)
What matching tools handle well:
✓ Automated PO-Invoice-GRN comparison ✓ Duplicate detection ✓ Tolerance rules (auto-approve within X%) ✓ Exception flagging and routing
What most tools leave behind:
✗ Gathering context (AP hunts emails, Slack, contracts manually) ✗ Follow-up coordination (AP sends emails, waits, sends reminders) ✗ Pattern learning (same vendor, same variance, same manual override monthly) ✗ Vendor communication ("Where's my payment?" still comes to AP)
| After Exception Is Flagged | Invoice Matching Tool | Manual AP Work |
|---|---|---|
| Pull PO details, contract, vendor history | — | ✗ Hunt across systems |
| Email buyer for clarification | — | ✗ Send, wait, follow up |
| Document resolution for audit | — | ✗ Manually attach notes |
| Answer vendor payment inquiries | — | ✗ Check status, respond |
| Learn from repeated patterns | — | ✗ Same work next month |
Matching software digitizes the comparison step. But when a significant share of invoices require coordination to resolve, you haven't automated AP—you've automated detection. The resolution step that consumes most AP time remains manual.
What's evolving: Systems that don't just flag exceptions, but own the coordination work—auto-assembling context, handling follow-ups, learning from patterns, managing vendor communication.
Why automation stalls after matching: Why Invoice Automation Stalls Once Exceptions Take Over Understanding the full automation landscape: AP Automation 101: Complete Guide
From Detection to Coordination
Traditional approach: Rules + Thresholds
- Auto-approve within 5% variance
- Route to manager if 5-10%
- Route to CFO if >10%
The limitation: Doesn't account for vendor patterns, doesn't learn, doesn't own follow-up. Exception queues remain manual.
What's emerging: Coordination layers
Context assembly: When variance detected, system auto-pulls PO details, vendor contract, prior invoices, email approvals, budget status. Reviewer sees everything in one view instead of hunting.
Intelligent follow-up: Initial notification → 48hr reminder if no response → 96hr escalation to backup. All automatic, all documented.
Pattern learning: After CFO approves 3rd consecutive AWS invoice with same usage-based overage, system asks: "Auto-approve this pattern going forward?" Future invoices route automatically with notification.
Vendor self-service: Payment status questions answered automatically based on invoice workflow position, with estimated payment dates.
Representative mid-market implementation (200-person distribution company):
Before: 40-50 exceptions in queue at any time, average resolution time of 5-6 days, approximately 18 hours weekly on exception handling
After implementing coordination layer: 15-20 exceptions in queue, 2.1 days average resolution, roughly 7 hours weekly on exceptions
What changed: System owns the coordination work—context gathering, follow-ups, pattern recognition. AP only handles true judgment calls.
The shift isn't from manual to automated. It's from detecting exceptions to completing invoices. Detection means flagged. Completion means researched, coordinated, resolved—not just flagged.
If exception resolution consistently takes 4+ days and consumes the majority of AP time, the gap isn't in your matching logic—it's in the coordination layer.
Rhocash handles the work that happens after detection:
- Context gathering for exceptions—PO, contracts, history, approvals assembled before routing
- Follow-up sequences that run themselves—reminders, escalations, documentation
- Pattern learning that suggests auto-approving recurring variances after the third identical approval
- Vendor self-service for payment status and estimated dates
Teams using Rhocash typically see exception resolution time improve within the first quarter—not because exceptions disappeared, but because coordination work finally has an owner.
The Real Constraint
3 way matching is control. Exception handling is operations.
If exceptions age for days and consume the majority of AP time, the constraint isn't your detection logic—it's the coordination layer that happens after detection. The research. The follow-ups. The pattern recognition. The vendor communication.
That's the work that scales with invoice volume, not the matching itself.
The companies moving past this bottleneck aren't weakening controls. They're automating coordination.
Frequently Asked Questions
What is 3 way matching in accounts payable?
Control process comparing three documents before payment: purchase order (what you ordered), goods receipt (what you received), vendor invoice (what you're being billed). Payment only processes when all three align. Prevents paying for goods never ordered or never received.
What's the difference between 2 way and 3 way matching?
2 way compares PO + Invoice (best for services, no physical delivery). 3 way adds goods receipt confirmation (essential for physical goods, inventory). Three way matching provides stronger control but creates more exceptions when reality doesn't match perfect PO-delivery-invoice alignment.
Why does accounts payable automation create exception queues?
Exception queues grow when operational reality diverges from linear workflow assumptions. Partial shipments, freight charges added post-PO, verbal price approvals, missing GRNs, consolidated invoices—all legitimate variances that invoice automation systems correctly flag but don't resolve. The automation handles detection; coordination work remains manual.
What's a reasonable exception rate for invoice matching?
Varies by industry and operational complexity. Companies with simple supply chains and rigorous receiving processes often see lower exception rates. Organizations dealing with partial shipments, international freight, and complex vendor terms commonly see higher rates. The more critical metric: how long does resolution take? If exceptions consistently sit 5+ days, the bottleneck is coordination, not detection.
Can AP automation software eliminate exceptions?
Not entirely—business transactions don't always follow perfect paths. Invoice processing automation can reduce false positives through better tolerance rules and duplicate detection, but legitimate variances (partial shipments, approved price changes, freight add-ons) still need human coordination to resolve. The better question: does your software help resolve exceptions faster, or just flag them?
How does the invoice matching process work?
The invoice matching process typically follows these steps: invoice receipt and data extraction, PO matching to verify authorization, receipt matching to confirm delivery (for 3 way matching), tolerance application for minor variances, and exception routing for mismatches. Clean matches process in under 2 minutes; exceptions require manual coordination across procurement, warehouse, and AP teams.
How long should exception resolution take?
For clean matches: under 2 minutes from receipt to payment queue. For exceptions: depends on coordination speed with buyers, warehouse, and vendors. Many mid-market companies report 4-7 days for exception resolution—not because the matching logic is slow, but because gathering approvals, confirming details, and documenting resolutions requires multiple touchpoints. Fast resolution typically indicates good coordination tools, not just sophisticated matching rules.
Share this article
Looking for expense and AP automation that handles unstructured documents and multilingual inputs?
See how Rhocash works