
If you generate e-invoices, you know how strict the ZuGFeRD and Factur-X standards can be. Even small issues can lead to failed validations, rejected invoices, or follow-up work you didn’t plan for.
The Docentric e-Invoice Validator helps you catch issues early. You upload an e-invoice, or send it through an API, and get a clear validation result back. No guessing. No manual checks. Just fast feedback you can trust.
What the validator is (and what it’s for)
Docentric e-Invoice Validator is a lightweight REST API and web app for validating electronic invoices that runs on a Docker container and can validate:
- ZuGFeRD
- Factur-X
- UBL
Both PDF (hybrid) and XML formats are supported.
But it’s designed to support more e-invoice formats as standards evolve and new requirements appear.
The tool was originally created to support unit testing of Docentric AX. We use it to make sure invoices generated by Docentric AX, including attachments, comply with formal e-invoice rules.
ZuGFeRD validation as an example
ZuGFeRD and Factur-X are hybrid e-invoice formats. They combine a human-readable PDF with embedded structured XML data.
Validating them properly means checking:
- The XML structure.
- Mandatory and optional fields.
- Rule consistency across profiles.
- Alignment between PDF and XML content.
The Docentric e-Invoice Validator wraps the Mustang Project validation engine in a simple web UI and a clean REST API. You don’t need to deal with Java tooling, CLI calls, or parsing raw output. The validator handles that for you and returns structured results you can act on.
ZuGFeRD validation is just one example of how the validator works. The same pattern applies to other e-Invoice standards we may add later.
Validate e-invoices via Web UI or REST API
The Docentric e-Invoice Validator runs on Docker and can be used from a Web UI or a REST API.
In the Web UI you can upload a PDF or XML file and immediately see whether it passes validation. This is ideal for:
- Quick checks
- Demos
- Manual testing during development
In the REST API you can send invoices programmatically and get JSON validation results back. This is designed for:
- Automated tests
- CI pipelines
- Integration into your own tools
Try it yourself!
The easiest way to get started is via Docker. Pull the image, run one command, and you’re validating invoices locally in minutes.
The full source code, Docker images, sample invoices, and setup instructions are available on GitHub: https://github.com/Docentric/docentric-e-invoice-validator.
In follow-up articles, you’ll find detailed examples, including how to run the Docker container to run your validations locally.
👉 Next step: Run the validator and validate one of the sample invoices from the repository.
Tags: D365FO, e-Invoice, Full Edition, Invoice, ZUGFeRD