Lesson 2 of 6
Variances, tolerances and blocking reasons
8 min
Real invoices rarely match to the cent. Lakeside might bill $42.30 instead of $42.00, invoice 510 rotors when 500 arrived, or send the invoice for a delivery that is not due until next week. SAP does not refuse these invoices. It posts them and, if the variance is too large, sets a blocking reason that stops payment until someone resolves it. The rules that decide "too large" are the tolerances.
How tolerance limits work
Tolerances are configured per company code and tolerance key (in Customizing under Logistics Invoice Verification, Invoice Block, Set Tolerance Limits). Each key can have a lower and an upper limit, as an absolute amount, a percentage, or both. If both are active, both are checked, so the tighter one decides. The behavior is consistent across keys:
- Within the limits: no message, no block. The variance is posted (for example to a price difference account) and the invoice is free for payment.
- Below the lower limit: SAP issues a message, but the invoice can be posted and is not blocked.
- Above the upper limit: SAP issues a message, the invoice can still be posted, and it is blocked for payment automatically.
- One blocked item blocks the whole invoice for payment.
The tolerance keys you meet most
| Key | Checks | Contoso setting (example) |
|---|---|---|
| PP | Price variance: invoice value against PO price times quantity | Upper: $250 and 2% |
| DQ | Quantity variance: invoiced quantity against received quantity, valued at PO price | Upper: $100 |
| DW | Quantity variance when no goods receipt has been posted yet | Checked: invoice before receipt is blocked |
| ST | Date variance: invoice posted before the planned delivery date | Upper: value × days limit |
| BD | Small differences: the invoice balance is written off automatically up to a limit | Upper: $2.00 |
| AN / AP | Item amount check for items without / with PO reference | Active for items over $50,000 |
| KW / PS | Variance from condition value / price variance on an estimated price | Defaults |
Common tolerance keys. Keys and their meaning are SAP standard; the limits are Contoso's decision.
Two keys trip up projects. DW applies when an invoice arrives before any goods receipt: if no DW limit is maintained for the company code, SAP blocks every such invoice, and the fix is a business decision, not a defect. BD writes off small balances automatically to an expense or income account so that a one-cent rounding difference does not hold up posting; set it too generously and you are approving overbilling without anyone looking.
A blocked invoice, step by step
Lakeside bills the 500 rotors at $43.00, not $42.00. The invoice value is $21,500; the PO value for the received quantity is $21,000. The $500 variance is 2.4%, above both the $250 and the 2% upper limits for PP.
- EnterAP enters $21,500 and amends the item amount to match the invoice
- MessageSAP warns that the price variance exceeds tolerance and the invoice will be blocked
- PostInvoice document posts; price blocking reason set on the item
- Journal entryGR/IR debit $21,000, price difference debit $500, Lakeside credit $21,500 with payment block R
- Payment runThe blocked open item is skipped and listed as blocked
- ResolutionBuyer confirms the price, or Lakeside sends a credit; then the invoice is released
For a moving-average-price material, a price variance is posted to the stock account as far as the received quantity is still in stock, and the rest to a price difference account. For the rotor, which uses a standard price, the whole variance goes to price difference. Either way the PO price, not the invoice price, decides what GR/IR clears.
What would you do?
Maria from the order-to-cash team is helping in AP. Lakeside's invoice is $40 higher than the PO value, within the PP tolerance. She asks whether to change the PO price before posting. What should she do?
- Tolerances are set per company code and tolerance key, with lower and upper limits as amounts or percentages.
- Above the upper limit the invoice still posts but is blocked for payment; the whole invoice is blocked.
- Know PP (price), DQ and DW (quantity), ST (date), BD (small differences) and AN/AP (item amount).
- Switching a key to "do not check" removes the control and needs owner approval.
Check your understanding · not graded
Lesson check
1. What happens when an invoice item exceeds the upper tolerance limit?
2. Which tolerance key covers price variances against the PO?
3. What does tolerance key BD do?
4. Only one of five items on an invoice exceeds tolerance. What is blocked?
5. If no DW limit is maintained, what happens to invoices received before any goods receipt?