# xmlvalid vs the EU Interoperability Test Bed validator

Source: https://xmlvalid.com/compare/eu-itb

> The European Commission's Interoperability Test Bed (ITB) publishes free, open-source validators for XML Schema and Schematron, and hosts an eInvoice Validator for EN 16931. xmlvalid makes the same kind of check ready to use: a validator in your browser with a catalog already set up, and an API you don't have to run yourself.

Last updated · 19 October 2026

## At a glance

| What | xmlvalid | The EU ITB |
|---|---|---|
| Who makes it | xmlvalid, an independent product | The European Commission (DIGIT) |
| Price | Free in the browser. API: 100 validations a month free, Pro from $29 a month | Free, as a hosted service too; open source (EUPL-1.2) |
| Where the check runs | In your browser (WebAssembly): the file is not uploaded. The API and URL monitors run on our servers | On the Commission's servers, or on yours (Docker image or a Java command-line tool) |
| E-invoicing rules, ready to use | EN 16931 1.3.17 and 1.3.16, Peppol BIS and PINT, XRechnung, Factur-X and ZUGFeRD, and national rules (France, the Netherlands, Denmark, Norway, Portugal, Croatia, Romania, Italy, Saudi Arabia): 71 profiles | The hosted eInvoice Validator: EN 16931 release 1.3.17 for UBL invoices, UBL credit notes and CII invoices. Other rule sets: a validator you configure and host |
| Other schemas | 166 schemas in the catalog, plus your own | The ones a validator is configured with; your own files where the validator allows them |
| Schema languages | XSD 1.0, DTD, RelaxNG (XML and compact syntax), Schematron | XSD 1.0, XSD 1.1 when configured, Schematron |
| Input | Paste, file, URL, a folder or .zip of up to 1,000 documents; Factur-X and ZUGFeRD PDFs | File, direct input, and a URI where it is turned on (off by default) |
| File size | Up to 1 GB (50 MB without an account); API up to 1 GB on Pro | Not stated |
| APIs | REST API with OpenAPI, command-line client, GitHub Action, SDKs for PHP (with Laravel and Symfony packages), Python and TypeScript, an MCP server for AI agents, n8n, Apify and a Postman collection | REST and SOAP (the GITB validation service API), a command-line JAR (Java 17), a Docker image |
| Reports | HTML and PDF report with the document's SHA-256 and the engine versions that checked it, JSON; report links anyone can open (Pro) | XML (GITB TRL), PDF and CSV; JSON from the REST API |
| Explanations of rules and errors | A page for every rule and for 90 common error messages, linked from each finding | Not stated |
| Your data | Validated in your browser; API documents are deleted when the check finishes | Anonymous and stateless: no test data or reports are kept once validation completes |

## Where xmlvalid fits better

- Nothing to set up: Peppol, XRechnung, Factur-X, PINT and national rules are configured and named with their releases, and the XRechnung and Peppol findings are compared every week with the KoSIT validator and Saxon.
- Validation on your own machine without installing anything: the engine runs in the browser, so the document is not uploaded.
- DTD and RelaxNG as well as XSD and Schematron, and schema sets with includes.
- Every rule and 90 common error messages explained on [their own pages](https://xmlvalid.com/rules), linked from each finding.
- An API with quotas, keys, webhooks and URL monitors, plus [a GitHub Action](https://xmlvalid.com/docs/ci) and [SDKs](https://xmlvalid.com/docs/sdks).

## Where the EU ITB fits better

- Your own servers, or no network at all: the ITB validators run from Docker or as a command-line tool, under an open-source licence. xmlvalid has no self-hosted edition yet (it is [in development](https://xmlvalid.com/pricing)).
- XSD 1.1: an ITB validator can be configured for it. xmlvalid uses libxml2, which reads XSD 1.0 only.
- An official reference from the European Commission, with SOAP and the GITB test bed for conformance testing.
- A free hosted REST and SOAP API; the xmlvalid API is free for 100 validations a month, then Pro.

## Questions

### Do both give the same EN 16931 results?

Yes for the same release: both run CEN's published Schematron. The ITB eInvoice Validator uses release 1.3.17, as xmlvalid's EN 16931 profiles do; xmlvalid's Peppol, XRechnung and French profiles use 1.3.16, the release those rules are published with.

### Can I run xmlvalid on my own servers?

Not yet. A self-hosted edition is in development; you can leave your email on the pricing page. The validator in the browser already keeps documents on your machine.

### Does xmlvalid support XSD 1.1?

No. It recognises XSD 1.1 constructs and says so, but libxml2 validates XSD 1.0 only.

### Is the ITB validator good for CI?

Yes, if you run it: its command-line JAR or Docker image fits a pipeline. xmlvalid's GitHub Action and command-line client call a hosted API instead, with nothing to install.

## How we compared

What the table says about the EU ITB comes from its own public pages, as they read on 19 October 2026; "Not stated" means we found no answer there. Products change: if something here is out of date, [tell us](https://xmlvalid.com/contacts) and we will correct it.

- [Interoperability Test Bed](https://interoperable-europe.ec.europa.eu/collection/interoperability-test-bed-repository/solution/interoperability-test-bed)
- [ITB guide: setting up a validator for XML](https://www.itb.ec.europa.eu/docs/guides/latest/validatingXML/index.html)
- [ISAITB/xml-validator on GitHub](https://github.com/ISAITB/xml-validator)
- [ITB eInvoice Validator](https://www.itb.ec.europa.eu/invoice/upload)

### Other comparisons

- [xmlvalid vs the ecosio validator](https://xmlvalid.com/compare/ecosio)
- [xmlvalid vs Liquid Technologies' online validators](https://xmlvalid.com/compare/liquid-technologies)
