BR-DE-21: Spezifikationskennung (BT-24) ungültig
BT-24 muss die XRechnung-Kennung tragen – sonst wird die Rechnung nicht als XRechnung erkannt.
Steckbrief
- Regel
BR-DE-21- Schweregrad
- Warnung – die Rechnung bleibt gültig
- Regelwerk
- XRechnung 3.0 (KoSIT)
- Betroffene Felder
- BT-24
- Syntax
- CII & UBL
Rechnung jetzt prüfen
PDF oder XML hochladen – kostenlos, ohne Anmeldung, gegen die offiziellen Regelwerke.
Zum Online-ValidatorOffizieller Wortlaut
[BR-DE-21] Das Element "Specification identifier" (BT-24) soll syntaktisch der Kennung des Standards XRechnung entsprechen.
Quelle: offizielle Schematron der KoSIT für XRechnung 3.0.
Was die Regel verlangt
Die Spezifikationskennung (Specification identifier, BT-24) sagt, nach welchem Standard die Rechnung erstellt wurde. Für XRechnung 3.0 lautet sie genau:
urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0
Daneben erlaubt die Regel nur die Kennungen der XRechnung-Extension und der Variante für saubere Fahrzeuge (CVD). BR-DE-21 ist eine Warnung, die Rechnung bleibt formal gültig. Empfangsplattformen wählen ihre Prüfung aber anhand von BT-24 aus – eine falsche Kennung führt dort leicht zur Ablehnung.
Typische Ursachen
- Die Patch-Version steht mit in der Kennung, etwa
xrechnung_3.0.2– gültig ist nurxrechnung_3.0. - Der alte Namensraum aus XRechnung 2.x wurde mit der neuen Versionsnummer kombiniert:
urn:xoev-de:kosit:standard:xrechnung_3.0. - Tippfehler oder Leerzeichen am Ende, häufig bei fest im Code hinterlegten Kennungen.
- Eine noch ältere Kennung wie
xrechnung_2.3: Viele Prüfwerkzeuge erkennen die Rechnung dann gar nicht mehr als XRechnung 3.0 und prüfen sie nicht nach deren Regeln.
So sieht es im XML aus
<rsm:ExchangedDocumentContext>
<ram:GuidelineSpecifiedDocumentContextParameter>
<ram:ID>urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0.2</ram:ID>
</ram:GuidelineSpecifiedDocumentContextParameter>
</rsm:ExchangedDocumentContext>
<rsm:ExchangedDocumentContext>
<ram:BusinessProcessSpecifiedDocumentContextParameter>
<ram:ID>urn:fdc:peppol.eu:2017:poacc:billing:01:1.0</ram:ID>
</ram:BusinessProcessSpecifiedDocumentContextParameter>
<ram:GuidelineSpecifiedDocumentContextParameter>
<ram:ID>urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0</ram:ID>
</ram:GuidelineSpecifiedDocumentContextParameter>
</rsm:ExchangedDocumentContext>
In UBL steht dieselbe Kennung in cbc:CustomizationID, der Geschäftsprozess (BT-23) in cbc:ProfileID.
Lösung in C#
Im Facturexa Creator wählen Sie nur das Profil; die Kennung schreibt der Creator selbst. Setzen Sie zusätzlich den Geschäftsprozess (BT-23) – XRechnung verlangt ihn über die Regel PEPPOL-EN16931-R001.
rechnung.BusinessProcess = "urn:fdc:peppol.eu:2017:poacc:billing:01:1.0"; // BT-23
// Das Profil XRechnung schreibt die gültige Kennung in BT-24:
// urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0
rechnung.Save(xmlStream, InvoiceProfile.XRechnung);