SAP functional issueObjectInvoice blocked for quantity variance in MMModuleMM_P2P

Invoice Blocked for Quantity Variance

The invoice is placed on payment block because the quantity being invoiced does not match the quantity actually received against the purchase order, and the difference exceeds the tolerance configured under quantity variance tolerance keys. The block sits on the invoice document and must be cleared through MRBR only after the underlying goods receipt, unit of measure, or duplicate-invoice issue is resolved, not before.

This page covers invoices stopped by the system because the invoiced quantity does not agree with the goods receipt quantity recorded against the purchase order. It works through the tolerance key logic, the usual data causes such as missing or partial goods receipts and unit of measure mismatches, and the check sequence to separate a real delivery shortfall from a posting timing problem.

Published 16 Sept 2026· 1,071 words

The business symptom

Accounts payable reports that a vendor invoice is sitting unpaid and the vendor is chasing payment or threatening to put the account on hold. The AP clerk says the invoice 'is stuck in blocked status' or 'won't release no matter what I do' and cannot explain why, since the amount matches the PO. Sometimes the complaint comes from the buyer instead, who is told by the vendor that an invoice from weeks ago has not been paid, and only finds out from AP that it is quantity-blocked, not price-blocked. Occasionally the report is the reverse: someone tries to release the invoice manually and the block reappears the next posting run, which is the point at which the case usually reaches whoever owns MM configuration rather than staying with AP.

The configuration behind it

  • Tolerance key for quantity variance (invoiced quantity greater than received quantity) is configured with a tight absolute or percentage limit for the company code, or with zero tolerance, so any difference at all triggers the block.
  • Goods receipt has not been posted yet, or only a partial receipt has been posted, while the invoice covers the full PO quantity. The PO history shows invoiced quantity ahead of received quantity.
  • Delivery split into multiple partial shipments and GRs, with the invoice referencing the cumulative PO quantity instead of the quantity actually delivered to date.
  • Unit of measure mismatch between the PO order unit and the invoice unit, with an incorrect or missing conversion factor in the material master, producing an apparent quantity difference that is really a conversion error.
  • A goods receipt was reversed or cancelled after the invoice was posted, or before it, leaving the PO history quantity lower than what the invoice claims.
  • Duplicate or over-invoicing: a prior invoice for the same PO item already consumed the received quantity, so a later invoice for the same line has nothing left to match against.
  • GR-based invoice verification indicator on the PO item is inconsistent with how the vendor actually invoices, so the system insists on matching against goods receipt lines that do not exist for that item.
  • A subsequent debit or credit memo was entered with the wrong quantity, distorting the net invoiced quantity recorded against the PO.

What to check

  • ME23N: open the PO, PO history tab, compare ordered, received, and invoiced quantities line by line for the item in question.
  • MIRO: simulate the invoice entry to see the exact variance message and which tolerance key it references.
  • OMR6: check the tolerance key configuration (absolute and percentage limits) for the company code and the specific quantity variance key.
  • MIR6 or the blocked invoice list: confirm the blocking reason code assigned to the invoice, quantity versus price versus quality.
  • MB51 or MIGO document display: verify which goods receipts actually exist against the PO, their quantities, and whether any were reversed.
  • MM03: check the base unit of measure and the order unit conversion factor on the material master.
  • PO item detail: check the GR-based invoice verification flag and confirm it matches vendor invoicing behaviour.

How to prove it in the data

Pull the blocked invoice list filtered on the quantity variance blocking reason and cross-reference each line against the purchase order history table entries for that PO item, showing ordered, received, and invoiced quantities side by side. A genuine shortfall shows received quantity below invoiced quantity with no reversal document in between. A false positive from unit of measure shows matching physical quantities but mismatched units and conversion factors on the same line.

Resolution path

If the tolerance key is genuinely too tight for legitimate business variance, widening it in OMR6 is a configuration change requiring a transport and sign-off from whoever owns invoice verification policy, since it changes exposure for every vendor under that company code. If the cause is a missing or partial goods receipt, the fix is a data action: get the warehouse or receiving team to post the outstanding GR, then release the invoice through MRBR, no config change involved. If the cause is a unit of measure conversion error, correcting the conversion factor in the material master is a data fix but must be checked against any open POs that already used the wrong factor, since those may need manual correction. If the cause is duplicate invoicing, the erroneous invoice document must be reversed with MR8M, not released, and the vendor's credit or resubmission handled separately. If the GR-based flag is wrong for how the vendor actually bills, correcting the PO item setting is a data fix for new POs but existing open items may need the flag changed with care, since it affects future matching for that item only.

The fix people try first (and why it fails)

The reflex fix is to release the invoice manually through MRBR without checking why it was blocked, on the theory that the amount looks fine and the vendor needs paying. This clears the immediate symptom but pays for goods that may not have arrived, or pays twice against the same receipt, and does nothing to stop the same PO item from blocking again on the next invoice. It also erases the diagnostic trail, since once released the block reason is no longer visible in the standard worklist, making it harder for anyone downstream to notice a pattern of repeated quantity mismatches against the same vendor or material.

Whose problem this is

Accounts payable owns monitoring the blocked invoice worklist and cannot release blocks caused by missing receipts on their own. Procurement or the MM configuration team owns tolerance key settings and the GR-based invoice verification flag. Warehouse or receiving owns posting the missing goods receipt. The handover note should state the PO and item, the tolerance key that fired, the quantity variance amount, and which of the two teams needs to act before AP retries the release.

Related SAP objects

Reviewed pages this object connects to in the ERPClimb knowledge graph.

Source: ERPClimb — https://erpclimb.com/sap-functional-issues/invoice-blocked-for-quantity-variance-in-mmERPClimb is an independent platform and is not affiliated with SAP SE. Reference pages are written and reviewed by SAP consultants for learning and troubleshooting.