Definition

XRechnung is the German standard for purely XML-based electronic invoices, published by the Coordination Office for IT Standards (KoSIT). It specifies the European standard EN 16931 for invoicing public-sector clients in Germany.

In simple terms

An XRechnung is a pure data file without a PDF view: it consists exclusively of structured XML that recipient systems process automatically. To make it readable for humans, software is needed to display the data.

Why do I need XRechnung?

Since 27 November 2020, invoices to German federal authorities must generally be submitted electronically (federal e-invoicing ordinance); XRechnung is the authoritative standard for this. At state level, partly different rules and deadlines apply. If you supply public-sector clients in Germany, the format is therefore usually unavoidable.

The topic is also gaining weight in B2B: since 1 January 2025, businesses in Germany must be able to receive e-invoices in domestic B2B transactions (Growth Opportunities Act); transition periods apply to sending. As an EN 16931-compliant format, XRechnung meets these requirements – as does the hybrid ZUGFeRD format, which additionally contains a PDF view. Which variant makes sense depends on the recipients: public-sector clients expect XRechnung, business customers often accept both.

Practical relevance for shop owners

For online merchants, the key question is how XRechnung invoices are created efficiently: manual entry in a web form works for individual invoices but does not scale. It is better to automate generation directly in the shop or ERP system – for example via an ERP integration that converts order data into the invoice format. The so-called routing ID (Leitweg-ID) uniquely addresses the public-sector recipient. Depending on the recipient, transmission takes place via e-mail, the federal invoice submission platforms (ZRE and OZG-RE) or the Peppol network – the latter is covered in our article on Peppol and e-invoicing for B2B shops.

Typical mistakes during rollout

In our experience, these problems occur most frequently when switching to XRechnung:

  • PDF confused with e-invoice: A simple PDF invoice sent by e-mail no longer qualifies as an e-invoice under the new German rules – structured XML data is required.
  • Missing or incorrect routing ID: Without a correct Leitweg-ID, the public-sector recipient cannot assign the invoice and will reject it.
  • Incomplete mandatory fields: If required details such as order number or bank account are missing, the invoice fails the recipient's validation.
  • Outdated standard version: KoSIT updates XRechnung regularly; systems must generate invoices against the currently valid version.
  • Inbound side forgotten: The obligation also covers receiving – incoming e-invoices must be processable and archived electronically.

What to look out for

Validate outgoing invoices against the currently valid XRechnung version before sending, instead of waiting for the recipient's feedback. For archiving: the XML is the original and must be stored electronically and immutably in line with German GoBD requirements – a printout is not sufficient. Also clarify which formats your customers actually expect, and set up downstream processing in your accounting, for example via a DATEV integration. Our service page ZUGFeRD & XRechnung shows how e-invoices can be generated directly from your shop.

Generating e-invoices from your shop

Shop systems such as Shopware can be extended to generate and send invoices automatically as XRechnung or ZUGFeRD – including routing ID and validation. Get in touch via our service page ZUGFeRD & XRechnung.