Guide
The matching guide
2-way and 3-way matching explained, with every check and the one rule that cannot be switched off.
What invoice matching is
Matching is the accounts-payable control that decides whether an invoice is safe to pay. Three documents are involved, and they come from three different actors — which is what makes the control strong: the purchase order (written by the buyer), the goods receipt (written by the warehouse), and the invoice (written by the supplier). Fraud or error has to corrupt all three at once to slip through.
On the receivables side the same control runs from the seller’s chair: the sales order (what the customer agreed to buy), the item fulfilment (what actually left), and the customer invoice (what you are about to bill).
2-way matching
Invoice against purchase order. Checks that prices, quantities and total agree with what was ordered, within tolerance. The goods receipt is not checked.
- Use it for services, subscriptions, utilities and blanket orders — anything nobody receives into a warehouse.
- Residual risk: paying for goods that never arrived.
3-way matching
Invoice against purchase order against goods receipt. Everything 2-way checks, plus: the goods must actually have been received, and the billed quantity may not exceed the received quantity.
- Use it for physical goods — the gold standard.
- The strongest implementation does not just check the receipt; it composes the bill from the receipt, consuming its lines. Over-billing then becomes structurally impossible rather than merely detected. That is how InvoiceIQ does it.
The complete check catalogue
What a 3-way match verifies, leg by leg. In InvoiceIQ every check has a verdict, a plain-English reason, its own tolerance and its own severity — block, review or warn — and only an enabled check that failed can change the outcome. A switched-off check still appears on the report, because a reviewer should see what was not judged.
Leg 1 — Invoice against order
| # | Check | Detail |
|---|---|---|
| 1 | The order exists | The extracted, normalised PO number resolves to a real order in the ERP. |
| 2 | The reference is plausible | IR/INV/VEN/SO-style codes are rejected before lookup — a format gate. |
| 3 | Vendor identity | The invoice’s vendor is the order’s vendor. |
| 4 | Price agreement | Invoice line rate against order line rate, within tolerance; variances flagged. |
| 5 | Line identity | Invoice lines paired to order lines on description, quantity, rate and part number. |
| 6 | The order is billable | Approval-blocked or rejected orders stop; linked prepayments route for clearance first. |
| 7 | Not already fully billed | A fully billed or closed order raises a duplicate warning, never a second bill. |
Leg 2 — Invoice against goods movement (3-way only)
| # | Check | Detail |
|---|---|---|
| 8 | Goods were received | There is a receipt against the order for the lines being billed. |
| 9 | Quantity within what arrived | Billed quantity may not exceed received quantity, line by line. |
Always on
| Check | Detail |
|---|---|
| The golden rule | The composed bill must equal the invoice. Enforced one final time after the ERP has the bill; if it fails, the bill is deleted and the post refused. It cannot be switched off — not by policy, not by editing the database. |
| The duplicate guard | Runs on the report and again at posting on a normalised invoice number, so “VS-4410” and “vs 4410” are the same document. |
| Your own rules | Conditions written in plain English over the invoice, the order, the vendor and the bills already posted — backtested against your history before they can block anything. |
Three policies, one setting
Which policy applies is decided by a ladder: the choice made at posting time, then the vendor default, then the company default, then the system default of 3-way. An invalid request falls through to the next rung rather than bypassing the control.
- 3-way — both legs on. For physical goods.
- 2-way — the goods-movement leg is off. Receipts are not consulted at all, nothing is drawn down, and the bill is raised from the order.
- Non-PO — the order and receipt legs are marked not applicable, rather than merely off. The duplicate guard, the golden rule and your own rules still run.
Tax and freight
Tax and freight are not goods. They belong on a different sublist, must not count against a received-goods ceiling, and are easy to code wrong quietly. Placement rules decide which sublist a charge lands on, and they are exercised against every charge shape the composer can produce before they can activate.
The Match Report
Every attempt produces a report: each check with its verdict and reason, the policy used and who chose it. It is previewable before posting, stored permanently, and written onto the posted bill in the ERP so both systems tell the same story. When the ERP refuses a posting, the raw error is translated into AP guidance — duplicate reference, inactive item with the path to fix it, closed period, subsidiary mismatch.
4-way matching, for completeness
3-way plus inspection or quality acceptance — pharmaceutical and aerospace territory. Not something InvoiceIQ ships today; the configurable-check model accommodates it as one more check row.
Want to see it rather than read about it?
A walkthrough takes an hour and starts with your own documents.