BR-DE-4
XRechnung requires the seller's post code, and it is missing.
ErrorXRechnungUBLCII
Why it happens
Post code absent from the supplier address, often because the source system keeps it in a combined address line.
How to fix it
Set cac:PostalAddress/cbc:PostalZone (UBL) or ram:PostalTradeAddress/ram:PostcodeCode (CII). Split combined address strings before conversion.
The official rule
XRechnung, official German wordingDas Element "Seller post code" (BT-38) muss übermittelt werden.
Our English rendering: The element "Seller post code" (BT-38) must be provided.
Technical detail — where the rule is evaluated and the exact test
| Syntax | Context and assertion |
|---|---|
| UBL | /ubl:Invoice/cac:AccountingSupplierParty/cac:Party/cac:PostalAddress | /cn:CreditNote/cac:AccountingSupplierParty/cac:Party/cac:PostalAddress |
cbc:PostalZone[boolean(normalize-space(.))] | |
| CII | /rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTradeParty/ram:PostalTradeAddress |
ram:PostcodeCode[boolean(normalize-space(.))] |
Check your own invoice
Paste or drop your UBL or CII file into the free validator. It runs the official EN 16931 ruleset plus the German XRechnung layer and lists every rule that fires, BR-DE-4 included — no signup, no limit.
Validate an e-invoice freeFixing the data at source instead? The CSV converter builds a compliant invoice from a spreadsheet export.