A price variance occurs when the unit price on a vendor invoice differs from the unit price on the purchase order. It is the most common exception type in three-way match — and the most time-consuming to investigate because the root cause is rarely obvious from the invoice alone.
Why price variances happen
Price variances are not always errors. Many are legitimate — contract escalations, volume discount thresholds, promotional pricing that expired, or currency fluctuations on cross-border purchases. The challenge is distinguishing legitimate variances from genuine overcharges, and doing so at scale across thousands of invoice lines per month.
Common causes
| Cause | Description | Resolution path |
|---|---|---|
| Contract price escalation | Vendor applied an annual price increase per contract terms, but the PO was created before the increase took effect | Update PO price to match contract, approve invoice |
| Volume discount not applied | Order qualified for a volume discount but vendor invoiced at list price | Request credit note from vendor for the discount amount |
| Promotional pricing expired | PO was created during a promotional period but goods shipped after it ended | Negotiate with vendor or accept new price and update PO |
| Currency fluctuation | PO in local currency, invoice in vendor's currency — exchange rate moved between order and invoice date | Apply agreed FX rate per contract, or accept spot rate variance |
| Vendor billing error | Vendor applied wrong price list, wrong customer tier, or wrong item code | Reject invoice, request corrected invoice from vendor |
| Surcharge or fuel levy | Vendor added a surcharge not reflected in the PO line price | Check contract for surcharge terms, accept or dispute |
| Unit of measure mismatch | PO priced per case, invoice priced per unit — apparent 12x price difference | Convert to common UOM, confirm quantities match |
Impact of unresolved price variances
When price variances are not investigated, one of two things happens: the invoice is paid at the higher price (overpayment), or the invoice is held indefinitely (vendor relationship damage and late payment penalties). Neither outcome is acceptable at scale.
For organisations processing 10,000+ invoices per month, even a 3% exception rate means 300 invoices requiring manual investigation. If each investigation takes 15 minutes, that is 75 hours of analyst time per month — spent on a single exception type.
Tolerance strategies
Tolerance rules reduce exception volume by auto-approving variances below a threshold. Common strategies include:
- Fixed absolute — Accept variances under $2 per line item regardless of percentage
- Percentage-based — Accept variances under 1% of PO line value
- Tiered by vendor — Strategic vendors get tighter tolerances; tail-spend vendors get wider
- Tiered by category — Regulated categories (pharma, food) get zero tolerance; office supplies get 5%
The right tolerance strategy balances control (catching real overcharges) against efficiency (not investigating $0.50 variances on a $500 line item).
How AI agents investigate price variances
A rules engine can flag the variance. An AI agent can investigate it:
- Pull the contract for this vendor — check for price escalation clauses, volume tiers, and effective dates
- Compare the invoice price against the last 6 months of invoices from this vendor for the same item
- Check whether the order volume crossed a discount threshold
- Verify the currency and exchange rate if cross-border
- Classify the variance as: contract escalation, vendor error, UOM mismatch, or legitimate new price
- Propose resolution: update PO, request credit, accept and approve, or escalate to procurement
The agent attaches its full reasoning — which documents it checked, what it found, and why it reached its conclusion. A human reviewer approves or overrides in seconds instead of spending 15 minutes repeating the same investigation.
Related
- Three-way match — the full matching process where price variances are detected
- Invoice reconciliation service — managed service that handles price variances end-to-end
- Duplicate invoice detection — another high-volume exception type