UBLExplain

Understand and fix UBL invoice errors

Validate UBL and Peppol invoices, explain XML errors in plain English, and check embedded PDF attachments directly in your browser.

Tools

Pick the tool you need. All checks run locally.

Why UBL invoices fail

Missing required fields

Required UBL elements like ID, IssueDate or LegalMonetaryTotal are absent or empty.

Totals don't match

Sum of line amounts, VAT and payable amount drift apart because of rounding or forgotten allowances.

Currency mismatches

Amounts use a different currencyID than DocumentCurrencyCode, which Peppol rejects.

Broken PDF attachments

EmbeddedDocumentBinaryObject contains invalid base64, missing mimeCode, or content that is not a PDF.

Wrong CustomizationID/ProfileID

The invoice is not labelled as Peppol BIS Billing 3.0, so access points won't accept it.

Schema-invalid XML

Tags are misspelled, namespaces are missing, or the file is not well-formed XML.

Files never uploaded

Every tool on UBLExplain is implemented as client-side JavaScript. Your UBL XML stays in the browser tab — there is no backend, no server upload, and no analytics on invoice contents.

Frequently asked questions

What is a UBL invoice?

UBL (Universal Business Language) is a standard XML format for electronic invoices. UBL invoices include structured data such as supplier, customer, lines, VAT and totals, so receivers can process them automatically.

Is my invoice uploaded anywhere?

No. Every tool on UBLExplain runs entirely in your browser. Your XML never leaves your device and is not stored.

Does UBLExplain replace official Peppol validation?

No. UBLExplain performs helpful, browser-based checks and explanations, but it is not a substitute for official Peppol validation or access-point certification.

Which UBL document types are supported?

The tools work with UBL 2.x Invoice and CreditNote documents, including Peppol BIS Billing 3.0 invoices.