errorbusinessDEUEN 16931

DE-R-009:The element "Buyer post code" (BT-53) shall be provided.

Fix: This requires user input to resolve. Provide the correct value for `cbc:PostalZone` (BT-53). Provide the required value in the free validator.

Buyer postal code is missing. German invoices must include the buyer's postal code (BT-53).

Severity
Fatal
Rule set
EN 16931
Country
DEU
Fix type
INPUT REQUIRED
Confidence
80%
Category
structural

Engine Classification

Business data required · Explicit input workflow · No assumptions made

Required input: IBAN

What is DE-R-009?

DE-R-009 is a fatal validation rule defined in the EN 16931 specification (DEU national rules). It validates the ID element under PayeeFinancialAccount in the UBL invoice XML.

When this rule fires, the invoice is rejected by Peppol access points and never reaches the buyer.

Target path: //cac:PaymentMeans/cac:PayeeFinancialAccount/cbc:ID

Why This Error Matters

Invoice will be rejected by German XRechnung validators. Germany has additional mandatory fields beyond EN16931 baseline, including seller contact details, complete addresses, and buyer reference (Leitweg-ID).

DE-R-009 is a hard failure — the invoice must be corrected and re-sent before it can reach the recipient.

Validator Behavior

  • ·Causes invoice rejection
  • ·Rejected by XRechnung endpoints
  • ·Error returned: DE-R-009
  • ·Specification: EN 16931

How to Fix It

1.

Locate the field

Check cbc:ID at //cac:PaymentMeans/cac:PayeeFinancialAccount/cbc:ID. The current value does not meet the rule requirements for DE-R-009.

2.

Set the correct value

This requires user input to resolve. Provide the correct value for `cbc:PostalZone` (BT-53).

3.

Re-validate your invoice

Upload the corrected invoice to confirm DE-R-009 is resolved.

Before / After

Failing XML
<cac:PostalAddress>
  <cbc:PostalZone>INVALID_CODE</cbc:PostalZone>
</cac:PostalAddress>
Corrected XML
<cac:PostalAddress>
  <cbc:PostalZone>VALID_CODE</cbc:PostalZone>
</cac:PostalAddress>

Technical Reference

XPath//cac:PaymentMeans/cac:PayeeFinancialAccount/cbc:ID
SpecEN 16931
Operationset_value
StrategyAdd seller IBAN for XRechnung payment means (requires user input)

Common Causes

  • ·German invoice missing buyer post code
  • ·BT-53 Buyer post code element empty or absent
  • ·cbc:PostalZone in buyer address not provided
  • ·Buyer postal address incomplete for XRechnung
  • ·German validation requires buyer postal code

Seeing this in production? The API handles DE-R-009 automatically. See the fix response →

Frequently Asked Questions

Buyer postal code is missing. German invoices must include the buyer's postal code (BT-53).

This requires user input to resolve. Provide the correct value for `cbc:PostalZone` (BT-53). You can also use Invoice Navigator's compliance engine to correct this automatically in your pipeline.

Yes, DE-R-009 is a critical error that will cause invoice rejection. It must be fixed before submission.

Many instances of DE-R-009 can be automatically corrected using Invoice Navigator's compliance engine. The fix is applied in your pipeline with full audit evidence.

Related Content

Last updated: 14 April 2026

Share this guide:

Validate your invoice

Drop your XML here to check for DE-R-009

Fix DE-R-009 with guided input

Upload your invoice and we'll ask for the missing data, then apply a safe, auditable fix.