Free, no account

XRechnung invoice validator

Validate a single document against the current XRechnung rules. Nothing you upload here is stored — see what that means.

Standard
Syntax
One XML document.

What this XRechnung validator checks

Upload one XML invoice and select UBL or CII to match its syntax. PDFs and scanned invoices cannot be checked here. Revalidate runs the latest publishedXRechnung rule set available for that syntax, including the compiled CEN and XRechnung layers in that rule set. The result identifies the version used.

Browse available validation rule sets or see what changed between releases.

How to read a validation result

A fatal finding means the invoice fails the checked rule set. A warning is reported separately and does not by itself make the invoice fail. Each finding shows the rule identifier, its message, and the XML location when available. Correct the source data and validate the resulting invoice again.

What a passing result means

It means no fatal finding was returned by the checked rule set. It does not confirm delivery over the Peppol network, recipient acceptance, or compliance with every country's additional requirements. The invoice is processed for this check and is not stored. Read the data handling details.

One invoice tells you today. A corpus tells you every release.

This page checks a single document once, against whatever's current right now — nothing is saved, so there's nothing to notify you about later. Upload a corpus instead and every future rule set gets replayed against it automatically, with an email if one breaks something.