BR-02: Rechnungsnummer fehlt

Jede Rechnung braucht eine Rechnungsnummer (BT-1).

Regelwerk
EN 16931 (CEN)
Syntax
UBL und CII
Betroffene Felder
BT-1

Offizieller Regeltext

An Invoice shall have an Invoice number (BT-1).

Regeltext aus den Validierungsartefakten zu EN 16931 in Version 1.3.16 (CEN/TC 434, veröffentlicht von ConnectingEurope), Lizenz EUPL 1.2; enthalten in der XRechnung-Validatorkonfiguration 2026-08-31.

Schweregrad

Ein Verstoß führt im Szenario „XRechnung“ des KoSIT-Validators zur Ablehnung der Rechnung.

Typische Ursachen

Die Rechnung wird exportiert, bevor eine Nummer vergeben wurde (Entwurf), oder das Feld ist leer.

So behebst du den Fehler

Die Rechnungsnummer übermitteln (UBL cbc:ID im Rechnungskopf, CII rsm:ExchangedDocument/ram:ID).

In beiden Syntaxen ist das Element im Schema Pflicht; der Fehler BR-02 tritt daher vor allem bei leerem Element auf. Leere Elemente meldet der Validator zusätzlich als PEPPOL-EN16931-R008.

Geprüftes Beispiel: falsch und richtig

Die Auszüge stammen aus vollständigen, synthetischen Rechnungen des E-Rechnungs-Testkorpus. Geänderte Zeilen sind hervorgehoben. Beide Dateien werden in den automatischen Tests mit dem KoSIT-Validator geprüft.

Bei den Beispielen meldet der Validator außer BR-02 auch: PEPPOL-EN16931-R008.

Beispiel in UBL

Änderung gegenüber der gültigen Rechnung: Rechnungsnummer (BT-1) leer.

Falsch – ab Zeile 3
<cbc:CustomizationID>urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0</cbc:CustomizationID>
<cbc:ProfileID>urn:fdc:peppol.eu:2017:poacc:billing:01:1.0</cbc:ProfileID>
<cbc:ID/>
<cbc:IssueDate>2026-10-01</cbc:IssueDate>
<cbc:DueDate>2026-10-15</cbc:DueDate>
Richtig – ab Zeile 3
<cbc:CustomizationID>urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0</cbc:CustomizationID>
<cbc:ProfileID>urn:fdc:peppol.eu:2017:poacc:billing:01:1.0</cbc:ProfileID>
<cbc:ID>TEST-2026-0001</cbc:ID>
<cbc:IssueDate>2026-10-01</cbc:IssueDate>
<cbc:DueDate>2026-10-15</cbc:DueDate>

Prüfergebnis (KoSIT-Validator 1.6.3, Konfiguration 2026-08-31): falsche Datei abgelehnt, korrigierte Datei angenommen. Meldungen zur falschen Datei:

  • BR-02 An Invoice shall have an Invoice number (BT-1). Fundstelle: /Invoice[1]
  • PEPPOL-EN16931-R008 Document MUST not contain empty elements. Fundstelle: /Invoice[1]/ID[1]

Vollständige Dateien im Testkorpus: br-02-rechnungsnummer-leer_ubl.xml (falsch) und standard_ubl.xml (richtig).

Beispiel in CII

Änderung gegenüber der gültigen Rechnung: Rechnungsnummer (BT-1) leer.

Falsch – ab Zeile 10
</rsm:ExchangedDocumentContext>
<rsm:ExchangedDocument>
  <ram:ID/>
  <ram:TypeCode>380</ram:TypeCode>
  <ram:IssueDateTime>
Richtig – ab Zeile 10
</rsm:ExchangedDocumentContext>
<rsm:ExchangedDocument>
  <ram:ID>TEST-2026-0001</ram:ID>
  <ram:TypeCode>380</ram:TypeCode>
  <ram:IssueDateTime>

Prüfergebnis (KoSIT-Validator 1.6.3, Konfiguration 2026-08-31): falsche Datei abgelehnt, korrigierte Datei angenommen. Meldungen zur falschen Datei:

  • BR-02 An Invoice shall have an Invoice number (BT-1). Fundstelle: /CrossIndustryInvoice[1]
  • PEPPOL-EN16931-R008 Document MUST not contain empty elements. Fundstelle: /CrossIndustryInvoice[1]/ExchangedDocument[1]/ID[1]

Vollständige Dateien im Testkorpus: br-02-rechnungsnummer-leer_cii.xml (falsch) und standard_cii.xml (richtig).

Testdateien zu BR-02

Technische Details: Kontext und Prüfausdruck aus dem Schematron

CII

Kontext:

/rsm:CrossIndustryInvoice

Prüfausdruck:

normalize-space(rsm:ExchangedDocument/ram:ID) != ''

UBL

Kontext:

/ubl:Invoice | /cn:CreditNote

Prüfausdruck:

normalize-space(cbc:ID) != ''

Technische Formatprüfung nach XRechnung 3.0.2; keine steuerliche oder rechtliche Beratung.