E-Rechnung Validator
Validierungsfehler

BR-CO-15: Bruttobetrag stimmt nicht

Die bekannteste Rechenregel der EN 16931: Der Bruttobetrag der Rechnung muss exakt der Summe aus Nettobetrag und Umsatzsteuer entsprechen. Schon ein Cent Abweichung lässt die Prüfung scheitern.

Was bedeutet dieser Fehler?

Regeltext der Prüf-Engine

Invoice total amount with VAT (BT-112) = Invoice total amount without VAT (BT-109) + Invoice total VAT amount (BT-110).

Die Regel prüft eine reine Addition auf Dokumentebene: BT-109 + BT-110 = BT-112.

Es gibt keine Toleranz. Rundungsdifferenzen aus der Positionsberechnung müssen über den Rundungsbetrag (BT-114) ausgeglichen werden, nicht durch ein abweichendes Gesamtergebnis.

Wer BT-112 korrigiert, muss BT-115 mitziehen. Der Zahlbetrag baut auf dem Bruttobetrag auf — wird nur BT-112 geändert, verschwindet BR-CO-15 und BR-CO-16 erscheint an seiner Stelle.

Es gibt einen zweiten, weniger bekannten Auslöser: Die Regel setzt genau einen Steuerbetrag in Rechnungswährung voraus. Liegen zwei TaxTotal-Blöcke in derselben Währung vor, oder fehlt am TaxAmount die Währungsangabe, schlägt BR-CO-15 an, obwohl die Summen stimmen. Das entsteht regelmäßig bei Konvertierungen, die zusätzlich den Steuerbetrag in Landeswährung (BT-111) mitschreiben.

Verwechsle die Regel nicht mit BR-CO-16: Die prüft den zu zahlenden Betrag (BT-115) nach Abzug bereits gezahlter Beträge.

Betroffene Felder

  • BT-109 — Rechnungssumme ohne Umsatzsteuer
    cbc:TaxExclusiveAmount (UBL) · ram:TaxBasisTotalAmount (CII)
  • BT-110 — Gesamtbetrag der Umsatzsteuer
    cac:TaxTotal/cbc:TaxAmount (UBL) · ram:TaxTotalAmount (CII)
  • BT-112 — Rechnungssumme einschließlich Umsatzsteuer
    cbc:TaxInclusiveAmount (UBL) · ram:GrandTotalAmount (CII)

Beispiel

❌ FEHLERHAFT

BT-109 (netto):   1.000,00 €
BT-110 (USt 19%):   190,00 €
BT-112 (brutto):  1.200,00 €
BT-115 (zahlbar): 1.200,00 €

1.000,00 + 190,00 = 1.190,00 — nicht 1.200,00.

✓ KORREKT

BT-109 (netto):   1.000,00 €
BT-110 (USt 19%):   190,00 €
BT-112 (brutto):  1.190,00 €
BT-115 (zahlbar): 1.190,00 €

BT-115 gehört mitgeändert. Wer nur BT-112 korrigiert, tauscht BR-CO-15 gegen BR-CO-16 — nachgemessen an der laufenden Engine.

Häufige Ursachen

  • Die Bruttosumme wurde manuell überschrieben, die Nettosumme nicht.
  • Rundungsdifferenzen aus vielen Positionen summieren sich auf einen Cent.
  • Mehrere Steuersätze wurden falsch aggregiert.
  • Ein nachträglicher Rabatt wurde nur in einer der drei Summen berücksichtigt.

So behebst du den Fehler

Schritt 1: Die drei Beträge im XML vergleichen

Suche TaxExclusiveAmount, TaxAmount und TaxInclusiveAmount und rechne von Hand nach. Der Validator nennt die betroffene Stelle im XPath.

Schritt 2: Rundung auf zwei Stellen prüfen

Rechne jede Position kaufmännisch auf zwei Nachkommastellen und summiere erst danach. Zuerst summieren und dann runden ergibt abweichende Ergebnisse.

Schritt 3: Differenz über BT-114 ausgleichen

Bleibt ein unvermeidbarer Cent, gehört er in den Rundungsbetrag (BT-114) — nicht in eine stillschweigend abweichende Bruttosumme.

Schritt 4: Den Zahlbetrag mitziehen

Nach jeder Korrektur an BT-112 auch BT-115 prüfen. Beide stehen in derselben Summengruppe (cac:LegalMonetaryTotal bzw. ram:SpecifiedTradeSettlementHeaderMonetarySummation) und werden oft getrennt gepflegt. Bleibt BT-115 stehen, meldet die nächste Prüfung BR-CO-16.

Schritt 5: Wenn alle Summen stimmen: den Steuerblock zählen

Meldet die Prüfung BR-CO-15, obwohl die Addition aufgeht, liegt es am Steuerblock. Prüfe, ob genau ein TaxTotal mit TaxAmount in Rechnungswährung existiert und ob dort die Währung (@currencyID) gesetzt ist. Zwei Blöcke in derselben Währung — etwa durch einen zusätzlich ausgewiesenen Steuerbetrag in Landeswährung — lösen die Regel unabhängig von den Beträgen aus.

Fehler behoben? Jetzt erneut validieren

Prüfe deine korrigierte XRechnung oder ZUGFeRD-Datei kostenlos mit dem KoSIT-Validator.