Zum Inhalt springen

Ironfang Finance - Regelreferenz

BR-02: Die Rechnungsnummer im cbc:ID auf Dokumentenebene angeben

Das cbc:ID direkt unter dem Wurzelelement muss die Rechnungs- oder Gutschriftnummer enthalten. Ein leeres Element schlägt fehl; ein fehlendes weist bereits die XSD ab.

EN 16931Fehler: Das Dokument ist ungültigKernfelder

Auf dieser Seite

Die kurze Antwort

BR-02 schlägt fehl, wenn das cbc:ID direkt unter dem Wurzelelement Invoice oder CreditNote keinen Inhalt hat. Schreiben Sie die Nummer, die Ihr System für das Dokument vergeben hat, in dieses Element.

Normalerweise sehen Sie diese Regel nur bei einem Element, das vorhanden, aber leer ist. Fehlt das Element ganz, weist der XSD-Prüfschritt das Dokument zuerst ab, und diese Regel wird nie ausgeführt.

Was die Regel prüft

Die Regel liest ein einziges Element, das Kindelement cbc:ID des Wurzelelements, und schlägt fehl, wenn es nur Leerraum enthält. Ein Element, das nur einen XML-Kommentar enthält, gilt ebenfalls als leer. Positionskennungen, Kennungen von Beteiligten und das cbc:ID in cac:BillingReference einer Gutschrift sind andere Elemente und spielen keine Rolle.

Format und Eindeutigkeit werden nicht geprüft. Jeder beliebige Text besteht diese Regel; für eindeutige und fortlaufende Nummern ist das ausstellende System zuständig.

Fehlend oder leer: cbc:ID ist im UBL-Schema Pflicht, daher scheitert ein Dokument ohne dieses Element am XSD-Prüfschritt mit einem Schemafehler, die Prüfschritte EN 16931 und Peppol werden übersprungen, und BR-02 wird nicht gemeldet. Ein leeres oder nur aus Leerraum bestehendes cbc:ID ist schemagültig, erreicht die Geschäftsregeln und meldet BR-02 zusammen mit PEPPOL-EN16931-R008.

BegriffBedeutungUBL-Element
BT-1Rechnungsnummercbc:ID

Wie es in einer Integration dazu kommt

Mögliche Ursachen, abgeleitet aus der Form der Regel und nicht aus gemessener Nutzung:

  • Das XML wird erzeugt, solange das Dokument noch ein Entwurf ist, bevor der Nummernkreis eine Nummer vergeben hat.
  • Das Mapping liest ein Feld, das für Rechnungen gefüllt ist, aber nicht für Gutschriften, die aus einem anderen Nummernkreis oder einer anderen Spalte nummeriert werden.
  • Die Nummer ist in der Quelle vorhanden, aber das Mapping verweist auf die falsche Eigenschaft, sodass der Serialisierer ein leeres Element schreibt.
  • Ein Pfad für Vorschau- oder Testexporte überspringt den Schritt, der die Nummer reserviert.

So korrigieren Sie das Dokument

  1. Finden Sie die Stelle, an der das cbc:ID auf Wurzelebene befüllt wird, und prüfen Sie, welches Quellfeld es für jeden Dokumenttyp liest.
  2. Erzeugen Sie das XML erst, nachdem das Dokument ausgestellt und nummeriert wurde.
  3. Schreiben Sie die Nummer genau so, wie sie vergeben wurde. Ein Platzhalter käme an dieser Regel vorbei, da jeder Text genügt, aber der Käufer gleicht anhand dieses Werts ab.

Korrigierte Rechnung prüfen

Vorher und nachher

Dies sind Ausschnitte, keine vollständigen Dokumente. Die vollständigen synthetischen Dokumente, aus denen sie stammen, sind unten verlinkt.

Anfang der fehlerhaften Rechnung: Die Dokumentkennung ist ein leeres Element

<cbc:CustomizationID>urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0</cbc:CustomizationID>
<cbc:ProfileID>urn:fdc:peppol.eu:2017:poacc:billing:01:1.0</cbc:ProfileID>
<cbc:ID/>
<cbc:IssueDate>2026-09-08</cbc:IssueDate>
<!-- rest of the document omitted -->

Anfang der korrigierten Rechnung: Die Kennung enthält die Rechnungsnummer

<cbc:CustomizationID>urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0</cbc:CustomizationID>
<cbc:ProfileID>urn:fdc:peppol.eu:2017:poacc:billing:01:1.0</cbc:ProfileID>
<cbc:ID>EXAMPLE-INV-001</cbc:ID>
<cbc:IssueDate>2026-09-08</cbc:IssueDate>
<!-- rest of the document omitted -->

Nur der Inhalt des cbc:ID auf Wurzelebene unterscheidet sich: leer in der fehlerhaften Rechnung, EXAMPLE-INV-001 in der korrigierten. Das fehlerhafte Dokument meldet außerdem PEPPOL-EN16931-R008, weil Peppol nirgendwo im Dokument ein Element ohne Inhalt zulässt und das leere cbc:ID ein solches ist. Die Nummer einzutragen behebt beide Befunde.

Was der Validator gemeldet hat

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 UBL Invoice und CreditNote. In einer Gutschrift enthält dasselbe cbc:ID auf Wurzelebene die Gutschriftnummer, und ein leeres meldet dieselben zwei Regeln.
  • Eine Gutschrift kann außerdem die Nummer der Rechnung tragen, die sie korrigiert, in cac:BillingReference/cac:InvoiceDocumentReference/cbc:ID. Diese Referenz erfüllt diese Regel nicht, und diese Regel prüft sie nicht.

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-20.

Die offizielle Definition von BR-02 (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.