3-Way Matching in Accounts Payable: A Practical Guide

3-way matching in accounts payable is the check that confirms three documents describe the same transaction before an invoice is approved for payment: the purchase order, the receiving report, and the supplier invoice. Also called a three way match, it is one of the most common controls used by AP teams to catch billing errors, duplicate invoices, and quantities that were never actually received.

This guide is written for operations and finance admin teams that already run 3-way matching, or want to introduce it as part of a recurring invoice checking process. It focuses on the operational side — how the check is run, where it slows down, and how the manual review work can be handled — not accounting, tax, or audit advice.

What 3-way matching is

A 3-way match lines up three source records for each purchase and confirms they agree on vendor, item, quantity, and price before the invoice moves to approval or payment.

  • Purchase order (PO): what was ordered, at what price, from which supplier
  • Receiving report or goods-received note: what was actually delivered, in what quantity, and when
  • Supplier invoice: what the vendor is billing for, at which price, and against which PO

When the three agree within an accepted tolerance, the invoice is cleared. When they do not, the exception goes to whoever is responsible for resolving it — usually AP, procurement, or the requesting team.

2-way, 3-way, and 4-way matching

The number in front of "way" refers to how many source documents are compared. Teams pick the level based on risk, spend category, and available records.

  • 2-way match: invoice against PO. Common for services and non-inventory spend where there is no goods receipt.
  • 3-way match: invoice against PO and receiving report. The standard for physical goods.
  • 4-way match: adds a fourth check, usually an inspection or quality-acceptance record. Used where receipt alone is not enough.

Fields checked in a 3-way match

The comparison is field by field. The exact list depends on the ERP or spreadsheet in use, but most 3-way match processes cover the same core fields.

  • PO number referenced on the invoice and the receiving report
  • Supplier or vendor name and account
  • Line-item description or SKU
  • Quantity ordered vs quantity received vs quantity invoiced
  • Unit price on the PO vs unit price on the invoice
  • Extended line totals and invoice total
  • Currency, tax treatment, and payment terms
  • Delivery date on the receiving report vs invoice date window

How to run the check, step by step

A repeatable 3-way match process usually looks like this. Whether it runs inside an ERP or in a spreadsheet, the sequence is the same.

  • Pull the invoice and read off the PO number, supplier, line items, quantities, unit prices, and total
  • Locate the referenced purchase order and confirm supplier, items, quantities, and prices
  • Locate the receiving report for that PO and confirm what was actually delivered
  • Compare quantities across the three records — ordered vs received vs invoiced
  • Compare prices — PO unit price vs invoice unit price and line totals
  • Apply the agreed tolerance (for example, a small variance on price or quantity that can auto-approve)
  • Approve, park, or flag as an exception with the specific field that did not match
  • Record the outcome so the same invoice is not reviewed twice

Common bottlenecks in 3-way matching

Most 3-way match problems are not caused by the check itself — they come from missing or inconsistent inputs. These are the recurring reasons invoices sit in an exception queue.

  • Invoice arrives before the receiving report has been entered
  • PO number missing or wrong on the invoice, so the match cannot start
  • Partial deliveries where the invoice is for the full quantity
  • Quantity or unit-of-measure mismatch between PO, delivery, and invoice
  • Price variance above tolerance because the PO was not updated for a renegotiated rate
  • Duplicate invoices from the same supplier for the same PO
  • Vendor names spelled differently across systems
  • Tax, freight, or handling charges added to the invoice but not on the PO
  • Supporting files — delivery notes, packing slips — attached to the wrong record

Individually, each exception takes a few minutes to resolve. Across a month of invoices, the cumulative time spent switching between the ERP, email, and shared folders is what makes 3-way matching feel slow.

Implementing 3-way matching without new software

A team does not need a new ERP module to introduce a 3-way match. What it needs is a written check, a clear tolerance rule, and a place to log the outcome.

  • Write the check down: which fields are compared, in what order, and against which records
  • Agree a tolerance in advance — for example, an accepted variance on unit price and on delivered quantity
  • Decide the exception path: who is contacted when the match fails, and how the outcome is recorded
  • Keep a simple log — invoice reference, PO, receiving report, outcome, and the field that failed if any
  • Batch the work: process invoices in a scheduled review window rather than one at a time

Once the pattern is written down, the same batch of invoices can be reviewed the same way every week or every month, and the log makes it easy to see which suppliers or which line items generate the most exceptions.

How remote back-office support handles the manual steps

The verification steps in a 3-way match are structured and repeatable, which makes them a good fit for remote back-office support. The internal team keeps ownership of approvals, vendor communication, and payment. The recurring comparison work can be handled from the outside.

A typical support scope covers:

  • Opening each invoice and locating the referenced PO and receiving report
  • Comparing supplier, line items, quantities, unit prices, and totals against the agreed rules
  • Applying the tolerance the internal team defined
  • Marking each invoice as matched, matched with variance, or exception
  • Recording the specific field that failed on each exception so the internal team can act quickly
  • Returning a status report at the end of each batch

K5 Global Task Support can review a recurring batch of invoices against a purchase order and receiving report set based on your template, sample, or instruction. K5 only supports selected back-office admin tasks, data review, document checking, report formatting, and follow-up preparation — not accounting, audit, or financial advisory work.

Chat with K5 Global Task Support on WhatsApp