VoiSAP — SAP MM Error Guide

MIRO "balance not zero"
— the invoice-verification error, explained & fixed

A daily SAP MM headache. It means your invoice doesn't reconcile with the purchase order and goods receipt, so SAP won't post it. Here's the three-way match behind it, why the balance won't clear, and the exact steps to find and fix the gap — for SAP MM invoice verification.

Invoice Verification
Three-Way Match
Step-by-Step Fix
Updated July 2026
MIRO
Key T-code
3
Way Match
6
Fix Steps
S/4
& ECC
📖 6 min read
Updated July 2026
Common SAP MM Error
Call Us
+1 416-569-4606
Book Free Demo Class
Start Here

The quick answer

30-sec read
Written by the VoiSAP training team · Updated July 2026 · Practising SAP consultants.

In MIRO (invoice verification), "balance not zero" means the amount you entered doesn't reconcile with what SAP expects from the purchase order and goods receipt. SAP won't post an invoice until the Balance field is 0 and the traffic light is green. The fix is to find the gap — usually a quantity, price, tax, or delivery-cost difference — and correct it until the balance clears.

Balance not zero — the balance must be zero for posting

Key takeaways

  • MIRO checks the invoice against the PO and goods receipt (the three-way match).
  • The Balance field must be 0 (green light) before you can post.
  • A non-zero balance = a gap in quantity, price, tax, or delivery costs.
  • Find and correct the gap; the balance clears and the invoice posts.
Plain English

What the balance means

When you enter a vendor invoice in MIRO, SAP already knows what it expects: the price from the purchase order and the quantity from the goods receipt. It compares your entry to that expectation. The Balance field (top-right, with a traffic light) shows the difference. If your invoice total matches the expected amount, the balance is 0 and the light turns green — you can post. If it doesn't, the balance is non-zero and SAP stops you.

So the message isn't an error in the usual sense — it's SAP refusing to post a document that doesn't add up. Your job is to explain the difference: either fix your entry, or account for a legitimate variance.

The Match

The three-way match

Invoice verification is a three-way match — PO, goods receipt, and invoice all have to agree:

Purchase orderprice & quantity Goods receiptquantity received Invoicewhat you enter Balance must = 0 to post A quantity, price, tax or delivery-cost gap leaves the balance ≠ 0
Invoice verification checks the invoice against the PO and the goods receipt. Any gap in quantity, price, tax or delivery costs leaves a non-zero balance and blocks posting.

The PO sets the expected price; the goods receipt sets the expected quantity (for GR-based invoice verification); your invoice is checked against both. When all three line up, the balance is zero. A gap anywhere leaves a balance you have to resolve.

Root Cause

Why the balance isn't zero

1. Quantity mismatch

You entered a quantity that doesn't match what was received (or what you intend to bill). For GR-based verification, the invoice quantity should tie to the goods receipt.

2. Price / amount difference

The unit price or line amount differs from the PO. A small difference may be a legitimate variance (which can block the invoice for payment); a large one usually means a keying error.

3. Tax mismatch

The tax code or tax amount you entered doesn't match what the PO expects, so the totals don't reconcile.

4. Delivery costs not handled

Planned delivery costs (freight on the PO) must be selected in MIRO; unplanned delivery costs must be added in the Details tab. Missed either way, the balance won't clear.

5. Wrong PO or line selected

Referencing the wrong purchase order or line pulls in the wrong expected amounts. Confirm you're matching the right document.

The Fix

How to fix it, step by step

6 steps

Read the Balance field

Look at the Balance (top-right) and its traffic light. Note the amount and whether it's positive or negative — that tells you if you've entered too much or too little.

Compare header total vs item total

The amount in the header should equal the sum of the item lines (plus tax and delivery). If the header total was typed and doesn't match the items, that's your gap.

Check the quantity

Confirm the invoice quantity matches what you're billing and — for GR-based verification — the goods receipt quantity. Adjust the line quantity if needed.

Check the price / amount

Compare the unit price/amount against the PO. If it legitimately differs, that's a variance — the invoice may still post but be blocked for payment until released (MRBR).

Check the tax, and add delivery costs

Make sure the tax code and amount match the PO. Select any planned freight lines; enter unplanned delivery costs in the Details tab.

Clear the balance and post

Correct entries until the Balance is 0 and the light is green. Then post.

Tip: a small unavoidable difference (e.g. rounding) can be handled within tolerance, but never force a balance to zero by editing an amount you can't justify — investigate the real gap first.
Quick Answers

FAQ

The amount you entered doesn't reconcile with what SAP expects from the purchase order and goods receipt. The Balance field must be zero (green light) before the invoice can post.
Logistics Invoice Verification checks the vendor invoice against the purchase order (price) and the goods receipt (quantity). When all three agree within tolerance, the invoice posts; a mismatch blocks it.
Usually the invoice quantity differs from the goods receipt quantity (for GR-based verification), or you're billing more or less than was received. Align the line quantity with the goods receipt.
Planned delivery costs (freight on the PO) are selected within MIRO; unplanned delivery costs are entered in the Details tab. Handling them is often what clears a stubborn balance.
Balance not zero stops you posting at all. A blocked invoice posts but is held for payment because a price or quantity variance exceeds tolerance — it's released later in MRBR.
A setting where the invoice is verified against each goods receipt rather than the whole PO. The invoice quantity and value are expected to match the goods receipts, which is why quantity gaps often cause a non-zero balance.
Invoice verification is core SAP MM.

Learn MIRO and the three-way match —
on a live SAP system, with a consultant.

VoiSAP's live SAP MM training covers invoice verification, the three-way match and MIRO on a real system, so balance errors become routine — plus full career support for the Canadian and US market.

*Hands-on training on a live SAP system. Individual outcomes vary.

Related SAP guides & resources
Ready to Start Your SAP Career?

Invoice verification is core SAP MM.
Learn it hands-on, the practical way.

Book a free 30-minute demo class — see live SAP MM training on a real SAP system, and find out if VoiSAP is the right fit. No obligation.

Live SAP System Access
Real SAP training, not slides — FICO, MM, SD, and User Level.
Career Support Included
Resume, LinkedIn, mock interviews, and job search strategy.
96% Placement Outcomes*
Built around real project-ready SAP skills.
Canada-Focused
Brampton, Calgary, Mississauga, Kitchener and across Canada.
We received your request!
Our team will reach out within a few hours to schedule your free demo class.

No commitment required · Typically respond within a few hours

Chat on WhatsApp 📅 Book Free Demo