Attestwire › Rule reference › BR-DE-9

BR-DE-9 XRechnung requires the buyer post code

noun · XRechnung · fatal · BT-53

Your invoice was refused because your customer’s address has no post code. An XRechnung needs a city and a post code for both seller and buyer, while core EN 16931 is satisfied by the country code alone. Add the post code to the customer record, as text. In the standard the field is BT-53, and BR-DE-9 is the rule that requires it.

Diese Regel auf Deutsch: BR-DE-9 — auf Deutsch erklärt.

Business term
BT-53 — Buyer post code
Severity
fatal
Applies to
xrechnung-ubl, xrechnung-cii

The fix

Set buyer.address.postalCode, for example "10115", as a string, so a leading zero is kept.

What the rule requires

Set the buyer post code (BT-53), as a string. Its partner is BR-DE-8 for the city.

For a customer abroad, copy the format used there unchanged. The rule checks that something is present, not that it follows the German five-digit pattern.

In this library the field is buyer.address.postalCode.

Das Element "Buyer post code" (BT-53) muss übermittelt werden.

BR-DE-9 — KoSIT XRechnung Schematron 2.6.0 (XRechnung 3.0), XRechnung-UBL-validation.sch

A passing value

the shape this field expects
"postalCode": "10115"

Why it exists

As with the city: the invoice must carry the full address of the recipient of the supply, and a German address without a post code is not complete. The check reports the gap while you can still fix it yourself.

What the library returns

The full error returned by @attestwire/en16931. It includes the rule ID, affected field and suggested correction. Developers can use this object in their application:

TeachingError
{
  "rule": "BR-DE-9",
  "field": "BT-53",
  "severity": "fatal",
  "message": "XRechnung requires the element \"Buyer post code\" (BT-53). Core EN 16931 only requires the country code, but the German CIUS additionally makes city and post code mandatory on both parties so that the address is deliverable, not merely jurisdictional.",
  "fix": "Set buyer.address.postalCode.",
  "example": "\"postalCode\": \"10115\"",
  "xpath": "/ubl:Invoice/cac:AccountingCustomerParty/cac:Party/cac:PostalAddress/cbc:PostalZone",
  "docsUrl": "https://attestwire.com/rules/BR-DE-9"
}

xpath is always a UBL path. On a CII invoice, look for the matching CII field instead.

How our check differs

Presence only; the format is not checked. City and post code are checked separately, so one of the two is not enough. With no buyer address at all, the finding is BR-10.

See also: BR-DE-8 — the buyer city; BR-DE-4 — the same requirement for the seller.