Skip to content

Validate a ZUGFeRD invoice

Check a ZUGFeRD invoice: the PDF/A-3 container, the embedded XML and the profile rules, with guidance on returned findings. Free within the daily limit.

In short

Check an invoice against its applicable EN 16931 and national rule set. Read each finding and guidance on what to correct. Free, 5 a day without an account.

Klarbon's ZUGFeRD validator checks a ZUGFeRD invoice in two parts: the PDF/A-3 container that carries the XML, and the XML itself against the selected ZUGFeRD profile rules. Returned findings include rule codes and guidance where available. It is free for five checks a day, twenty with a free account, and the file is deleted after the check.

What does the validator check?

Part What is checked
The PDF that it is PDF/A-3 and embeds the invoice XML as the format requires
The XML that it is well-formed CII and follows the schema of its profile
The rules the supported profile's rules; low-detail profiles do not satisfy the full EN 16931 model
The profile which profile the file declares, from MINIMUM to EXTENDED

ZUGFeRD is published by FeRD (FeRD). Version 2 is technically identical to the French Factur-X 1, but passing depends on the file, declared profile and selected rules, not the name alone.

How do I validate a ZUGFeRD file?

  1. Upload the PDF, or only the XML if that is what you have.
  2. Read the report. Review the container findings and returned rule findings, with codes, locations and correction guidance where available.
  3. Correct and check again in the software that made the file, or use Fix for one credit.

Which profile counts as an e-invoice?

In Germany, ZUGFeRD counts as an e-invoice between businesses from version 2.0.1, except the MINIMUM and BASIC WL profiles, which lack invoice lines (BMF FAQ). A MINIMUM file can pass all its own rules and still not be a valid e-invoice for German purposes, so check which profile the report names.

What are common ZUGFeRD errors?

What happens to my file?

It is sent to Klarbon's servers, validated in memory and deleted after the request. Klarbon keeps no copy. See what happens to my files.

What does it cost?

Free: five checks a day without an account, twenty with a free account, up to 2,000 a day on Pro and Bookkeeper. See prices.

Frequently asked questions

How do I validate a ZUGFeRD invoice?

Upload the PDF to Klarbon's ZUGFeRD validator. It checks that the PDF carries the invoice XML correctly, then validates the XML against the selected ZUGFeRD profile rules, and reports returned findings with guidance where available.

Which ZUGFeRD profiles are checked?

The profile the file declares, MINIMUM, BASIC WL, BASIC, EN 16931 or EXTENDED. XRECHNUNG is not a separate supported hybrid-profile checking target. The report names the profile and version it used.

Is a ZUGFeRD MINIMUM file a valid e-invoice in Germany?

No. The Federal Ministry of Finance does not count the MINIMUM and BASIC WL profiles as e-invoices, because they lack the invoice lines.

Can I check just the XML from a ZUGFeRD PDF?

Yes. Upload the XML file on its own and it is checked as CII against its profile. The PDF container checks are then skipped.

Are ZUGFeRD and Factur-X checked the same way?

Yes. ZUGFeRD 2 and Factur-X 1 are technically the same format, so the same checks apply.

Sources

Updated 6 November 2026

Also as an API: ZUGFeRD and Factur-X API