BR-04: Rechnungsart fehlt

Jede Rechnung braucht einen Code für die Rechnungsart (BT-3), zum Beispiel 380 für eine Handelsrechnung.

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

Offizieller Regeltext

An Invoice shall have an Invoice type code (BT-3).

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

Das Feld wird nicht befüllt, weil die Software nur eine Rechnungsart kennt.

So behebst du den Fehler

Den passenden Code aus UNTDID 1001 angeben (UBL cbc:InvoiceTypeCode bzw. cbc:CreditNoteTypeCode, CII ram:TypeCode). XRechnung empfiehlt 326, 380, 384, 389, 381, 875, 876 oder 877.

In CII meldet der Validator zusätzlich CII-SR-014.

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-04 auch: CII-SR-014.

Beispiel in UBL

Änderung gegenüber der gültigen Rechnung: Rechnungsart (BT-3) entfernt.

Falsch – ab Zeile 6 · markierte Zeile fehlt hier
<cbc:IssueDate>2026-10-01</cbc:IssueDate>
<cbc:DueDate>2026-10-15</cbc:DueDate>
<cbc:Note>TESTDATEN: synthetische Rechnung aus dem E-Rechnungs-Testkorpus (Claw Labs). Keine echte Forderung, keine echten Firmen oder Personen.</cbc:Note>
<cbc:DocumentCurrencyCode>EUR</cbc:DocumentCurrencyCode>
Richtig – ab Zeile 6
<cbc:IssueDate>2026-10-01</cbc:IssueDate>
<cbc:DueDate>2026-10-15</cbc:DueDate>
<cbc:InvoiceTypeCode>380</cbc:InvoiceTypeCode>
<cbc:Note>TESTDATEN: synthetische Rechnung aus dem E-Rechnungs-Testkorpus (Claw Labs). Keine echte Forderung, keine echten Firmen oder Personen.</cbc:Note>
<cbc:DocumentCurrencyCode>EUR</cbc:DocumentCurrencyCode>

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

  • BR-04 An Invoice shall have an Invoice type code (BT-3). Fundstelle: /Invoice[1]

Vollständige Dateien im Testkorpus: br-04-rechnungsart-fehlt_ubl.xml (falsch) und standard_ubl.xml (richtig).

Beispiel in CII

Änderung gegenüber der gültigen Rechnung: Rechnungsart (BT-3) entfernt.

Falsch – ab Zeile 11 · markierte Zeile fehlt hier
<rsm:ExchangedDocument>
  <ram:ID>TEST-2026-0001</ram:ID>
  <ram:IssueDateTime>
    <udt:DateTimeString format="102">20261001</udt:DateTimeString>
Richtig – ab Zeile 11
<rsm:ExchangedDocument>
  <ram:ID>TEST-2026-0001</ram:ID>
  <ram:TypeCode>380</ram:TypeCode>
  <ram:IssueDateTime>
    <udt:DateTimeString format="102">20261001</udt:DateTimeString>

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

  • BR-04 An Invoice shall have an Invoice type code (BT-3). Fundstelle: /CrossIndustryInvoice[1]
  • CII-SR-014 TypeCode must exist exactly once Fundstelle: /CrossIndustryInvoice[1]/ExchangedDocument[1]

Vollständige Dateien im Testkorpus: br-04-rechnungsart-fehlt_cii.xml (falsch) und standard_cii.xml (richtig).

Testdateien zu BR-04

Technische Details: Kontext und Prüfausdruck aus dem Schematron

CII

Kontext:

/rsm:CrossIndustryInvoice

Prüfausdruck:

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

UBL

Kontext:

/ubl:Invoice | /cn:CreditNote

Prüfausdruck:

normalize-space(cbc:InvoiceTypeCode) != '' or normalize-space(cbc:CreditNoteTypeCode) !=''

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