BR-02: missing invoice number
Peppol BIS Billing 3.0.21 · UBL
Original rule text
[BR-02]-An Invoice shall have an Invoice number (BT-1).
normalize-space(cbc:ID) != ''BR-02 is a fatal rule in the business layer of Peppol BIS Billing 3.0.21 · UBL. An invoice that breaks it is rejected. It refers to BT-1.
What this rule requires
The rule requires that an invoice or credit note has an invoice number in BT-1. In UBL, this is the cbc:ID element inside /ubl:Invoice or /cn:CreditNote; in CII, it is ram:ID inside rsm:ExchangedDocument. The value must not be empty or whitespace-only, because the test uses normalize-space().
How to fix
Provide a non-empty invoice number. In UBL, set /ubl:Invoice/cbc:ID (or /cn:CreditNote/cbc:ID) to the invoice number, and in CII set /rsm:CrossIndustryInvoice/rsm:ExchangedDocument/ram:ID. If the element is present but contains only spaces, replace it with an actual identifier. The rule does not specify a format or length; any non-whitespace value satisfies it.
Guidance on this rule. The original text above is authoritative.
How to resolve BR-02
The invoice needs its document number in the top-level cbc:ID element. This is business term BT-1.
A number on an invoice line, order reference, or attachment does not fill the document-number field. The presence check also rejects whitespace-only values. Export mappings sometimes populate a reference while leaving the invoice header empty.
Map the invoice number from your source system into the document header, then export again. Use the identifier assigned to the actual invoice; the synthetic value below is only an illustration.
XML examples
These synthetic UBL fragments illustrate this rule only. Place the field directly under the Invoice or CreditNote root, using the UBL common basic components namespace for cbc. They are not complete invoices.
<cbc:ID> </cbc:ID><cbc:ID>INV-2026-001</cbc:ID>Run the complete invoice through the Peppol invoice validator after correcting it. Supplying this field does not establish that the complete document passes all rules.
Related header checks
Reference: official Peppol BR-02 definition. Guidance checked against that definition on . The stored assertion above identifies the rule in this archived version; the linked documentation may advance to a newer release.
Where to go next
No published Peppol BIS Billing UBL release comparison lists a change to BR-02.
Validate an invoice against these rules · All release changes