UBLExplain

Validate and explain UBL invoice errors

Paste a UBL Invoice or CreditNote XML, or upload a .xml file. Every issue is shown with a plain-English explanation, likely cause and suggested fix.

Paste or load UBL XML

Related tools

Frequently asked questions

Which UBL versions and profiles do you support?

All of them. The validator auto-detects the profile from cbc:CustomizationID, cbc:ProfileID and cbc:UBLVersionID. We recognise Peppol BIS Billing 3.0, NLCIUS 1.0, XRechnung, EN 16931 (bare), SI-UBL 1.x/2.0 (legacy), OIOUBL and plain OASIS UBL 2.0–2.4. Generic UBL structural checks always run; profile-specific rules (Peppol EndpointID, NLCIUS EUR-only / KvK 0106) are layered on top when applicable.

Does this validator certify my invoice for Peppol?

No. This tool performs browser-based structural and semantic checks and explains issues in plain English. It is not a replacement for official Peppol validation or access-point certification.

Which checks are included?

Well-formed XML, root element (Invoice or CreditNote), required fields (ID, IssueDate, supplier, customer, currency), invoice lines, tax totals, monetary totals, currency consistency, plus profile-specific rules when the document declares a known CustomizationID.

Are my invoices uploaded?

No. Parsing and validation happen entirely in your browser. The XML never leaves the page.