Skip to content

BR-DE – XRechnung

BR-DE-4: seller post code (BT-38) missing

ErrorXRechnung business rule (KoSIT)

The rule's own wording

[BR-DE-4] Das Element "Seller post code" (BT-38) muss übermittelt werden.

Source: KoSIT XRechnung, version 3.0.2 (Schematron 2.6.0)

Meaning of the rule

The invoice issuer's address contains no post code. For XRechnung it is part of the mandatory address, so that the recipient can reach the issuer by post and the tax office can assign the invoice. The error is often noticed only by the recipient, because the PDF of the invoice shows the post code while the XML does not. So check the master data and the field mapping of your software, not just the printed invoice.

The fix in the XML

Enter the post code in the seller's address: in UBL cbc:PostalZone under cac:PostalAddress, in CII ram:PostcodeCode in the seller's PostalTradeAddress. The value is text, so leading zeros are kept.

Before – invalid
<cac:PostalAddress>
  <cbc:StreetName>Am Hafen 3</cbc:StreetName>
  <cbc:CityName>Hamburg</cbc:CityName>
  <cac:Country><cbc:IdentificationCode>DE</cbc:IdentificationCode></cac:Country>
</cac:PostalAddress>
After – corrected
<cac:PostalAddress>
  <cbc:StreetName>Am Hafen 3</cbc:StreetName>
  <cbc:CityName>Hamburg</cbc:CityName>
  <cbc:PostalZone>20457</cbc:PostalZone>
  <cac:Country><cbc:IdentificationCode>DE</cbc:IdentificationCode></cac:Country>
</cac:PostalAddress>

Questions and answers

Does BR-DE-4 apply to a seller abroad without a post code system?

Yes, the rule has no exception. Enter the value the local postal service uses, or the usual equivalent there.

Is it enough if the post code stands in the city field?

No. The check only looks at the post code element; a value in the city field does not count and the invoice stays invalid.

Other typical causes

  • The post code sits in the same master-data field as the city and is not exported separately.
  • The field mapping in the software's XML export is missing.
  • For a foreign address the post code was considered dispensable.

EN 16931 fields

  • BT-38
  • BG-5

See also

Check your invoice

The XRechnung validator reports this rule with the line number and location – right in your browser, without upload.

Open the XRechnung validator

The rule in detail
UBL · Context (XPath)
/ubl:Invoice/cac:AccountingSupplierParty/cac:Party/cac:PostalAddress | /cn:CreditNote/cac:AccountingSupplierParty/cac:Party/cac:PostalAddress
UBL · Schematron test
cbc:PostalZone[boolean(normalize-space(.))]
CII · Context (XPath)
/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTradeParty/ram:PostalTradeAddress
CII · Schematron test
ram:PostcodeCode[boolean(normalize-space(.))]

Explanation written on 14 September 2026