Skip to content
E-Invoice Viewer

E-invoice XML frequently asked questions and examples

The questions that come up after opening an invoice, not before — plus what the codes mean, three worked examples and where to look each validation rule up.

The tool itself

E-Invoice Viewer

Drop an XML or ZUGFeRD/Factur-X PDF, read it like an invoice, check it against EN 16931.

Open the viewer

Six more questions

The four asked before anyone opens anything — what an e-invoice XML is, how to open one, whether a PDF counts, whether the file is uploaded — are answered on the tool page itself, where they are needed. These six come up afterwards.

Does a clean result mean the invoice is legally valid?
It means the document passed the rules listed in the report. Those are the core EN 16931 rules plus the XRechnung and Peppol rules we name, not the complete national rule set. For a formal conformance check, use the European Commission's eInvoice validator.
What do codes like BR-CO-15 mean?
They are the published rule identifiers from EN 16931. BR-CO-15 says the invoice total with VAT must equal the total without VAT plus the VAT amount. Every finding shows its identifier so you can look up the exact wording of the rule.
What is the Leitweg-ID and where is it?
It is the routing identifier German public-sector buyers require. It travels in the buyer reference field, BT-10, and XRechnung rule BR-DE-15 makes it mandatory. E-Invoice Viewer shows the field and reports when it is missing.
Can it open credit notes?
Yes. UBL credit notes and CII documents with a credit-note type code are read the same way as invoices.
Can I get the data into a spreadsheet?
Yes. The invoice header and its line items can be exported as CSV, which opens directly in Excel, Numbers or Google Sheets.
Why did I suddenly start receiving these?
Because receiving structured e-invoices became mandatory before issuing them did. Belgium's mandate started in January 2026, Poland's in 2026, France's receiving obligation on 1 September 2026, and Germany's receiving obligation has applied since January 2025.

What it looks like on a real document

Three cases, taken from the documents this reader was built against.

A German supplier sends an XRechnung

Input: a single .xml file, UBL syntax, specification identifier ending in xrechnung_3.0.

Output: the supplier and buyer with their VAT identifiers, the buyer reference carrying the Leitweg-ID, every line with quantity, unit and net amount, the VAT breakdown per category, and the payable amount.

If the buyer reference is absent, the report raises BR-DE-15 — the rule a German public-sector buyer's system will reject the invoice on.

A PDF that is really an e-invoice

Input: a .pdf that looks like an ordinary invoice.

Output: the XML embedded inside the PDF is extracted and read; the profile line states which ZUGFeRD or Factur-X conformance level the document claims.

If the PDF carries no embedded XML, it is an ordinary PDF and the reader says so rather than guessing at the numbers.

An invoice your system refused

Input: the file your accounts payable software rejected without saying why.

Output: the totals recalculated exactly, at full decimal precision.

A finding such as BR-CO-15 — invoice total with VAT must equal the total without VAT plus the VAT amount — names the term to ask the supplier to correct, with both the stated and the computed figure.

Who needs to read an e-invoice

Anyone holding a structured invoice and no software that will open it.

Small businesses and freelancers

You must be able to receive e-invoices, but you do not need a bookkeeping suite to read one. Open it, check it, forward it.

Accountants and bookkeepers

Check a client's incoming document before it enters the books, and see immediately whether a missing field is the reason it was rejected.

Accounts payable

When a supplier's invoice is refused by your system, the rule identifier tells you which term is wrong and what to ask the supplier to fix.

Developers and integrators

Compare what your generator produced against the standard, and see the parsed semantic model next to the raw document.

Reference

Every validation rule, one page each

Each EN 16931, XRechnung and Peppol rule the viewer checks, with the official message, the element path and the allowed values.

See every validation rule

The tool

Open an invoice now

Drop the file you already have. Nothing to install, no account, no upload.

Open an invoice