Editorial illustration of Germany's end-to-end e-invoicing compliance guide for the germany xrechnung guide guide
    Tax and Compliance

    XRechnung Guide: Germany's B2G E-Invoice Standard Explained (2026)

    •Updated: •
    11 min read

    Tax & Compliance Series

    This guide is part of a comprehensive series. Explore all 202 topics:

    What Is XRechnung?

    XRechnung is Germany's national standard for electronic invoicing to public sector entities. It is a pure XML format — unlike ZUGFeRD, there is no human-readable PDF component.

    XRechnung is Germany's national standard for electronic invoicing to public sector entities. It is a pure XML format — unlike ZUGFeRD, there is no human-readable PDF component. XRechnung invoices are processed entirely by machines, making them ideal for automated government procurement workflows.

    The format was developed by KoSIT (Koordinierungsstelle für IT-Standards) and is mandatory for all invoices to German federal government agencies since November 2020. Most German state governments (Länder) have adopted the same requirement, though some accept ZUGFeRD with an XRechnung profile as an alternative.

    When Is XRechnung Required?

    XRechnung is mandatory whenever you invoice a German government entity:

    XRechnung is mandatory whenever you invoice a German government entity:

    • Federal agencies — mandatory since November 27, 2020 for all invoices above €1,000
    • State governments (Länder) — most states have adopted similar mandates, though timelines vary. Check your specific Bundesland.
    • Municipalities — adoption is ongoing; many larger municipalities already require XRechnung

    For B2B transactions between private companies, XRechnung is not required — but Germany's 2025 e-invoice obligation means businesses must accept structured formats including XRechnung. Most B2B scenarios use ZUGFeRD instead.

    XRechnung Format and Structure

    An XRechnung invoice is an XML file that conforms to two specifications simultaneously:

    An XRechnung invoice is an XML file that conforms to two specifications simultaneously:

    1. EN 16931 — the European core invoice standard that defines mandatory and optional fields
    2. CIUS-XRechnung — Germany's "Core Invoice Usage Specification" that adds national requirements on top of EN 16931

    XRechnung supports two XML syntaxes:

    • UBL (Universal Business Language) — the more commonly used syntax in Germany
    • CII (Cross-Industry Invoice) — the UN/CEFACT syntax, also accepted

    The current version is XRechnung 3.0.x. Always check KoSIT's website for the latest version, as government portals may reject invoices using outdated schemas.

    The Leitweg-ID: Routing Your Invoice

    Every XRechnung invoice must include a Leitweg-ID (routing ID). This is a structured identifier that tells the government's e-invoicing infrastructure which specific department or entity should receive your invoice.

    Every XRechnung invoice must include a Leitweg-ID (routing ID). This is a structured identifier that tells the government's e-invoicing infrastructure which specific department or entity should receive your invoice.

    A Leitweg-ID looks like this: 04011000-1234512345-06

    • The first segment identifies the government entity
    • The middle segment is a sub-entity or department identifier
    • The final digits are a check number

    Your contracting government agency provides the Leitweg-ID in their purchase order or contract. Without it, your invoice cannot be routed and will be rejected.

    How to Submit XRechnung Invoices

    Government agencies accept XRechnung invoices through several channels:

    Government agencies accept XRechnung invoices through several channels:

    1. ZRE (Zentrale Rechnungseingangsplattform)

    The federal government's central invoice receiving platform. Available at zre.bund.de. You can upload XRechnung XML files directly through the web portal or connect via Peppol.

    2. OZG-RE (Onlinezugangsgesetz Rechnungseingang)

    A platform used by several German states for receiving e-invoices. Similar to ZRE but operated at the state level.

    3. Peppol Network

    The Pan-European Public Procurement OnLine network. If your invoicing software supports Peppol, you can deliver XRechnung invoices directly to the government's Peppol access point — no manual upload required.

    4. Email with XML attachment

    Some smaller municipalities accept XRechnung files as email attachments, though this is becoming less common as dedicated platforms roll out.

    Required Fields in XRechnung

    Beyond the standard invoice requirements under §14 UStG, XRechnung mandates:

    Beyond the standard invoice requirements under §14 UStG, XRechnung mandates:

    • Leitweg-ID (BT-10: Buyer reference) — routing identifier for the recipient
    • Seller VAT ID (USt-IdNr.) or tax number
    • Buyer reference — purchase order number or contract reference
    • Payment means — bank transfer details (IBAN mandatory)
    • Tax breakdown — per VAT rate, showing taxable amount and tax amount
    • Invoice type code — 380 for standard invoice, 381 for credit note

    Validating Your XRechnung

    Before submitting, validate your XRechnung against the official KoSIT validator.

    Before submitting, validate your XRechnung against the official KoSIT validator. Common validation errors include:

    • Missing or malformed Leitweg-ID
    • Incorrect XML schema version
    • Mathematical errors in tax calculations
    • Missing mandatory fields (especially payment means or buyer reference)
    • Using deprecated codes or codelists

    KoSIT provides an open-source validator tool that you can integrate into your workflow or use via the ZRE platform's built-in validation.

    XRechnung and ZUGFeRD: Using Both

    Since ZUGFeRD 2. 1, you can generate a ZUGFeRD file with the "XRechnung" profile.

    Since ZUGFeRD 2.1, you can generate a ZUGFeRD file with the "XRechnung" profile. This produces a hybrid PDF/XML that contains the XRechnung-compliant XML data embedded in a PDF/A-3 container. Some government agencies accept this format, but not all — check with your specific recipient.

    For maximum compatibility, generate pure XRechnung XML for B2G invoicing and ZUGFeRD for B2B transactions. Your invoicing software should handle both formats.

    Getting Started with XRechnung

    If you invoice German government agencies, here is your checklist:

    If you invoice German government agencies, here is your checklist:

    1. Obtain the Leitweg-ID from your contracting agency
    2. Ensure your invoicing software supports XRechnung 3.0.x generation
    3. Register on ZRE (federal) or OZG-RE (state) if needed
    4. Validate your first invoice using the KoSIT validator before submitting
    5. Consider Peppol connectivity for automated delivery
    Tags:
    xrechnung
    e-invoicing
    germany
    b2g
    peppol
    leitweg-id
    government invoicing
    OO
    Olayinka Olayokun

    Digital Marketing, SEO Specialist, Content Creator & Product Professional

    CIM Certified
    MBA in Digital Marketing and Business Transformation

    Olayinka is a digital marketer, content creator, growth and SEO specialist with 10+ years helping businesses in Nigeria, the UK, the US, Australia, and Dubai achieve their goals online.

    More from Tax & Compliance