Zum Inhalt springen

Ironfang Finance - Regelreferenz

BR-O-06: Den Umsatzsteuersatz aus einem nicht steuerbaren Nachlass auf Dokumentenebene entfernen

Ein Rabatt oder anderer Nachlass auf Dokumentenebene in der Kategorie O hat überhaupt kein cbc:Percent, daher wird ein Nachlasssatz von 0 in O abgewiesen.

EN 16931Fehler: Das Dokument ist ungültigUmsatzsteuerNachlässe und Zuschläge

Auf dieser Seite

Die kurze Antwort

BR-O-06 schlägt fehl, wenn ein cac:AllowanceCharge mit cbc:ChargeIndicator false eine cac:TaxCategory O hat, die cbc:Percent enthält. Das aufgezeichnete Beispiel gibt dem Loyalty discount über 5.00 einen Satz von 0. Löschen Sie dieses Element und lassen Sie cbc:ID und cac:TaxScheme unverändert.

Bei einem Nachlass zum Nullsatz oder einem steuerbefreiten Nachlass sagt das Satzelement 0 aus. Bei O ist das Fehlen des Elements die Aussage, so wie auch die Aufschlüsselung für O im aufgezeichneten Beispiel keinen Satz trägt.

Was die Regel prüft

Geprüft wird jeder Nachlass, dessen Steuerkategorie im Schema VAT O ist, und der Befund zeigt auf diese cac:TaxCategory. Nichts bindet die Regel an die Dokumentwurzel, daher zählt auch ein Nachlass auf Positionsebene: Im Versuch meldete einer in O mit einem Satz von 0 diese Regel an der Position, mit der Warnung UBL-CR-558 für eine Steuerkategorie in einem Positionsnachlass.

Es zählt nur, ob das Element vorhanden ist. Die aufgezeichnete 0 schlägt fehl, und im Versuch ergab ein Satz von 20 auf demselben Treuerabatt denselben einzelnen Befund.

Das Element leer zu schreiben ist kein Ausweg: Ein leeres cbc:Percent in der Steuerkategorie des Rabatts scheiterte im Versuch an der XSD-Prüfung, sodass keine Geschäftsregel lief.

Diese Regel liest nur Nachlässe. Ein Zuschlag in O mit Satz wird von BR-O-07 gemeldet und eine Position in O mit Satz von BR-O-05.

BegriffBedeutungUBL-Element
BT-95Code der Umsatzsteuerkategorie des Nachlasses auf Dokumentenebenecac:AllowanceCharge[cbc:ChargeIndicator = false]/cac:TaxCategory/cbc:ID
BT-96Umsatzsteuersatz des Nachlasses auf Dokumentenebenecac:AllowanceCharge[cbc:ChargeIndicator = false]/cac:TaxCategory/cbc:Percent

Wie es in einer Integration dazu kommt

Mögliche Ursachen, abgeleitet aus der Form der Regel und nicht aus gemessener Nutzung:

  • Der Serialisierer für Nachlässe schreibt für jede Kategorie einen Satz und speichert null für Kategorien ohne Umsatzsteuer.
  • Der Rabatt wurde zunächst zum Nullsatz mit einem Satz von 0 angelegt und später nur durch Ändern seines Codes auf O umgestellt.
  • Das Quellsystem kann für einen Nachlass keinen leeren Satz speichern und sendet stattdessen 0.

So korrigieren Sie das Dokument

  1. Stellen Sie sicher, dass der Nachlass wirklich in O gehört: Er sollte Beträge mindern, die selbst nicht steuerbar sind, wie die Position über 25.00 im aufgezeichneten Beispiel.
  2. Löschen Sie cbc:Percent aus der cac:TaxCategory des Nachlasses, sodass auf cbc:ID O direkt cac:TaxScheme folgt.
  3. Lassen Sie die Beträge, wie sie sind. Der Nachlass senkt den Steuerbasisbetrag für O weiterhin von 25.00 auf 20.00, mit oder ohne Satzelement.
  4. Schreiben Sie im Serialisierer den Satz des Nachlasses für jede Kategorie außer O.

Korrigierte Rechnung prüfen

Vorher und nachher

Dies sind Ausschnitte, keine vollständigen Dokumente. Die vollständigen synthetischen Dokumente, aus denen sie stammen, sind unten verlinkt.

Ausschnitt der fehlerhaften Rechnung: Der Treuerabatt in O gibt einen Satz von 0 an

<cac:AllowanceCharge>
  <cbc:ChargeIndicator>false</cbc:ChargeIndicator>
  <cbc:AllowanceChargeReasonCode>95</cbc:AllowanceChargeReasonCode>
  <cbc:AllowanceChargeReason>Loyalty discount</cbc:AllowanceChargeReason>
  <cbc:Amount currencyID="GBP">5.00</cbc:Amount>
  <cac:TaxCategory>
    <cbc:ID>O</cbc:ID>
    <cbc:Percent>0</cbc:Percent>
    <cac:TaxScheme>
      <cbc:ID>VAT</cbc:ID>
    </cac:TaxScheme>
  </cac:TaxCategory>
</cac:AllowanceCharge>

Ausschnitt der korrigierten Rechnung: Der Treuerabatt in O hat kein Satzelement

<cac:AllowanceCharge>
  <cbc:ChargeIndicator>false</cbc:ChargeIndicator>
  <cbc:AllowanceChargeReasonCode>95</cbc:AllowanceChargeReasonCode>
  <cbc:AllowanceChargeReason>Loyalty discount</cbc:AllowanceChargeReason>
  <cbc:Amount currencyID="GBP">5.00</cbc:Amount>
  <cac:TaxCategory>
    <cbc:ID>O</cbc:ID>
    <cac:TaxScheme>
      <cbc:ID>VAT</cbc:ID>
    </cac:TaxScheme>
  </cac:TaxCategory>
</cac:AllowanceCharge>

Die fehlerhafte Rechnung hat cbc:Percent 0 zwischen cbc:ID und cac:TaxScheme in der Steuerkategorie des Loyalty discount; in der korrigierten Rechnung fehlt dieses Element. Sonst unterscheidet sich nichts, und das fehlerhafte Dokument meldet nur BR-O-06, verortet an der cac:TaxCategory des ersten cac:AllowanceCharge.

Was der Validator gemeldet hat

Aufgezeichnet mit phive 12.1.0 / phive-rules-peppol 4.5.6 / Saxon-HE 12.10, der Engine hinter dem kostenlosen Validator, mit synthetischen Daten. Ein aufgezeichnetes Ergebnis ist ein Regressionsnachweis für diese Dokumente, keine Zertifizierung.

Wo die Regel gilt

  • Gilt für UBL Invoice und CreditNote, wo der Nachlass dieselbe Form hat. Als Gutschrift umgeschrieben meldete die fehlerhafte Rechnung im Versuch nur diese Regel.
  • Nachlässe in anderen Kategorien ohne Umsatzsteuer funktionieren umgekehrt: Ein Nachlass zum Nullsatz oder ein steuerbefreiter Nachlass braucht einen Satz von 0 (BR-Z-06, BR-E-06), sodass das Verschieben eines Nachlasses zwischen diesen Kategorien und O das Hinzufügen oder Entfernen des Elements bedeutet.
  • Derselbe Nachlass schließt, solange er in O steht, nach BR-O-03 auch Umsatzsteuer-Identifikationsnummern aus und wird im Steuerbasisbetrag für O abgezogen, den BR-O-08 prüft.

Umfang und Quelle

Geschrieben für Peppol BIS Billing 3.0.21 (May 2026), EN 16931 1.3.16, angewendet auf Invoice- und CreditNote-Dokumente in UBL 2.1. Andere Profile, Syntaxen und Releases können diese Kennung anders definieren. Version des Hinweiskatalogs 2026-09-28.1: Quelle geprüft am 2026-09-28, Erklärung zuletzt aktualisiert am 2026-09-28.

Die offizielle Definition von BR-O-06 (auf Englisch) enthält den normativen Wortlaut und den Test. Diese Seite ist unsere Erklärung dazu, keine Kopie.

Die Erklärung ändert das Urteil der Engine nicht. Dass Sie diesen Befund beheben, heißt nicht, dass das Dokument jeden Prüfschritt besteht. Die Validierung bescheinigt keine rechtliche oder steuerliche Konformität und überträgt kein Dokument über Peppol.