Home/Compliance & tax/XRechnung Guide
Guide · Germany B2B & B2GXRechnung 3.0.2

XRechnung Guide

A plain-English guide to XRechnung and Germany's e-invoice mandate for freelancers, contractors and small businesses. This is general information, not tax advice.

Last updated: October 2, 20266 min readStandard: EN 16931 / XRechnung 3.0.2

General information. This guide is prepared for informational purposes under § 14 and § 14b UStG and official BMF guidance. It does not constitute tax or legal advice. Review specific cases with your Steuerberater.

01Definition

What is XRechnung?

XRechnung is Germany's national standard for electronic invoices. It is a structured XML file that a computer can read without a person retyping it. It follows the European standard EN 16931 and is maintained by KoSIT, the coordination office for IT standards of the German public administration. The current version is XRechnung 3.0.2.

What a computer reads

<rsm:CrossIndustryInvoice ...>
  <rsm:ExchangedDocument>
    <ram:ID>INV-2026-0891</ram:ID>
    <ram:TypeCode>380</ram:TypeCode>
    <ram:IssueDateTime>20261002</ram:IssueDateTime>
  </rsm:ExchangedDocument>
  ...
</rsm:CrossIndustryInvoice>

Every amount, IBAN and date sits in a named field, so software does not have to guess numbers from an image. The snippet is shortened for illustration.

02Legal classification

Is a PDF an e-invoice?

No. Under German VAT law an e-invoice is a structured file that follows EN 16931. A plain PDF or a scanned paper invoice is an "other invoice". A ZUGFeRD PDF is different: it is a PDF with an XML file embedded, and it does count.

Not an e-invoice

Standard PDF

A normal PDF or scanned paper invoice. A person can read it, but a computer cannot extract the data reliably.

Legal status: an "other invoice" (sonstige Rechnung), not an e-invoice under § 14 UStG.

Counts

ZUGFeRD / Factur-X

A human-readable PDF with a structured XML file embedded in it.

Legal status: an e-invoice when the EN 16931, EXTENDED or XRECHNUNG profile is used.

Public standard

XRechnung XML

A pure XML file in UBL or UN/CEFACT CII syntax, read directly by accounting systems.

Legal status: required for German federal public bodies; accepted everywhere an e-invoice is.

03Timeline

Who must use it, and when?

DateRuleStatus
Since November 27, 2020Suppliers to federal government bodies must send XRechnung or another EN 16931 e-invoice.Active (B2G)
January 1, 2025Every German business must be able to receive e-invoices in B2B.Active (receive)
Jan 1, 2025 to Dec 31, 2026Paper and PDF invoices are still allowed for B2B, with the customer's agreement for other electronic formats.Transition
January 1, 2027Businesses with prior-year turnover above €800,000 must issue e-invoices.Issuing, tier 1
January 1, 2028All businesses must issue e-invoices.Issuing, all

The obligation covers invoices between businesses established in Germany. It does not cover invoices to consumers. Small-business owners under § 19 UStG (Kleinunternehmer) and invoices of €250 or less are exempt from issuing e-invoices, but still must be able to receive them.

04Comparison

XRechnung or ZUGFeRD?

XRechnungZUGFeRD
FileXML only (.xml)PDF with embedded XML (.pdf)
Readable by a personNeeds a viewerYes, open the PDF in any viewer
Best forPublic sector and automated processingB2B where people still read the PDF
Accepted profilesThe whole format (UBL or CII)EN 16931, EXTENDED and XRECHNUNG profilesMINIMUM and BASIC WL are not enough.

Which one? Both formats satisfy the mandate. Send XRechnung when the customer is a public body or asks for it. Choose ZUGFeRD when you also want a PDF a person can read.

05Required data

What does an XRechnung contain?

Party information

Seller and buyer name, postal address and contact.

Tax registration

Seller VAT ID (USt-IdNr.) or tax number (Steuernummer).

Invoice metadata

Invoice number, issue date and delivery or service date.

Line items

Description, quantity, unit, unit net price and VAT rate.

Tax breakdown

Net amount, VAT amount and gross total for each tax rate.

Payment details

Payment terms or due date, and the seller's IBAN.

Buyer reference (BT-10)

For public bodies this is the Leitweg-ID. In private B2B it can hold the customer's purchase order number or cost centre.

06Routing

What is a Leitweg-ID?

A Leitweg-ID is the routing number of a German public body. You put it in the buyer reference field so the invoice reaches the right department. Ask the public customer for it. An invoice to a public body without it gets rejected.

Anatomy of a Leitweg-ID

04011000-12345-67
1. Level or state (04)The first digits identify the federal level or the state (for example 99 for the federal government, 04 for Bremen).
2. Department (12345)Identifies the authority or department that receives the invoice.
3. Check digits (67)Two check digits that catch typing errors.

The example above shows the structure only. It is not a real Leitweg-ID.

07Workflow

How do I send one?

  1. 1

    Create the invoice with all required fields

    Include tax IDs, the buyer reference (Leitweg-ID for public bodies) and your IBAN.

  2. 2

    Export it as XRechnung XML or ZUGFeRD

    Use XML for public bodies and automated systems. Use ZUGFeRD when people also read the PDF.

  3. 3

    Validate the file against the KoSIT validator before sending

    The validator checks the syntax, the calculations and the business rules.

  4. 4

    Send it by email, through a Peppol access point, or upload it to the customer's portal

    Federal bodies receive invoices through the ZRE portal. Many states use their own portals.

  5. 5

    Keep the original file

    Invoices must be kept for eight years in the original e-invoice format. A printout or screenshot does not satisfy that.

08Rejection checklist

Common reasons an XRechnung is rejected

  • Missing or wrong Leitweg-ID

    A public body cannot route an invoice whose buyer reference is empty or invalid.

  • VAT amounts that do not add up to the line items

    Rounding differences between the line totals and the tax breakdown break the calculation rules.

  • Missing IBAN or payment terms

    Payment details are required fields in the structured file.

  • A ZUGFeRD file using the MINIMUM or BASIC WL profile

    These profiles leave out data an e-invoice must carry, so they do not count.

  • Sending a PDF only, when the customer needs the structured file

    A PDF without embedded XML is not an e-invoice.

09Invoqk

Create an XRechnung with Invoqk

Paste your job description or email, review the invoice, then export XRechnung XML or a ZUGFeRD PDF. The file is validated before download. XRechnung and ZUGFeRD export is part of the Business EU plan.

Try the generator

10Questions

Frequently asked questions

Is XRechnung mandatory for freelancers?

Not yet for issuing, unless you invoice a public body. From January 1, 2027 it is mandatory for businesses above €800,000 prior-year turnover, and from January 1, 2028 for everyone, except exempt cases.

Can I still send a PDF?

Until December 31, 2026 for B2B, and until December 31, 2027 if prior-year turnover was €800,000 or less. After that a PDF alone is no longer a valid invoice.

Do I need XRechnung for customers outside Germany?

The German mandate covers domestic B2B. Other countries have their own rules. Check the customer's country.

What is the difference between XRechnung and Factur-X?

Factur-X is the French name of ZUGFeRD. They are technically aligned: a PDF with embedded XML.

How long must I keep e-invoices?

Eight years, in the original structured format.

11Sources

Sources and legal references