All compliance tools
XRechnung 3.x Free, no account

XRechnung Validator

Upload a UBL 2.1 or CII XML file and validate it against XRechnung 3.x, the German CIUS (Core Invoice Usage Specification) for EN 16931. The validator runs both the EN 16931 base rules and the German-specific BR-DE extension rules.

Generate a sample XRechnung invoice

SealDoc generates a sample invoice in the XRechnung profile and checks it with the open-source Mustang validator. Download the PDF/A-3B and inspect the embedded CII XML.

No account required. Not persisted. Rate-limited per IP.

or validate your own file

Drop an XRechnung UBL or CII XML here

PDF or XML, up to 10 MB. Drag and drop or click to choose.

What is XRechnung?

XRechnung is Germany's national CIUS (Core Invoice Usage Specification) for the EN 16931 European invoice standard. It is a pure XML format. Unlike Factur-X, it does not embed XML inside a PDF.

XRechnung is available in two syntaxes: UBL 2.1 (OASIS Universal Business Language) and CII (UN/CEFACT Cross Industry Invoice). Both syntaxes carry identical data.

XRechnung is the standard for invoices to the German federal administration (B2G), which have had to be electronic since 27 November 2020. Another format that meets EN 16931 is also allowed there (ERechV § 4). In B2B, XRechnung is one of the accepted formats, alongside ZUGFeRD from version 2.0.1.

XRechnung 3.0 has applied since 1 February 2024 and stays in force until at least 31 July 2027. In XRechnung 3.0, the business process type (BT-23) and the electronic addresses of seller (BT-34) and buyer (BT-49) are mandatory. A pre-release of XRechnung 4.0 was published in September 2026.

German-specific rules (BR-DE)

BR-DE-1

An invoice must contain payment instructions (BG-16). Flag: fatal.

BR-DE-2

The seller contact group (BG-6) must be present. Flag: fatal.

BR-DE-5 to 7

The seller contact needs a contact point (BT-41, a person or department), a phone number (BT-42) and an e-mail address (BT-43). Flag: fatal.

BR-DE-15

The buyer reference (BT-10) must be present; for public buyers it carries the Leitweg-ID. Flag: fatal.

BR-DE-16

For VAT categories S, Z, E, AE, K, G, L and M, the seller VAT ID (BT-31), tax number (BT-32) or tax representative (BG-11) must be present. Flag: fatal.

BR-DE-23-a

With payment means code 30 or 58 (credit transfer), the credit transfer group (BG-17) must be present. Flag: fatal.

BR-DE-19

The IBAN (BT-84) should be a valid IBAN. Flag: warning.

German e-invoicing mandate timeline

Live 27 Nov 2020

B2G mandatory (federal)

Suppliers to German federal authorities must invoice electronically (ERechV § 3). Since September 2025 the Bund receives invoices through one platform, OZG-RE. Direct orders up to €1,000 are exempt.

Live 1 Jan 2025

B2B receive obligation

Every business based in Germany, including Kleinunternehmer, must be technically able to receive structured e-invoices (XRechnung or ZUGFeRD). Sending is still optional for most.

Upcoming 1 Jan 2027

B2B send obligation (large)

Businesses with over €800k annual turnover must send structured invoices.

Upcoming 1 Jan 2028

B2B send obligation (all others)

All other businesses based in Germany must send structured e-invoices to business customers, apart from the listed exceptions.

Note Exempt

Exceptions

Invoices up to €250 (§ 33 UStDV), tickets for passenger transport (§ 34 UStDV) and invoices from Kleinunternehmer (§ 34a UStDV) may always be issued in another format. Invoices to consumers fall outside the obligation.

Note Archival

8 years retention

HGB §257 and AO §147 require 8-year retention for invoices.

Generate and validate XRechnung invoices via API

The SealDoc API generates XRechnung invoices from JSON: a PDF/A-3 with the CII XML embedded as xrechnung.xml. BT-10, the seller contact and, when an amount is due, the IBAN are required before generation, and the PDF/A-3 is checked with veraPDF. Timestamps and evidence packs come with the paid Platform plans.

// Validation result (excerpt)
{
  "verdict": 3,
  "findings": [{
    "severity": 2,
    "code": "27",
    "messageRaw": "[BR-DE-15] Das Element \"Buyer reference\" (BT-10) muss übermittelt werden."
  }]
}

Creating invoices without an API? SealDoc Invoice makes XRechnung in the browser, 5 a month free →