Skip to main content

E-RECHNUNG

XRechnung: the standard behind German e-invoicing

XRechnung is not a piece of software and not a file you can buy; it is Germany’s official specification of what an electronic invoice must say and how. Pure XML, no visual layer, mandatory territory in public-sector invoicing, and one of the two formats that dominate the B2B mandate. This guide explains what the standard covers, where it is required, and how creating and reading XRechnung invoices works in practice.

Last updated: September 16, 2026

What XRechnung actually is

Formally, XRechnung is the German Core Invoice Usage Specification (CIUS) of the European norm EN 16931: it takes the norm’s semantic data model, the Business Terms from invoice number through line items to VAT breakdown, and pins down how they are used for invoices to and between German parties. The standard is operated by KoSIT, the Koordinierungsstelle für IT-Standards, on behalf of the IT-Planungsrat, the federal-state body that coordinates public-sector IT. Version 3.0.2 is current as of September 2026, a maintenance release of the 3.0 line.

An XRechnung invoice is a single XML file in one of the two syntaxes the European norm mandates: UBL 2.1 or UN/CEFACT CII. Senders choose the syntax; a compliant receiver must accept both. There is deliberately no human-readable layer, no embedded PDF, no styling: the invoice is the data record, and anything a person sees is produced by a viewer. That design makes XRechnung the cleanest format for fully automated processing, and the least convenient one for a colleague who just wants to glance at an invoice.

XRechnung also defines an Extension concept for cases the core profile cannot carry, adding elements or code-list values beyond EN 16931-1 for specific German requirements. For most businesses the core profile is all they will ever see; the point to remember is that "XRechnung" names a specification with versions and rules, not a product.

Where XRechnung is mandatory: the public sector

The hard obligation sits in B2G. Since November 27, 2020, suppliers to federal authorities must invoice electronically under the E-Rechnungsverordnung, and XRechnung is the reference format for doing so. Federal invoices are submitted through the ZRE and OZG-RE portals or over the Peppol network, and the German states run their own, closely related regimes for state and municipal customers.

Addressing is the part that trips up first-time suppliers: every public-sector customer is identified by a Leitweg-ID, a routing identifier you must carry in the invoice as the buyer reference. The Leitweg-ID comes from the customer, typically in the contract documents, and an invoice without the correct one is rejected before any human sees it. When submitting over Peppol, the receiver address is the same Leitweg-ID with the scheme prefix 0204 in front.

In domestic B2B, XRechnung is not prescribed, but it is one of the formats that satisfy the e-invoicing mandate of § 14 UStG, since it conforms to EN 16931 by construction. High-volume, system-to-system invoicing relationships tend to prefer it precisely because there is no PDF layer to tempt anyone into manual handling.

XRechnung at a glance

AspectWhat applies
GovernanceOperated by KoSIT on behalf of the IT-Planungsrat; versioned specification with announced validity periods
Current version3.0.2 (as of September 2026)
SyntaxesUBL 2.1 or UN/CEFACT CII; receivers must handle both
Human-readable layerNone by design; viewers render the XML for people
B2GReference format; federal suppliers obliged since November 27, 2020 (E-Rechnungsverordnung), submitted via ZRE / OZG-RE / Peppol with a Leitweg-ID
B2BOne of the compliant format choices under the § 14 UStG mandate

Creating and validating XRechnung invoices

Almost nobody writes XRechnung XML by hand. The realistic paths are the ones the creating-e-invoices guide walks through in detail: the export function of your invoicing or ERP software, a dedicated e-invoicing tool, manual capture in the federal portals for low volumes, or a Peppol Access Point for scale. What matters when configuring any of them is the version and the buyer reference: exports should target the current XRechnung version, and public-sector invoices must carry the customer’s Leitweg-ID.

Compliance is mechanically testable, and you should test it before your customers do. KoSIT provides validation tooling for the standard, and the BMF letter of October 15, 2025 gives the error taxonomy: Formatfehler make the file no e-invoice at all, Geschäftsregelfehler violate the norm’s arithmetic and consistency rules, Inhaltsfehler are formally valid but factually wrong. A validation step in the outbound pipeline catches the first two classes automatically.

Reading XRechnung invoices on the receiving side

Since January 1, 2025, any German supplier can send you an XRechnung without asking, and the file that arrives is XML with no picture attached. Opening it in a text editor is technically possible and practically useless for accounting. A receiving process needs three capabilities: parse both syntaxes, validate against the norm, and map the Business Terms into whatever structure your ERP or accounting system books from.

That mapping is exactly what Talonic’s invoice processing does, for XRechnung and for everything else in the same inbox: the free Peppol e-invoice extractor shows the field model on a real file in the browser, and the production pipeline resolves XRechnung, ZUGFeRD, Peppol invoices, PDFs, and scans into one schema-validated output with confidence and provenance per field, processed on EU infrastructure in Germany.

Frequently asked questions

Is XRechnung mandatory for B2B invoices?+

No. The B2B mandate of § 14 UStG requires a structured format conforming to EN 16931, and XRechnung is one compliant choice among several; qualifying ZUGFeRD profiles and Peppol BIS Billing 3.0 satisfy it too. Mandatory XRechnung territory is public-sector invoicing, where the E-Rechnungsverordnung and the state regimes make it the reference format.

What is the difference between XRechnung and EN 16931?+

EN 16931 is the European norm: the semantic model every compliant e-invoice implements. XRechnung is Germany’s Core Invoice Usage Specification of that norm, pinning down how the model is applied for German invoicing. Every XRechnung is EN 16931-compliant; XRechnung adds the German usage rules on top.

What is a Leitweg-ID and do I need one?+

The Leitweg-ID is the routing identifier of a German public-sector invoice recipient; it goes into the invoice as the buyer reference and steers the invoice to the right authority. You need your customer’s Leitweg-ID whenever you invoice the public sector; purely B2B invoicing does not use one.

Which XRechnung version is current?+

Version 3.0.2, as of September 2026, a maintenance release of the 3.0 line operated by KoSIT. Version changes are announced with validity dates, so check your software’s export setting against the KoSIT announcements rather than assuming.

How can I open and check an XRechnung file?+

Any text editor shows the raw XML, which is enough to confirm what arrived but not to work with it. Free viewers render it readably, and the free Peppol e-Invoice Extractor linked below reads an e-invoice in the browser and returns seller, buyer, line items, VAT breakdown, and totals as structured fields.

Sources

Primary sources, last checked September 2026. Statutory texts and BMF publications are authoritative; where guidance rests on the BMF letter of 15 October 2025, the text says so.

This guide is general information for businesses, compiled from the cited official sources. It is not legal or tax advice; for decisions about your own obligations, consult your tax advisor (Steuerberater).

One inbox, every invoice format, one schema

The mandate makes structured formats the norm, but your accounts payable will keep receiving paper scans and plain PDFs beside XRechnung and ZUGFeRD for years. Talonic normalizes that mixed inflow into one schema-validated output: typed fields, a confidence score, and provenance on every value, processed on EU infrastructure in Germany. Send a sample batch and judge the output field by field.