← Back to docs

XRechnung & EN 16931 Reference

XRechnung & EN 16931 Reference

This reference covers the e-invoicing standards supported by Postscale Invoices, the relationship between them, and practical details for ensuring compliance.

Standards Hierarchy

EN 16931 (European Norm)
├── XRechnung (German CIUS)
│   ├── UBL 2.1 syntax
│   └── CII D16B syntax
└── ZUGFeRD / Factur-X (Hybrid PDF+XML)
    ├── Minimum profile
    ├── Basic profile
    ├── Comfort profile (≈ EN 16931)
    └── Extended profile

EN 16931 is the European standard defining the semantic data model for e-invoices. XRechnung is Germany's Core Invoice Usage Specification (CIUS) that adds German-specific rules on top of EN 16931. ZUGFeRD embeds a CII XML invoice inside a PDF/A-3 document.

XRechnung Profiles

Postscale supports both syntaxes of XRechnung:

ProfileXML Root ElementUse Case
xrechnung-ubl<Invoice> (UBL 2.1)Most common for B2G, interoperable across EU
xrechnung-cii<CrossIndustryInvoice> (CII D16B)Alternative syntax, same semantic content

Both produce equivalent invoices that satisfy EN 16931 and XRechnung validation rules. UBL is recommended as the default.

Required Fields (XRechnung)

XRechnung mandates several fields beyond the EN 16931 core:

Business TermIDXRechnung RuleNotes
Seller contact nameBT-41BR-DE-02Contact person or department
Seller contact phoneBT-42BR-DE-03Must include country code
Seller contact emailBT-43BR-DE-04Required for all invoices
Buyer referenceBT-10BR-DE-15Leitweg-ID for B2G invoices
Payment termsBT-20BR-DE-18Text description of payment terms
Invoice type codeBT-3BR-DE-17Must use UNTDID 1001 subset (380, 384, 389, 381)

Leitweg-ID

The Leitweg-ID is a routing identifier used in German B2G (business-to-government) invoicing. It tells the Peppol/ZRE network where to deliver the invoice.

Format: [Grobadressat]-[Feinadressat]-[Prüfziffer]

Example: 991-12345-67

  • 991 — coarse routing (federal/state/municipal authority code)
  • 12345 — fine routing (department or cost center)
  • 67 — check digit

For B2B invoices, the Leitweg-ID is not required. Set the buyer reference (BT-10) to a purchase order number or similar identifier instead.

Tax Categories

Common tax category codes used in German invoicing:

CodeMeaningTypical Rate
SStandard rate19%
SReduced rate7%
EExempt0% (with exemption reason)
ZZero rated0%
AEReverse charge0% (intra-community)
KIntra-community supply0%

Invoice Type Codes

CodeMeaning
380Commercial invoice
384Corrected invoice
389Self-billed invoice
381Credit note

ZUGFeRD Profiles

ZUGFeRD (and its French counterpart Factur-X) embeds structured XML inside a PDF:

ProfileEN 16931 CompliantUse Case
MinimumNoBasic metadata only
BasicNoSimple invoices
ComfortYesFull EN 16931 compliance
ExtendedYes (superset)Additional fields beyond EN 16931

For German compliance, use Comfort or Extended profiles.

Germany's B2B Mandate Timeline

DateRequirement
January 1, 2025All businesses must be able to receive e-invoices
January 1, 2027Businesses with >€800k revenue must send e-invoices
January 1, 2028All businesses must send e-invoices

Postscale Invoices helps you comply with both the receiving (inbound processing) and sending requirements.