Skip to main content

BR-DE-9 Buyer post code must be provided

Under the German XRechnung profile and German tax legislation (§ 14 UStG), the postal address of the buyer (BG-8) must contain a postal code (BT-53). For public procurement invoices in Germany, an exact postal code is essential to differentiate between different regional offices, schools, police stations, or municipal branches of the contracting authority.

Problem Description

ERROR

German XRechnung rule (KoSIT, BR-DE) · XRechnung 3.0

Interactive pipeline

Click a stage to see what it checks, or type a rule ID to light up the stage that reports it.

Try:

BR-DE-9 XRechnung rule (Germany)

Reported in stage 3: National rules (CIUS).

Level error: the report recommends rejecting the invoice.

Stage 3 · What it checks

  • The specification identifier in BT-24 selects the rule set, for example XRechnung 3.0 or Peppol BIS Billing 3.0.
  • XRechnung adds the German BR-DE rules: buyer reference (BT-10), seller contact, payment instructions.
  • Peppol adds PEPPOL-EN16931 and country rules. XRechnung applies some PEPPOL-EN16931 rules too.

Example codes

Typical fix

Fill the fields the rule set requires in your master data, such as the Leitweg-ID in BT-10 or the seller contact.

A validator checks an e-invoice in stages. First the file must be well-formed XML that matches the UBL or CII schema (XSD). Then the EN 16931 business rules run: BR core rules, BR-CO calculations, BR-CL code lists, BR-DEC decimals and VAT-category rules such as BR-S. Next come the national or network rules that BT-24 selects: BR-DE for XRechnung, PEPPOL-EN16931 for Peppol BIS Billing. The report lists every failed rule: one error means reject, warnings alone still mean accept. BR-DE-9: XRechnung rule (Germany), reported in the stage “National rules (CIUS)”. Rule sets: KoSIT validator 1.6.3 with the XRechnung configuration of 31 Aug 2026 (EN 16931 artefacts 1.3.16), Peppol BIS Billing 3.0.21.

Context and Significance

Missing buyer post codes fail rule BR-DE-9. German public invoice clearing hubs require valid postal codes for automated invoice routing to the relevant accounting authority.

Solution

In your customer master data, ensure the postal code field is completed on the buyer profile. In UBL 2.1 syntax, populate <cbc:PostalZone> within <cac:AccountingCustomerParty><cac:Party><cac:PostalAddress>. In UN/CEFACT CII syntax, populate <ram:PostcodeCode> within <ram:BuyerTradeParty><ram:PostalTradeAddress>. Do not embed the postal code into the street name or city name fields.

Quick actions

Valid Examples

  • Buyer postal address with BT-53 = "20095" and BT-52 = "Hamburg"
  • Buyer postal address with BT-53 = "80331" and BT-52 = "München"

Invalid Examples

  • Buyer postal address specifying street and city but omitting cbc:PostalZone / ram:PostcodeCode
  • Buyer postal zone element left as empty tag (<cbc:PostalZone/>)

Code Examples

Valid XML
<cac:PostalAddress>
  <cbc:StreetName>Poststraße 12</cbc:StreetName>
  <cbc:CityName>Hamburg</cbc:CityName>
  <cbc:PostalZone>20354</cbc:PostalZone>
  <cac:Country><cbc:IdentificationCode>DE</cbc:IdentificationCode></cac:Country>
</cac:PostalAddress>
Invalid XML
<cac:PostalAddress>
  <cbc:StreetName>Poststraße 12</cbc:StreetName>
  <cbc:CityName>Hamburg</cbc:CityName>
  <cac:Country><cbc:IdentificationCode>DE</cbc:IdentificationCode></cac:Country>
</cac:PostalAddress>

Affected Fields

Validation Tools