BR – Core rules of EN 16931
BR-02: invoice number (BT-1) missing
ErrorEN 16931 business rule (CEN)
Official message
[BR-02]-An Invoice shall have an Invoice number (BT-1).Source: CEN EN 16931, version 1.3.16
How to fix it
Write the final, unique invoice number into the ID element directly under the invoice root. Letters, digits and separators are allowed; the number must never repeat.
<ubl:Invoice>
<cbc:ID></cbc:ID>
<cbc:IssueDate>2026-09-01</cbc:IssueDate>
</ubl:Invoice><ubl:Invoice>
<cbc:ID>RE-2026-0142</cbc:ID>
<cbc:IssueDate>2026-09-01</cbc:IssueDate>
</ubl:Invoice>What the message means
The invoice has no invoice number, or the field is empty. The number is the invoice's unique identifier: without it the recipient cannot file it, pay it or refer to it, and VAT law requires it on every invoice anyway. An empty field or a lone space counts as missing.
Common causes
- The number is only assigned at posting time, but the XML file is generated before that.
- The field holds a placeholder such as "DRAFT" or just spaces.
- The ID element was mapped to the wrong field when exporting from the ERP system.
Frequently asked
May the invoice number contain letters?
Yes. The norm only requires a unique string. Sequential ranges with a prefix such as RE-2026-0142 are common and allowed.
Does BR-02 apply to credit notes too?
Yes. A credit note also needs its own unique number in BT-1; the number of the original invoice belongs in BT-25.
Fields concerned
- BT-1
Related rules
- BR-21
- BR-50
- BR-52
Check your invoice
The EN 16931 validator reports this rule with the line number and location – right in your browser, without upload.
Technical details
- UBL · Context (XPath)
/ubl:Invoice | /cn:CreditNote- UBL · Schematron test
normalize-space(cbc:ID) != ''- CII · Context (XPath)
/rsm:CrossIndustryInvoice- CII · Schematron test
normalize-space(rsm:ExchangedDocument/ram:ID) != ''
Explanation written on 13 September 2026