Skip to content

Validate a Factur-X invoice

Check a Factur-X 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 Factur-X validator checks a Factur-X invoice in two parts: the PDF/A-3 container that carries the XML, and the XML itself against the selected Factur-X 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 is checked?

Part What is checked
The PDF that it is PDF/A-3 and embeds the invoice XML as the format requires
The XML well-formed CII that 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 the declared profile: MINIMUM, BASIC WL, BASIC, EN 16931 or EXTENDED

Factur-X is published by the French FNFE-MPE together with the German FeRD (FNFE-MPE); it is technically the same format as ZUGFeRD 2.

How do I validate a Factur-X file?

  1. Upload the PDF, or the XML on its own.
  2. Read the report: container findings and returned rule findings, with codes, locations and correction guidance where available.
  3. Correct and check again in your invoicing software, or use Fix to correct it in a form for one credit.

Which profile should a French invoice use?

The French e-invoicing reform accepts Factur-X alongside UBL and CII, and its specifications set which data an invoice must carry (impots.gouv.fr). MINIMUM and BASIC WL do not carry the full invoice-line detail required by EN 16931. Do not infer platform acceptance from a profile passing its own rules. Ask your approved platform which profiles it accepts.

What are common Factur-X errors?

Does a pass mean my customer will accept it?

It means the selected profile checks passed, not that every EN 16931 requirement was tested. It does not confirm the VAT treatment or the amounts, and approved platforms may apply further checks. Technical validation is not tax advice.

What happens to my file?

It is sent to Klarbon's servers, validated in memory and deleted after the request. 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 Factur-X invoice?

Upload the PDF to Klarbon's Factur-X validator. It checks the PDF/A-3 container and the embedded XML, applies the supported rules of the declared profile, and reports returned findings with guidance where available.

Which Factur-X profiles are checked?

The one the file declares, from MINIMUM to EXTENDED. The report names the profile and the Factur-X version it used.

Is a Factur-X invoice that passes accepted by French approved platforms?

A pass means the selected profile checks passed, not that every EN 16931 requirement was tested. Approved platforms can apply further checks from the French specifications, so ask your platform about its requirements.

Can I validate the XML from a Factur-X PDF on its own?

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

Sources

Updated 6 November 2026

Also as an API: ZUGFeRD and Factur-X API