ERPTwin
101MMMIROMRBRadvanced

Invoice Verification Deep Dive: Quantity and Price Variances, Payment Blocks, MRBR and GR/IR

A supplier invoices more than was received, at a higher price. MIRO posts the invoice but blocks it for payment for both reasons; GR/IR shows the open quantity; the missing goods arrive and clear it; the buyer accepts the price and MRBR releases the invoice for payment.

Educational content. SAP behaviour varies by configuration and release. Spotted something off? Report it.

Digital twin

Docs
SAP DOCUMENTSVisualization of Invoice Verification Deep Dive: Quantity and Price Variances, Payment Blocks, MRBR and GR/IR. All information shown in the scene is also available in the caption and the panels next to it.
Demo data

01First delivery: 80 of 100 EA

80 EA arrive and are received with 101. GR/IR is credited ₹80,000.

Business scenario

PO 4500001400 orders 100 EA of RM-1000 at ₹1,000. Only 80 EA have arrived when the supplier invoices all 100 EA at ₹1,050.

All companies, numbers and documents are fictional demo data.

Step-by-step flow

  1. 01

    First delivery: 80 of 100 EA open in twin

    80 EA arrive and are received with 101. GR/IR is credited ₹80,000.

    GR/IR now expects an invoice for 80 EA at ₹1,000.

  2. 02

    Invoice for 100 EA at ₹1,050 open in twin

    The supplier invoices 100 EA at ₹1,050 = ₹1,05,000. Received so far: 80. Agreed price: ₹1,000.

    Two variances: quantity (invoiced 100, received 80) and price (₹1,050 vs ₹1,000).

  3. 03

    What do you do with the invoice? open in twin

    Both quantity and price are out of tolerance.

    The supplier's claim is real and must be in the books; whether to pay it is a separate decision.

  4. 04

    Hiding the variance open in twin

    Editing the PO to match the invoice removes the price check. The 80 EA already received were valued at ₹1,000, so GR/IR no longer balances and needs manual clearing later.

    A price increase should be a deliberate approval (release of the block), not a silent PO edit — otherwise the control that caught it is defeated.

  5. 05

    Post the invoice — blocked Q and P open in twin

    Vendor credited ₹1,05,000; GR/IR debited ₹1,00,000; ₹5,000 price difference. Payment block set.

    The liability is recorded, but the payment run skips the invoice while it is blocked.

  6. 06

    The missing 20 EA arrive open in twin

    20 EA are received. GR/IR is credited ₹20,000 and now balances. The quantity block reason no longer applies.

    GR/IR is now balanced: 100 received, 100 invoiced.

  7. 07

    Release the invoice (MRBR) open in twin

    MRBR releases the quantity block automatically (its cause is gone). The buyer confirms the new price, so the price block is released manually.

    Payment only happens after someone has accepted each variance.

  8. 08

    Payment run open in twin

    F110 pays ₹1,05,000 to the supplier.

    End of the procure-to-pay cycle with variances.

  9. 09

    Invoice settled open in twin

    GR/IR balanced, invoice paid, ₹5,000 price difference recognised.

    GR/IR is the control account that proves receipts and invoices match.

SAP documents

Drag to pan · Ctrl + scroll to zoom

Stock impact

StepPlant / SLocStock typeMvTChange
First delivery: 80 of 100 EA1000 / 0001Unrestricted use101+80 EA
The missing 20 EA arrive1000 / 0001Unrestricted use101+20 EA

Accounting impact

Goods receipt for 80 EA

Typical

First delivery: 80 of 100 EA

  • Dr Inventory — raw materials (BSX)₹80,000
  • Cr GR/IR clearing (WRX)₹80,000

Valued at the PO price.

Invoice with quantity and price variance

Typical

Post the invoice — blocked Q and P

  • Dr GR/IR clearing (WRX)₹1,00,000
  • Dr Price difference (PRD)₹5,000
  • Cr Supplier 100001 (payable)₹1,05,000

GR/IR is debited for the invoiced quantity at the PO price; the excess price goes to a price-difference account because RM-1000 is under standard price control in this demo (with moving average price and stock on hand it would typically go to inventory). The invoice is posted with blocking reasons for payment.

Goods receipt for the remaining 20 EA

Typical

The missing 20 EA arrive

  • Dr Inventory — raw materials (BSX)₹20,000
  • Cr GR/IR clearing (WRX)₹20,000

Clears the open GR/IR quantity.

Payment of the released invoice

Typical

Payment run

  • Dr Supplier 100001 (payable)₹1,05,000
  • Cr Bank / outgoing payments clearing₹1,05,000

The payable is cleared against the bank (or bank clearing) account.

Typical conceptual flow. Actual G/L accounts and posting behaviour depend on material valuation, automatic account determination and system configuration.

Movement type

  • 101GR for purchase orderReversal: 102

Checks supplier invoices against what was ordered and received, records the liability, holds payment for unaccepted variances, and keeps GR/IR as the control between receipts and invoices.

Transactions & Fiori apps

  • MIRO — Enter Incoming Invoice
  • MRBR — Release Blocked Invoices
  • MR11 — GR/IR Account Maintenance
  • MB5S — List of GR/IR Balances
  • F110 — Payment Run
  • Supplier Invoices List
  • Manage Blocked Supplier InvoicesAvailability depends on release and scope
  • Monitor GR/IR Account BalancesAvailability depends on release and scope

Differences by SAP version

MIRO, MRBR, MR11 as described; GR/IR is reported per vendor/PO.

Configuration

  • Tolerance keys (OMR6)

    Configuration dependent

    PP (price), DQ (quantity), BR/BW and others set limits that block or prevent posting.

  • GR-based invoice verification

    Configuration dependent

    Matches invoices per goods receipt; the PO item indicator controls it.

  • Price control of the material

    Typical

    Standard price sends price differences to PRD; moving average price sends them to inventory while stock covers the quantity.

Prerequisites

  • Purchase order with goods receipt
  • Tolerance keys for the company code
  • Payment terms and payment run setup

Master data

Purchase order
Agreed quantity and price; GR-based IV indicator.
Supplier master
Payment terms and payment methods.

Organizational structure

  • Company code 1000
  • Plant 1000

Tables

TableDescription
RBKP / RSEGInvoice header / item (incl. blocking reasons)
EKBEPO history: receipts and invoices
ACDOCAUniversal journal (S/4HANA)

Integration

  • FIPayables, GR/IR clearing, price differences and the payment run.

Common errors

  • “Invoice blocked for payment”

    Likely causes: Price or quantity variance beyond tolerance; Invoice before goods receipt; Manual payment block

    Where to look: MRBR · Invoice item blocking reasons · Tolerance keys

  • “GR/IR account does not clear”

    Likely causes: Quantities received and invoiced differ permanently; PO price changed after receipt

    Where to look: MB5S · PO history · MR11

Troubleshooting

Something went wrong? Work through these checks in order. They are diagnostic questions, not configuration instructions — confirm changes with your system owner.

  1. CHECK 1

    Blocked invoice

    • Which blocking reason is set?
    • Has the missing goods receipt arrived?
    • Has the buyer approved the price?
  2. CHECK 2

    GR/IR

    • Run MB5S for the PO
    • Compare PO history quantities

Interview questions

  • What happens in MIRO when the invoice price is higher than the PO price?

    Within tolerance, the invoice posts normally and the difference goes to inventory (moving average price with stock coverage) or to a price-difference account (standard price). Beyond the blocking tolerance, the invoice posts with blocking reason P and is held for payment until released in MRBR; beyond the posting tolerance it cannot be posted at all.

  • What is GR/IR clearing and how is it kept clean?

    A clearing account credited at goods receipt and debited at invoice receipt for the same PO quantities and prices. Balances show received-not-invoiced or invoiced-not-received items. MB5S lists them; MR11 clears differences that will never be settled, posting them to a GR/IR clearing difference account.

  • How are blocked invoices released?

    Through MRBR (or the Fiori app). Blocks whose cause has disappeared — e.g. the missing goods have arrived — can be released automatically; others are released manually after approval, or resolved by a credit memo.

Quiz

Q1 · Identify the accounting impact

Standard-price material: PO price ₹1,000, invoice ₹1,050 for 100 EA. Where does the ₹5,000 go?

Q2 · Diagnose the scenario

An invoice was posted but the payment run did not pay it. What is the most likely reason?

References

  • SAP SE — SAP Help Portal: Logistics Invoice Verification (source)
  • SAP SE — SAP Help Portal: Tolerance Limits and Blocking Reasons (source)
  • SAP SE — SAP Help Portal: GR/IR Clearing Account Maintenance (source)

Explanations are original. They summarize standard behaviour; always validate against your system's release and configuration.

Version history

VersionChange
1.0.0Initial version.