Auf dieser Seite
Die kurze Antwort
BR-CO-03 schlägt fehl, wenn das Dokument ein cbc:TaxPointDate hat und seine cac:InvoicePeriod zusätzlich einen cbc:DescriptionCode trägt. Behalten Sie das Datum des Steuerzeitpunkts, wenn Sie das tatsächliche Datum kennen, an dem die Umsatzsteuer entstanden ist; andernfalls behalten Sie den Code und entfernen cbc:TaxPointDate.
Beide Elemente geben den Steuerzeitpunkt an: Das Datum nennt ihn direkt, während der Code das Ereignis nennt, das ihn festlegt. Die zulässigen Codes sind 3 (Ausstellungsdatum der Rechnung), 35 (tatsächliches Lieferdatum) und 432 (Zahlungsdatum).
Was die Regel prüft
Die Regel wird einmal für das ganze Dokument ausgewertet. Sie sucht nach cbc:TaxPointDate unterhalb der Wurzel und nach cbc:DescriptionCode innerhalb der cac:InvoicePeriod auf Dokumentenebene und schlägt nur fehl, wenn sie beides findet.
Keines von beiden besteht, und ebenso nur eines davon. Im Versuch bestand die aufgezeichnete Rechnung mit beibehaltenem Datum des Steuerzeitpunkts und einem hinzugefügten Rechnungszeitraum mit Start- und Enddatum: Die Daten des Zeitraums kollidieren nicht mit dem Datum des Steuerzeitpunkts, nur der Code tut es.
Daten im Zeitraum zu ergänzen hilft nicht. Im Versuch meldete ein Zeitraum mit Startdatum, Enddatum und Code 35 neben einem cbc:TaxPointDate weiterhin BR-CO-03.
Ein Code im Zeitraum einer Position wird nicht berücksichtigt. Im Versuch meldete cbc:DescriptionCode in der cac:InvoicePeriod einer Position neben einem Datum des Steuerzeitpunkts diese Regel nicht; gemeldet wurden BR-CO-20 und die Warnung UBL-CR-523, weil ein Zeitraum einer Position Daten braucht und keinen Platz für den Code hat.
Der Wert des Codes wird von anderen Regeln geprüft. Ein Code außerhalb von 3, 35 und 432, etwa 99, meldet BR-CL-06 und PEPPOL-EN16931-CL006.
| Begriff | Bedeutung | UBL-Element |
|---|---|---|
| BT-7 | Abrechnungsdatum der Umsatzsteuer | cbc:TaxPointDate |
| BT-8 | Code für das Abrechnungsdatum der Umsatzsteuer | cac:InvoicePeriod/cbc:DescriptionCode |
Wie es in einer Integration dazu kommt
Mögliche Ursachen, abgeleitet aus der Form der Regel und nicht aus gemessener Nutzung:
- Die Vorlage schreibt einen voreingestellten Code für den Steuerzeitpunkt, zum Beispiel
35für Waren, während ein separates Feldcbc:TaxPointDatefüllt, sobald die Quelle einen Steuerzeitpunkt hat. - Ein Rechnungszeitraum wird nur angelegt, um den Code zu tragen, und der Code wird auch bei Rechnungen hinzugefügt, bei denen das Datum des Steuerzeitpunkts bereits bekannt ist.
- Beide Werte stammen aus dem Lieferdatensatz: Das tatsächliche Lieferdatum geht in
cbc:TaxPointDate, und die Tatsache, dass es ein Lieferdatum ist, wird zusätzlich als Code35gesendet.
So korrigieren Sie das Dokument
- Entscheiden Sie, welches der beiden Elemente die Rechnung braucht. Ist das Datum bekannt, an dem die Umsatzsteuer entstanden ist, und weicht es vom Ausstellungsdatum ab, senden Sie es in
cbc:TaxPointDateund entfernen Siecbc:DescriptionCodeaus dem Zeitraum. - Ist bei der Ausstellung der Rechnung nur das Ereignis bekannt, senden Sie den Code in
cac:InvoicePeriod/cbc:DescriptionCodeund entfernen Siecbc:TaxPointDate. - Bleibt
cac:InvoicePeriodnach dem Entfernen des Codes ohne Kindelemente, entfernen Sie auch den Zeitraum, sonst folgenBR-CO-19undPEPPOL-EN16931-R008. - Ist der Steuerzeitpunkt einfach das Ausstellungsdatum, wird keines der beiden Elemente gebraucht: Die Peppol-Beschreibung von
cbc:TaxPointDatesieht das Element für den Fall vor, dass der Steuerzeitpunkt vom Ausstellungsdatum abweicht.
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: ein Datum des Steuerzeitpunkts und der Code 35 für den Steuerzeitpunkt nebeneinander
<cbc:InvoiceTypeCode>380</cbc:InvoiceTypeCode>
<!-- note omitted from this fragment -->
<cbc:TaxPointDate>2026-09-07</cbc:TaxPointDate>
<cbc:DocumentCurrencyCode>GBP</cbc:DocumentCurrencyCode>
<cbc:AccountingCost>COST-123</cbc:AccountingCost>
<cbc:BuyerReference>BUYER-REF-001</cbc:BuyerReference>
<cac:InvoicePeriod>
<cbc:DescriptionCode>35</cbc:DescriptionCode>
</cac:InvoicePeriod>
<!-- references and parties omitted from this fragment -->
<cac:Delivery>
<cbc:ActualDeliveryDate>2026-09-07</cbc:ActualDeliveryDate>
<!-- delivery location omitted from this fragment -->
</cac:Delivery>Ausschnitt der korrigierten Rechnung: Nur das Datum des Steuerzeitpunkts bleibt
<cbc:InvoiceTypeCode>380</cbc:InvoiceTypeCode>
<!-- note omitted from this fragment -->
<cbc:TaxPointDate>2026-09-07</cbc:TaxPointDate>
<cbc:DocumentCurrencyCode>GBP</cbc:DocumentCurrencyCode>
<cbc:AccountingCost>COST-123</cbc:AccountingCost>
<cbc:BuyerReference>BUYER-REF-001</cbc:BuyerReference>
<!-- references and parties omitted from this fragment -->
<cac:Delivery>
<cbc:ActualDeliveryDate>2026-09-07</cbc:ActualDeliveryDate>
<!-- delivery location omitted from this fragment -->
</cac:Delivery>Die korrigierte Rechnung hat keine cac:InvoicePeriod; die fehlerhafte fügt einen Zeitraum hinzu, dessen einziger Inhalt der Code 35 ist. BR-CO-03 ist der einzige Befund. Der Code besagte, dass der Steuerzeitpunkt das tatsächliche Lieferdatum ist, und die Rechnung gibt dieses Datum, 2026-09-07, bereits sowohl als cbc:ActualDeliveryDate als auch als cbc:TaxPointDate an; durch das Weglassen des Codes geht also nichts verloren.
Was der Validator gemeldet hat
- Die fehlerhafte Rechnung meldet BR-CO-03. 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 gleichermaßen für
InvoiceundCreditNote; im Versuch meldete eine Gutschrift mit beiden ElementenBR-CO-03an der Dokumentwurzel. - Eine Regel aus EN 16931, gemeldet im Prüfschritt EN 16931.
- Ein Zeitraum, der nur den Code enthält, erfüllt
BR-CO-19, das sonst Daten verlangt; im Versuch ließ das Entfernen des Datums des Steuerzeitpunkts aus der fehlerhaften Rechnung ein gültiges Dokument zurück. - Ein Datum des Steuerzeitpunkts mit Zeitzonensuffix, etwa
2026-09-07Z, besteht das XSD, wird aber im Peppol-Prüfschritt vonPEPPOL-EN16931-F001abgelehnt.
Verwandte Regeln
- BR-CO-19 erlaubt einem Rechnungszeitraum, nur den Code des Steuerzeitpunkts zu tragen, sofern auch diese Regel erfüllt ist
- PEPPOL-EN16931-F001 prüft das Format des Datums des Steuerzeitpunkts, wenn Sie es behalten
- Alle Regeln der Referenz ansehen
- Hintergrund (auf Englisch): Understanding EN 16931 validation errors
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-24.1: Quelle geprüft am 2026-09-24, Erklärung zuletzt aktualisiert am 2026-09-24.
Die offizielle Definition von BR-CO-03 (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.

