Auf dieser Seite
Die kurze Antwort
PEPPOL-EN16931-P0105 schlägt für jede cac:TaxCategory fehl, die VATEX-EU-O trägt, deren cbc:ID aber nicht O ist. Der Code besagt, dass die Lieferung überhaupt nicht der Umsatzsteuer unterliegt, und genau das bedeutet die Kategorie O; neben jeder anderen Kategorie widerspricht er der Behandlung, die diese Kategorie erklärt.
Das aufgezeichnete Beispiel ist eine Reverse-Charge-Rechnung an einen Käufer mit deutscher Umsatzsteuer-Identifikationsnummer: Kategorie AE, Begründungstext Reverse charge und zusätzlich VATEX-EU-O. Eine grenzüberschreitende Dienstleistung kann aus Sicht des Verkäufers nicht steuerbar wirken, doch wenn der Kunde die Umsatzsteuer abführt, ist die Behandlung Reverse-Charge, und deren Code ist VATEX-EU-AE.
Was die Regel prüft
Die Regel erfasst eine cac:TaxCategory über ihren Befreiungsgrund-Code nach Umwandlung in Großbuchstaben, daher hilft gemischte Schreibweise nicht: Vatex-EU-o in der Reverse-Charge-Aufschlüsselung wurde im Versuch gemeldet. Die Kategorie muss dann ohne Randleerzeichen genau O sein.
Sie schlägt fehl, gleich welche andere Kategorie vorliegt. Im Versuch wurde VATEX-EU-O in einer Ausfuhraufschlüsselung, Kategorie G, nur von dieser Regel gemeldet, ebenso wie in der aufgezeichneten Aufschlüsselung AE.
Den aufgezeichneten Fall löst der Austausch des Codes: Mit VATEX-EU-AE statt VATEX-EU-O bestand die Reverse-Charge-Rechnung im Versuch jeden Prüfschritt.
Die Kategorie zu wechseln ist der größere Eingriff. Im Versuch beseitigte das Umstellen der Aufschlüsselung und der Position des aufgezeichneten Beispiels auf O diese Regel, brachte aber BR-O-02 hervor, weil ein Dokument mit einer Position O keine Umsatzsteuer-Identifikationsnummern tragen darf, und BR-O-05, weil eine Position O keinen Satz tragen darf.
| Begriff | Bedeutung | UBL-Element |
|---|---|---|
| BT-121 | Code für den Grund der Umsatzsteuerbefreiung | cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:TaxExemptionReasonCode |
| BT-118 | Code der Umsatzsteuerkategorie | cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID |
| BT-120 | Grund der Umsatzsteuerbefreiung | cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:TaxExemptionReason |
Wie es in einer Integration dazu kommt
Mögliche Ursachen, abgeleitet aus der Form der Regel und nicht aus gemessener Nutzung:
- Grenzüberschreitende Dienstleistungen an Unternehmen sind im System des Verkäufers als nicht steuerbar eingerichtet, weil der Leistungsort im Ausland liegt, während die Kategorie der Rechnung den Reverse-Charge-Regeln folgt.
- Ein Standard-Befreiungscode
VATEX-EU-Owird in jede Aufschlüsselung ohne Umsatzsteuer geschrieben. - Die Kategorie wird nach der Kundenart gewählt und der Befreiungscode nach dem Produkt, und die beiden Einstellungen wurden nie aufeinander abgestimmt.
So korrigieren Sie das Dokument
- Entscheiden Sie, welche Behandlung gilt.
Oist für Lieferungen, die überhaupt nicht der Umsatzsteuer unterliegen; führt der Kunde die Umsatzsteuer im Reverse-Charge-Verfahren ab, ist die BehandlungAE. - Behalten Sie bei einer Reverse-Charge-Lieferung
AEund geben SieVATEX-EU-AE, einen Begründungstext oder beides an, wie esBR-AE-10verlangt. Das korrigierte Beispiel behält den TextReverse chargeund lässt den Code weg. - Ist die Lieferung wirklich nicht steuerbar, stellen Sie die Aufschlüsselung und jede von ihr abgedeckte Position auf
Oum und behalten SieVATEX-EU-O. Entfernen Sie die Umsatzsteuersätze der Positionen, dieBR-O-05verbietet, und die Umsatzsteuer-Identifikationsnummern von Verkäufer und Käufer, dieBR-O-02verbietet.
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: eine Reverse-Charge-Aufschlüsselung mit dem Code für nicht steuerbare Umsätze
<cac:TaxSubtotal>
<cbc:TaxableAmount currencyID="GBP">25.00</cbc:TaxableAmount>
<cbc:TaxAmount currencyID="GBP">0.00</cbc:TaxAmount>
<cac:TaxCategory>
<cbc:ID>AE</cbc:ID>
<cbc:Percent>0</cbc:Percent>
<cbc:TaxExemptionReasonCode>VATEX-EU-O</cbc:TaxExemptionReasonCode>
<cbc:TaxExemptionReason>Reverse charge</cbc:TaxExemptionReason>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>Ausschnitt der korrigierten Rechnung: Die Reverse-Charge-Aufschlüsselung nennt ihren Grund als Text
<cac:TaxSubtotal>
<cbc:TaxableAmount currencyID="GBP">25.00</cbc:TaxableAmount>
<cbc:TaxAmount currencyID="GBP">0.00</cbc:TaxAmount>
<cac:TaxCategory>
<cbc:ID>AE</cbc:ID>
<cbc:Percent>0</cbc:Percent>
<cbc:TaxExemptionReason>Reverse charge</cbc:TaxExemptionReason>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>Die fehlerhafte Rechnung fügt ihrer Reverse-Charge-Aufschlüsselung <cbc:TaxExemptionReasonCode>VATEX-EU-O</cbc:TaxExemptionReasonCode> hinzu; die korrigierte behält die Kategorie AE nur mit dem Text Reverse charge. Gemeldet wird nur diese Peppol-Regel: Der Text erfüllt BR-AE-10, und VATEX-EU-O ist für BR-CL-22 ein gelisteter Code.
Was der Validator gemeldet hat
- Die fehlerhafte Rechnung meldet PEPPOL-EN16931-P0105. Das korrigierte Dokument besteht jeden Prüfschritt ohne Befunde.Fehlerhaftes XML herunterladenKorrigiertes XML herunterladen
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
InvoiceundCreditNote. Im Versuch meldete eine steuerbefreite Gutschrift mitVATEX-EU-Odiese Regel. - Wird nur im Peppol-Prüfschritt gemeldet. Die Regel von EN 16931 für Aufschlüsselungen der Kategorie
O,BR-O-10, verlangt dort irgendeinen Grund, betrachtet aber keine Codes in anderen Kategorien. - Der Code wird in der Umsatzsteueraufschlüsselung und in Nachlässen und Zuschlägen auf Dokumentenebene gelesen. Die Kategorien der Positionen sind
cac:ClassifiedTaxCategory-Elemente und liegen außerhalb der Regel.
Verwandte Regeln
- BR-O-10 verlangt einen Grund, etwa VATEX-EU-O, in einer Aufschlüsselung, die wirklich zur Kategorie O gehört
- BR-AE-10 verlangt den Reverse-Charge-Grund, den die korrigierte Aufschlüsselung als Text angibt
- PEPPOL-EN16931-P0107 bindet den Reverse-Charge-Code VATEX-EU-AE an die Kategorie AE
- BR-O-02 verbietet Umsatzsteuer-Identifikationsnummern in einem Dokument mit einer nicht steuerbaren Position
- Alle Regeln der Referenz ansehen
- Hintergrund (auf Englisch): How Peppol invoice validation actually works
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 PEPPOL-EN16931-P0105 (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.

