Skip to main content
Validators ยท Standards ยท EN 16931

XRechnung validation โ€“
tools & how it works

Validation checks whether your XRechnung is technically correct. Learn which tools to use โ€“ and how to simply open and read an XRechnung in your browser.

Open XRechnung now โ†’

What does XRechnung validation check?

XRechnung validation verifies two things: first, that the XML is syntactically correct. Second, that it complies with the business rules of EN 16931 and XRechnung (Schematron validation). Concretely:

Important: Invalid XRechnungen are automatically rejected by authority portals (e.g. the federal portal ZRE). Validating before sending saves time and avoids rework.

Validation tools overview

KoSIT Validator Official

The reference validator from the German Coordination Office for IT Standards (KoSIT). Validates XRechnung UBL and CII via command line or CI pipeline. Open source on GitHub.

github.com/itplr-kosit/validator
Ecosio E-Invoice Validator Online

Browser-based validator supporting XRechnung, PEPPOL BIS and other EN 16931 formats. Upload and get a structured validation report instantly.

ecosio.com/de/peppol-und-xml-dokumente-online-validieren/
digital-rechnung.de Content viewer

Not a validator, but a content viewer. Displays all invoice fields in a readable layout, supports PDF download. Ideal for quickly reading a received invoice.

What exactly does a validator check?

XRechnung validation runs in two stages. First the schema check: is the XML file technically valid according to the UBL or CII schema? Then the Schematron check: are all business rules followed? Schematron rules verify, for example, whether the sum of line item amounts matches the stated total, or whether a tax category code matches the specified tax rate.

The KoSIT Validator is the reference implementation for Germany and contains all current Schematron rules for XRechnung 3.0.x. It runs locally with Java โ€“ for one-off checks without a Java installation, the Ecosio Validator is the simpler option.

KoSIT Validator (GitHub, open source) ยท Ecosio Validator (online, free)

Typical validation errors and their causes

The most common errors: missing or incorrectly formatted Leitweg-ID, invalid UN/CEFACT unit codes (e.g. "piece" instead of "C62"), tax category code without justification (required for 0% and tax-exempt invoices), date values in the wrong format (ISO 8601: YYYY-MM-DD).

When errors occur, a validator reports the rule ID (e.g. BR-DE-1) and the XPath location in the XML. If you cannot interpret the error message: open the file on digital-rechnung.de and visually check the fields โ€“ the error is often obvious then.

XRechnung specification with all BR rules (KoSIT)

Federal portal ZRE: What happens with an invalid XRechnung?

The Central Invoice Receipt Portal of the Federal Government (ZRE) automatically rejects invalid files. The submitter receives an error message with the validation result. In this case, the invoice is considered not received.

The ZRE only accepts XRechnung files (UBL or CII), no ZUGFeRD PDFs. At the state level, other portals may accept additional formats โ€“ varying by federal state.

ZRE โ€“ Central Invoice Receipt Portal (Federal)

Open and read XRechnung first?

Fields, line items and totals at a glance โ€“ free, no upload to any server.

Open & read XRechnung for free โ†’

Frequently asked questions

What is the difference between validation and opening?

Validation checks technical conformity with EN 16931 and XRechnung Schematron rules. Opening (like digital-rechnung.de) displays the content readably โ€“ useful for manual content review, but not a formal validator.

Should I validate before every send?

Recommended, yes. Especially for invoices to authorities: the federal portal ZRE automatically rejects invalid XRechnungen.

Does validation cost anything?

The KoSIT validator is open source (free). The Ecosio validator is free for manual checks.