Validate ZUGFeRD – PDF and XML in one step

Upload a ZUGFeRD PDF or its CII XML: the validator reads the embedded XML, detects the profile (MINIMUM to EXTENDED, XRECHNUNG), checks it with the FeRD rules and checks the PDF for PDF/A-3.

This page in: Deutsch

Checked in memory only, nothing is stored. 5 validations per day and IP address, no sign-up.

What is checked

  • The embedded invoice file and the PDF's XMP metadata.
  • XML Schema and Schematron by FeRD for ZUGFeRD 2.x / Factur-X, per profile.
  • PDF/A-3 with veraPDF, the PDF Association's reference validator.
  • Profile XRECHNUNG with the KoSIT rules. The detected profile is part of the result: MINIMUM and BASIC WL do not count as an e-invoice in Germany.

Rule sets used

Rule setPublished byVersion
ZUGFeRD / Factur-XFeRD, FNFE-MPE2.5.2
XRechnung with the CEN EN 16931 rulesKoSIT, CEN3.0.2

Every rule explained

Every finding in the result links to a page with the official rule text, the severity per rule set and the technical test. The rules of this page:

All 3289 validation rules

Automate the check

The same validator as a REST API: one call with your API key, the result as JSON. The Free plan includes 100 documents a month.

Get a free API key

curl -H "Authorization: Bearer $API_KEY" \
     -H "Content-Type: application/pdf" \
     --data-binary @zugferd.pdf \
     "https://einvoice-api-main-f5141d8.zuplo.app/v1/validate"

Privacy

The file is sent encrypted through our API gateway (Zuplo) to our server in Germany, checked in memory only and discarded after the response. It is neither stored nor logged. To count the validations per day, the gateway uses your IP address; the counter expires after 24 hours. This page sets no cookies. Where you can, use test or anonymised invoices. Details in the privacy policy (German).

Frequently asked questions

Is the validator free?

Yes. You can validate 5 files a day without signing up. For more documents and for validating inside your own software there is the API, with a free plan too (100 documents a month).

Are my invoices stored?

No. The file is checked in memory only, on servers in Germany, and discarded after the response. It never reaches a disk or a log.

Is the result binding?

The validator uses the official rule sets in the version in force and names them in the result. Whether a recipient or a platform accepts the invoice is up to them. Not legal or tax advice.

Does the validator send my invoice?

No. It only validates. Sending through Peppol, the SDI, KSeF or a platform is up to your provider.