Purchase Order Tolerance: Price and Quantity Limits
Jul 19, 2026
Jul 19, 2026
Convert a purchase order to Excel, CSV, or JSON
Submit your purchase orders
Drop documents here, or click to file
Up to 50 files per batch
Uploading...
A purchase order tolerance is the allowed difference between the purchase order and the invoice or goods receipt before an automated match treats it as an exception. Tolerances let small, expected variances (a few cents of rounding, a slightly short delivery) clear automatically, while still stopping the mismatches worth a human's time. They are usually set as a percentage, a fixed dollar amount, or both, and applied separately to price, quantity, and dates.
Without tolerances, matching is all or nothing. Every invoice that differs from its purchase order by a single cent lands in an exception queue, and a clerk spends the afternoon approving three-cent discrepancies. Tolerances are how accounts payable teams keep matching automated for the routine cases and reserve human review for the differences that actually cost money.
A purchase order tolerance, sometimes called a matching tolerance or tolerance limit, is a rule that tells your matching process how far an invoice or receipt can drift from the purchase order and still be approved without review. If the difference falls inside the tolerance, the invoice passes and posts automatically. If it falls outside, the invoice becomes an exception and routes to a person to resolve. The tolerance is the line between "close enough to pay" and "stop and look."
Tolerances exist because real invoices rarely match the PO to the penny. Freight and small fees get added, exchange rates move, units get rounded, suppliers ship a box more or a box less. Most of that is normal and expected. A tolerance encodes how much of it your business is willing to accept silently.
A tolerance limit is the specific threshold you configure. It is usually expressed one of three ways, and many systems let you combine them:
A common pattern is to apply whichever limit is more restrictive, so a tiny percentage on a huge order is still capped by a dollar amount, and a large percentage on a tiny order is still capped by the percentage. The right numbers depend on your spend, your suppliers, and your risk appetite, which is why tolerances are a policy decision rather than a universal default.
Quantity tolerance is the allowed gap between the quantity ordered and the quantity received or invoiced. Suppliers often cannot ship an exact count, especially for items made or packed in standard lots, so a quantity tolerance lets an over-delivery or under-delivery inside the limit pass without holding the invoice. It is frequently split into an over-delivery tolerance and an under-delivery tolerance, because a company may happily accept 2 percent extra but want to be told about anything short.
Quantity tolerance is what makes a three-way match practical. The goods receipt almost never equals the PO exactly, and the invoice is billed against what shipped. A sensible quantity tolerance keeps that normal variance out of the exception queue.
Price tolerance is the allowed difference between the unit price on the purchase order and the unit price on the invoice. When the invoiced price exceeds the PO price by more than the tolerance, the invoice is held as a price exception. This is the control that catches the expensive, quiet errors: a supplier billing at list price instead of the contracted price, a missed discount, a price increase that was never agreed. The gap the tolerance surfaces is the same figure your finance team tracks as purchase price variance.
Price tolerance is usually the tightest of the three, because a price difference is rarely innocent the way a rounding difference or a short shipment can be. Many teams set a near-zero price tolerance on contracted items and a slightly looser one on spot buys.
There is no single correct number, but a few principles hold up across most accounts payable teams:
The goal is a tolerance that lets the boring majority of invoices pass untouched while still catching the ones that would cost you if they slipped through. Too tight and matching stops saving anyone time. Too loose and overcharges post themselves straight to your ledger.
A tolerance is a comparison against the purchase order, so it is only as reliable as the PO figures behind it. If a unit price or quantity was mis-keyed when the PO was entered, the tolerance compares against the wrong reference and either waves through a genuine overcharge or flags a difference that does not exist. Clean, structured PO data is the quiet prerequisite for tolerances doing their job.
When purchase orders arrive as PDFs or scans, PurchaseOrders.io reads the header and every line item and returns them as Excel, CSV, JSON, or an API response, so the prices and quantities your matching engine checks against are captured accurately rather than typed by hand. It does not run the match or post to your ledger; it makes sure the numbers the match relies on are right. Teams pairing it with automated invoice processing on the payables side close the loop from PO capture through to a matched, approved invoice.
For the control these tolerances live inside, see what a three-way match is and how invoice matching automation works. To understand the price gap a tolerance surfaces, read purchase price variance.
From the same family of tools