What does BR-4 mean?
An Invoice shall have an Invoice type code (BT-3). It is one of the mandatory fields of the European standard EN 16931; without it the invoice is structurally incomplete and gets rejected.
Common causes of BR-4
- The mandatory element is missing entirely from the structured XML.
- The value appears only in the visible PDF layout, not in the XML.
- The element was sent empty.
How to fix BR-4
- Find the faulty spot in the XML. Open the XML of the invoice and go to field BT-3 along this XPath:
//rsm:ExchangedDocument/ram:TypeCode - Apply the fix. Add the invoice type code (BT-3) in 'ram:ExchangedDocument/ram:TypeCode', for example '380' (invoice) or '381' (credit note).
- Validate again. Save the file and validate it again to check that BR-4 is no longer reported.
Add the invoice type code (BT-3) in 'ram:ExchangedDocument/ram:TypeCode', for example '380' (invoice) or '381' (credit note).
//rsm:ExchangedDocument/ram:TypeCodeBefore / after: the XML example
This is the spot in question before and after the fix (Cross Industry Invoice, ZUGFeRD/Factur-X).
<rsm:ExchangedDocument>
<ram:ID>RE-2026-001</ram:ID>
<!-- ram:TypeCode fehlt -->
</rsm:ExchangedDocument>
<rsm:ExchangedDocument>
<ram:ID>RE-2026-001</ram:ID>
<ram:TypeCode>380</ram:TypeCode>
</rsm:ExchangedDocument>
Frequent questions about BR-4
How do I fix BR-4?
Related error codes
Check BR-4 automatically
Instead of digging through the XML by hand you can validate your ZUGFeRD or XRechnung file online – upload the PDF or the XML and you get every error with rule ID, affected field, fix and XPath, as a readable report or as JSON through the API.