Rundung, Rabatte und Summen in der XRechnung: BR-CO-10, BR-CO-13 und BR-S-08 richtig rechnen
Ein Cent Differenz reicht, und das Portal lehnt die Rechnung ab. Fast alle Summenfehler in XRechnung und ZUGFeRD entstehen, weil die Rechnungssoftware anders rundet oder Rabatte anders darstellt, als die Norm EN 16931 rechnet. Diese Seite zeigt die Rechenkette und die typischen Stolperstellen.
Die Rechenkette der Norm
Die Beträge einer E-Rechnung bauen in einer festen Reihenfolge aufeinander auf. Jede Stufe wird mit einer eigenen Regel geprüft:
- Positionsbetrag (BT-131) = Menge × Nettopreis − Nachlässe + Zuschläge der Position, auf zwei Nachkommastellen gerundet.
- Summe der Positionen (BT-106) = Summe aller BT-131 – BR-CO-10.
- Nettogesamtbetrag (BT-109) = BT-106 − Nachlässe (BT-107) + Zuschläge (BT-108) auf Rechnungsebene – BR-CO-13.
- Steuerbasis je Steuersatz (BT-116) = Summe der Positionen mit diesem Satz − Nachlässe + Zuschläge mit diesem Satz – BR-S-08.
- Steuer je Steuersatz (BT-117) = BT-116 × Steuersatz, gerundet – BR-CO-17.
- Steuer gesamt (BT-110) = Summe aller BT-117 – BR-CO-14.
- Bruttobetrag (BT-112) = BT-109 + BT-110 – BR-CO-15.
- Zahlbetrag (BT-115) = BT-112 − bereits gezahlt (BT-113) + Rundungsbetrag (BT-114) – BR-CO-16.
Geprüft wird jede Gleichung für sich. Ein Fehler weiter oben löst deshalb oft mehrere Meldungen aus. Beheben Sie immer zuerst die oberste.
Stolperstelle 1: mehr als zwei Nachkommastellen
Preise dürfen mehr Nachkommastellen haben (z. B. 0,1234 € je kWh), Beträge nicht. Positionsbeträge, Summen und Steuerbeträge haben höchstens zwei Nachkommastellen. 0,1234 € × 1.500 kWh ergibt 185,10 €; im XML steht dann 185.10 (Punkt als Dezimalzeichen). Schreibt die Software 185.1000 oder durch Gleitkomma-Rechnung 185.0999, melden die Regeln BR-DEC-… zu viele Nachkommastellen, und die Summen gehen nicht mehr auf. Runden Sie jeden Positionsbetrag kaufmännisch auf zwei Stellen, bevor Sie summieren, und verwenden Sie in der Software Dezimalzahlen statt Gleitkomma.
Stolperstelle 2: Steuer je Position gerundet
Die Norm berechnet die Umsatzsteuer je Steuersatz aus der Summe, nicht je Position. Beispiel: drei Positionen zu 0,99 € mit 19 %.
- Je Position gerundet: 3 × 0,19 € = 0,57 €
- Wie die Norm: 2,97 € × 19 % = 0,5643 € → 0,56 €
Die Regel BR-CO-17 lässt bei der Steuer je Satz eine kleine Abweichung zu. Streng geprüft wird aber, dass die Gesamtsteuer (BT-110) genau die Summe der Steuer je Satz (BT-117) ist und der Bruttobetrag genau aufgeht (BR-CO-15). Wer BT-110 aus den Positionssteuern addiert und BT-117 nach der Norm rechnet, erhält eine Ablehnung wegen eines Cents. Am sichersten: alle Steuerbeträge nach der Norm rechnen und den Zahlbetrag daraus ableiten.
Stolperstelle 3: Rabatt nur im Text oder nur im PDF
Ein Rabatt muss in den Zahlen stehen, sonst gehen die Summen nicht auf. Für einen Positionsrabatt gibt es zwei saubere Wege. Beispiel: 10 Stück zu 12,50 €, 10 % Rabatt.
- Im Preis: Bruttopreis 12,50 € (BT-148), Preisnachlass 1,25 € (BT-147), Nettopreis 11,25 € (BT-146). Positionsbetrag 112,50 €.
- Als Nachlass der Position (BG-27): Betrag 12,50 € (BT-136) mit Grund, z. B. „Rabatt“ (BT-139). Positionsbetrag 125,00 € − 12,50 € = 112,50 €.
Falsch ist: Positionsbetrag 125,00 € und der Rabatt nur als Freitext oder nur auf dem PDF. Dann stimmt der Zahlbetrag nicht mit dem überein, was der Kunde erwartet, und bei ZUGFeRD widersprechen sich PDF und XML.
Stolperstelle 4: Nachlass auf Rechnungsebene ohne Steuersatz
Ein Nachlass auf die ganze Rechnung (BG-20, etwa „5 € Treuerabatt“) braucht einen Grund und eine Steuerkategorie mit Satz (Regeln BR-32 und BR-33). Er mindert nicht nur den Nettogesamtbetrag (BR-CO-13), sondern auch die Steuerbasis des passenden Steuersatzes (BR-S-08). Häufiger Fehler: Der Nachlass wird von BT-109 abgezogen, die Steuer aber noch vom alten Betrag berechnet.
Enthält die Rechnung Positionen mit 7 % und mit 19 %, müssen Sie einen Gesamtrabatt auf die Steuersätze aufteilen: ein Nachlass je Steuersatz, jeweils mit dem passenden Satz.
Stolperstelle 5: Skonto ist kein Nachlass
Skonto steht nicht als Nachlass in den Beträgen, denn zum Zeitpunkt der Rechnung ist ja noch nicht gezahlt. XRechnung verlangt Skonto in den Zahlungsbedingungen (BT-20) in einer festen Schreibweise, sonst meldet die Prüfung BR-DE-18:
#SKONTO#TAGE=14#PROZENT=2.00#
Prozent mit Punkt und genau zwei Nachkommastellen, jede Angabe beginnt und endet mit #, danach ein Zeilenumbruch. Gilt der Skonto nur für einen Teil des Betrags, folgt BASISBETRAG=…# als viertes Segment. Freitext wie „2 % Skonto bei Zahlung binnen 14 Tagen“ darf in einer eigenen Zeile davor oder danach stehen.
Stolperstelle 6: Anzahlungen und Rundungsbetrag
- Eine bereits geleistete Anzahlung steht in BT-113 und mindert nur den Zahlbetrag BT-115, nicht den Netto- oder Bruttobetrag (BR-CO-16). Bei einer Schlussrechnung gehören die Leistungen voll in die Positionen.
- Der Rundungsbetrag BT-114 ist für Rundungen des Zahlbetrags gedacht (etwa auf 5 Cent bei Barzahlung). Er ist kein Ort, um Rechenfehler der Software auszugleichen.
Prüfen, bevor die Rechnung rausgeht
- Rechnung im kostenlosen Prüfer öffnen. Er rechnet mit denselben Regeln wie die Prüfstelle der KoSIT und läuft in Ihrem Browser, die Datei wird nicht hochgeladen.
- Bei Summenfehlern die Rechenkette oben von Schritt 1 an nachrechnen; die erste Gleichung, die nicht aufgeht, ist die Ursache.
- Den Fehler in der Rundungs- oder Rabatteinstellung der Software beheben, nicht im XML von Hand.
Erzeugen Sie Rechnungen in eigener Software oder einer Automatisierung (n8n, Make)? Dann bauen Sie dieselbe Prüfung vor dem Versand per API ein. Mehr zu anderen Ablehnungsgründen: XRechnung abgelehnt – Prüfbericht verstehen.
Technische Hinweise zum Datenformat, keine Steuer- oder Rechtsberatung. Ob Steuersatz, Leistung und Beträge in der Sache stimmen, klären Sie mit Ihrer Steuerberatung. Prüfklar ist kein Angebot der KoSIT.