EN 16931
EN 16931 is the standard both XRechnung and ZUGFeRD refer to. It does not describe what an invoice file looks like, but what its fields mean.
A semantic data model, not a file format
EN 16931 is the European standard for electronic invoicing. It defines which fields an e-invoice must contain, what they mean, and which business rules apply between them.
What it deliberately does not define is how that data ends up in a file. This is the source of the common confusion that XRechnung and ZUGFeRD are alternatives to the standard. They are implementations of it.
Three terms, three layers
Separating the layers helps: EN 16931 is the standard and describes the meaning of the data. XRechnung and ZUGFeRD are the two implementations that matter in Germany.
Both fully satisfy EN 16931. They differ in the container — pure XML versus PDF/A-3 with embedded XML — not in the content.
Why the standard is the yardstick
Because the standard defines business rules as well as fields, an invoice can be machine-checked for business validity. Schematron validation checks against exactly those rules.
For a migration project this means legal compliance is not decided by the chosen format, but by whether the generated data satisfies the standard.
Frequently asked
Is EN 16931 a file format?
No. It is a semantic data model describing what the fields mean. XRechnung and ZUGFeRD are formats that implement this model.
Do XRechnung and ZUGFeRD satisfy the same standard?
Yes, both are EN 16931 compliant. They differ in the container, not in the data model.

