Skip to content

SAP · Logistics Invoice Verification

How does three-way matching work in SAP?

Three-way matching in SAP compares the supplier invoice entered in MIRO with the purchase order price and the goods receipt quantity posted in MIGO. Tolerance keys such as PP for price and DQ for quantity, set per company code, decide what passes. Invoices within limits post free for payment; above an upper limit they post blocked for payment.

New to the idea? Start with what three-way matching is. This guide explains how SAP S/4HANA and ECC do it in Logistics Invoice Verification: tolerance keys, GR-based invoice verification, payment blocks and a worked example. Transaction codes are SAP GUI; Fiori apps are named where they differ.

Last updated · Aequo AP editorial team

What SAP checks in a three-way match

SAP compares the invoice with the purchase order price and the goods receipt quantity when the invoice is posted. Tolerance keys set how much variance is allowed; above the upper limit the invoice posts blocked for payment.

The pieces of a three-way match in SAP Logistics Invoice Verification
PieceWhere it lives in SAPWhat it does
Purchase orderME21N / Manage Purchase OrdersAgreed quantity and net price per item
Goods receiptMIGO, movement type 101Quantity received; posts to GR/IR clearing
Supplier invoiceMIRO / Create Supplier InvoiceEntered with reference to the PO
Price checkTolerance key PPPrice variance per invoice item against the PO price
Quantity checkTolerance key DQInvoiced quantity against delivered quantity
No goods receipt yetTolerance key DWBlocks invoices with no goods receipt unless set to do not check
Blocked invoicesMRBR / Manage Supplier InvoicesRelease once the variance is explained
From the SAP Help Portal pages listed in Sources, read November 13, 2026. Key names are SAP standard; your system may add custom keys or block reasons.

How to set up and run three-way matching in SAP, step by step

Configure tolerance keys per company code, use GR-based invoice verification on PO items, post goods receipts before invoices, and work the blocked-invoice list.

  1. 1

    Set tolerance limits per company code

    In Customizing for Logistics Invoice Verification (Invoice Block, Set Tolerance Limits; transaction OMR6 in many systems), define lower and upper limits for each tolerance key and company code: absolute amounts and percentages.
  2. 2

    Flag PO items for GR-based invoice verification

    On the Invoice tab of each purchase order item, GR-based invoice verification ties invoice items to individual goods receipts, so an item cannot be invoiced before it is received and each invoice line is checked against a specific receipt.
  3. 3

    Create the purchase order

    Create the PO (ME21N in SAP GUI, or the Manage Purchase Orders app) with quantities, net prices and, where you allow them, under- and overdelivery tolerances on the item.
  4. 4

    Post the goods receipt

    Post the goods receipt against the PO (MIGO, movement type 101). This records the quantity received and posts the receipt value to the GR/IR clearing account.
  5. 5

    Enter the supplier invoice against the PO

    In MIRO, or the Create Supplier Invoice app, enter the invoice with reference to the purchase order. SAP proposes the open received quantities and PO prices; adjust them to what the supplier actually billed.
  6. 6

    Let the tolerance check decide

    On posting, SAP compares the invoice with the PO and goods receipt using the tolerance keys. Within limits, the invoice posts free for payment. If an upper limit is exceeded, it posts but is blocked for payment.
  7. 7

    Release or correct blocked invoices

    Review blocked invoices (MRBR, or the Manage Supplier Invoices app). Release them once the variance is explained, or ask the supplier for a credit memo. Invoices whose blocking reason no longer applies, for example after the missing goods receipt is posted, can be released automatically in MRBR.
  8. 8

    Keep GR/IR clean

    Monitor the GR/IR clearing account for receipts without invoices and invoices without receipts, and clear old differences (MR11) under your period-end process.

Worked example: an invoice that posts blocked

PO 4500018832 orders 1,000 kg of resin at $3.20/kg ($3,200.00). The goods receipt posts 1,000 kg. The supplier invoices 1,000 kg at $3.38/kg ($3,380.00). The PP upper limit is 3% and $100.

PO 4500018832: price check at invoice posting
CheckPOGoods receiptInvoiceResult
Quantity1,000 kg1,000 kg1,000 kgWithin DQ
Price$3.20/kg$3.38/kg5.6% and $180 over: exceeds PP upper limits
Amount$3,200.00$3,200.00$3,380.00Posts blocked for payment
Illustrative numbers and limits. How the percentage and absolute limits combine depends on how your tolerance key is configured.

The invoice posts, so the liability is recorded, but payment is blocked. Purchasing confirms whether $3.38 was agreed. If it was, AP releases the invoice in MRBR. If not, AP asks the supplier for a credit memo of $180.00 and releases the invoice once the credit is posted.

Common mistakes with SAP three-way matching

Most problems come from tolerances set too wide to catch anything, GR-based invoice verification left off for goods, and blocked invoices released without a documented reason.

  • Very wide PP limits. Limits set to stop blocks rather than to control price let real overcharges through.
  • GR-based IV off for goods. Invoices can then be matched to the PO item before anything is received.
  • Bulk releases. Releasing the whole MRBR list at period end undoes the control; record a reason per invoice.
  • Ignoring GR/IR. Old open items on GR/IR hide unreceived goods and unclaimed credits.

Where Aequo AP fits

Aequo AP does not connect to SAP today. Its SAP Business One connector is in development and not available, and there is no S/4HANA or ECC connector.

Aequo AP’s three-way matching runs on QuickBooks Online, Xero, FreshBooks, Zoho Books and Business Central today. If you run SAP alongside one of those systems, for example SAP at a parent company and a smaller ledger in a subsidiary, see how matching works in Aequo AP.

Frequently asked questions

What are tolerance keys PP and DQ in SAP?

They are two of the standard keys in Logistics Invoice Verification. PP checks the price variance on each invoice item against the purchase order price. DQ checks the quantity variance between the invoiced quantity and the quantity delivered once a goods receipt is posted. Each has lower and upper absolute and percentage limits per company code.

What does GR-based invoice verification do in SAP?

It links each invoice item to a specific goods receipt rather than to the PO item as a whole. An item cannot be invoiced before it is received, and partial deliveries are invoiced receipt by receipt, which makes the three-way match stricter.

Why is my SAP invoice blocked for payment?

Usually because a variance exceeded an upper tolerance limit when the invoice posted, for example the price was more than the PP limit above the PO price or more was invoiced than received. SAP posts the invoice but sets a payment block; it is released in MRBR or the Manage Supplier Invoices app once the variance is resolved.

Can Aequo AP connect to SAP?

Not yet. Aequo AP does not connect to SAP S/4HANA or ECC today, and its SAP Business One connector is in development, not available. For SAP, the three-way match in this guide runs inside SAP itself.

Automate matching, approvals and exception handling

Aequo AP captures invoices, matches them to purchase orders and receipts, routes approvals and flags duplicates and exceptions, then syncs with QuickBooks Online, Xero, FreshBooks, Zoho Books or Business Central.

Sources

Checked on November 13, 2026. Vendor capabilities and prices change; confirm current details with each vendor.

  1. SAP Help Portal, Tolerance Limits for Invoice Postings (S/4HANA) — tolerance keys per company code; PP and DQ; upper limit exceeded blocks the invoice for payment
  2. SAP Help Portal, Tolerance Keys for PO, Confirmation and Invoices — tolerance key overview
  3. SAP Help Portal, Invoice Release — releasing blocked invoices
  4. SAP Help Portal, Under and Overdelivery Tolerances in Purchasing — delivery tolerances on PO items