π©πͺ XRechnung Guide β Germany's E-Invoicing Standard Explained
Key Facts: XRechnung
- Format Type: CIUS of EN 16931 (supports both UBL 2.1 and CII syntax)
- Governing Standard: EN 16931 with German-specific business rules
- Syntax: XML β either UBL 2.1 or UN/CEFACT CII
- Current Version: XRechnung 3.0.x
- Maintained By: KoSIT (Koordinierungsstelle fΓΌr IT-Standards)
- B2G Mandatory: Since November 27, 2020
What Is XRechnung?
XRechnung is Germany's national e-invoicing standard. It is a CIUS β a Core Invoice Usage Specification β of the European standard EN 16931. In plain terms, this means XRechnung takes the EU's baseline e-invoicing requirements and adds Germany-specific rules on top. These additional rules ensure that invoices contain all the information German tax authorities and government agencies need.
Unlike a completely separate format, XRechnung is built on the same foundation as other European e-invoicing standards. It supports two XML syntaxes: UBL 2.1 (the same syntax used by Peppol BIS 3.0) and CII (Cross Industry Invoice, the same syntax used by ZUGFeRD). Both are equally valid β the German government accepts either syntax for XRechnung submissions.
The name "XRechnung" literally translates to "X-Invoice" in German. It was created to implement the EU Directive 2014/55/EU, which requires all EU member states to accept structured electronic invoices for public procurement. Germany chose to go beyond the minimum requirements and define its own stricter specification, ensuring that invoices submitted to German government agencies contain consistent, high-quality data.
When to Use XRechnung
XRechnung is required or relevant in these scenarios:
- B2G (Business-to-Government): Mandatory since November 27, 2020 for all suppliers to German federal agencies. Invoices must be submitted through the ZRE (Zentrale Rechnungseingangsplattform) or OZG-RE portals. Most German state (LΓ€nder) and municipal governments also require XRechnung.
- B2B (Business-to-Business): Germany's B2B e-invoicing mandate is being phased in. From January 2025, all businesses must be able to receive e-invoices in EN 16931 formats (including XRechnung). From January 2027, businesses with turnover above β¬800,000 must send e-invoices. From January 2028, the sending requirement extends to all businesses.
For a complete timeline and compliance steps, see our Germany e-invoicing guide.
If you are invoicing a German government agency, XRechnung is the only accepted format. For B2B transactions, you can use any EN 16931-compliant format (XRechnung, ZUGFeRD, or Peppol BIS 3.0), but XRechnung is the most widely understood standard in the German market.
Technical Structure
An XRechnung invoice is an XML file that follows either the UBL 2.1 or CII schema, plus additional German business rules. The document contains:
- Invoice metadata: Invoice number, issue date, due date, currency, and the Leitweg-ID (routing identifier for government invoices)
- Seller information: Company name, address, tax registration numbers (Steuernummer and/or USt-IdNr.), and contact details
- Buyer information: Recipient details including the Leitweg-ID for B2G invoices
- Payment details: Payment method, bank account (IBAN), payment terms, and early payment discounts (Skonto) if applicable
- Tax breakdown: VAT amounts by rate, including support for German-specific tax categories
- Line items: Individual products or services with quantities, prices, and item-level tax information
The Leitweg-ID is a key XRechnung-specific requirement for B2G invoices. This is a routing identifier that tells the government portal which department or agency should receive the invoice. It follows the format 04011000-1234512345-06 and is provided by the contracting government entity. Without a valid Leitweg-ID, B2G invoices will be rejected.
XRechnung adds approximately 30 additional business rules beyond the base EN 16931 specification, covering things like mandatory seller contact information, specific payment means codes, and restrictions on certain optional fields.
How XRechnung Compares to Other Formats
- vs. Peppol BIS 3.0: Both use UBL 2.1, but XRechnung adds stricter German rules. A valid Peppol BIS 3.0 invoice is not automatically a valid XRechnung β it may lack the Leitweg-ID or violate a German-specific business rule. However, an XRechnung invoice using UBL syntax can often be sent via the Peppol network.
- vs. ZUGFeRD: ZUGFeRD is a hybrid PDF/XML format that embeds CII XML inside a PDF/A-3 file. ZUGFeRD at the "XRechnung" profile level contains an XRechnung-compliant CII invoice. The key difference is the PDF wrapper β ZUGFeRD gives you both a human-readable document and machine-readable data, while XRechnung is pure XML.
- vs. Factur-X: Factur-X is technically identical to ZUGFeRD (same CII XML, same PDF/A-3 approach) but is the name used in France and francophone countries. XRechnung is Germany-specific; Factur-X is the Franco-German equivalent used outside Germany.
How InvoicePeppol Helps
InvoicePeppol converts your PDF invoices into XRechnung-compliant XML. Our AI extracts all required fields β including handling Leitweg-IDs and German tax specifics β and generates validated output that passes KoSIT's validation rules. You can download the XML and submit it directly to ZRE or OZG-RE.
Frequently Asked Questions
Should I use UBL or CII syntax for XRechnung?
Both are equally valid and accepted by all German government portals. UBL 2.1 is more common internationally and is the syntax used by Peppol, so if you also invoice non-German entities, UBL may be more practical. CII is used by ZUGFeRD, so if you work with hybrid PDF/XML invoices, CII may be more natural. InvoicePeppol generates UBL-based XRechnung by default.
What is a Leitweg-ID and where do I get one?
A Leitweg-ID is a routing identifier used by German government portals to direct your invoice to the correct department. It is provided by the government entity you are invoicing β typically included in the purchase order or contract. For B2B invoices, a Leitweg-ID is not required. The format is a series of numbers separated by hyphens, such as 04011000-1234512345-06.
Can I use ZUGFeRD instead of XRechnung for German B2G?
Yes, but only if the ZUGFeRD file uses the "XRechnung" profile, which means the embedded CII XML fully complies with XRechnung rules. A ZUGFeRD file at the "Basic" or "EN 16931" profile does not satisfy the XRechnung requirement. The German government portals will validate the XML content regardless of the PDF wrapper.
Is XRechnung accepted outside Germany?
XRechnung is a CIUS of EN 16931, so any system that accepts EN 16931 invoices should be able to process it. However, the German-specific fields (like Leitweg-ID) are irrelevant outside Germany. For cross-border invoicing, Peppol BIS 3.0 is usually the better choice.
Ready to convert your invoices?
InvoicePeppol converts your PDF invoices to compliant e-invoicing XML in seconds. AI-powered extraction, manual review, and instant download.