Viewer & checker · Peppol BIS 3 · EHF · XRechnung · Finvoice

Open and read an e-invoice XML file

An e-invoice XML file is an invoice written as data, not as a page, which is why it looks like code when you open it. Choose the file or paste the XML to see it as a readable invoice: who sent it, what it is for, the VAT and the total. You also get InvoiceCraftly’s preflight checks and a clear note of which formal validations did not run.

The file is read in your browser.

  1. Choose an XML file or paste the XML text.
  2. See the recognized e-invoice format and mapped invoice details.
  3. Review deterministic preflight findings and the validation layers that were or were not checked.
View & check e-invoice XML ↓
E-invoice XML

Open a file or paste XML

Peppol invoice checker

Check Peppol BIS Billing 3 XML

For supported Peppol BIS Billing 3 UBL invoices, InvoiceCraftly identifies the profile, shows mapped invoice details and runs its current preflight over mapped fields and arithmetic. Official Peppol business rules are shown separately if they have not run. What is Peppol?

EN 16931

Understand the difference between preflight and formal validation

EN 16931 validation can include business rules and code lists beyond the checks on this page. A clear InvoiceCraftly preflight means the checks shown here found no issue; it does not turn an unrun formal validation layer into a pass.

XRechnung

Read and check an XRechnung file

XRechnung 3.0 files in the UBL syntax are recognized and shown like any other supported invoice. InvoiceCraftly also checks twelve KoSIT XRechnung rules in your browser, such as the buyer reference, seller contact, addresses, VAT rates, payment instructions and early-payment discount lines, and names each finding by its rule ID. The official KoSIT validator does not run here and is shown as not run. To create an XRechnung file, open the invoice editor, use the XML export and choose XRechnung. What is XRechnung?

UBL · EHF · Finvoice

Inspect supported structured invoice formats

The viewer maps supported Peppol BIS Billing 3 UBL (including Norwegian EHF) and Finvoice 3.0 structures. Generic UBL, including Danish OIOUBL, can also be recognized at a basic structure level even when a profile is not classified. Prefer your own language? Open an EHF invoice on the Norwegian page or a Finvoice invoice on the Finnish page.

Rejected e-invoice

Why an e-invoice can be rejected

An e-invoice can fail for different reasons: malformed XML, missing or inconsistent invoice data, EN 16931 or Peppol business rules, code-list requirements, recipient identifiers, or delivery-network checks. This page helps with the parts InvoiceCraftly can currently prove from the uploaded XML and makes the unrun layers visible instead of guessing.

If the invoice is for Norway, you can also check whether a recipient can be found for EHF/Peppol routing. Recipient capability is separate from the invoice XML itself.

XML safety

The file is screened before invoice fields are read

The XML input is screened before mapping invoice fields. See Security for the safeguards and Privacy for how invoice data is handled.

Evidence

Only checked layers are reported as checked

The result distinguishes XML parsing, structure recognition, InvoiceCraftly preflight, InvoiceCraftly XRechnung checks, the official XRechnung validator, formal Peppol business rules and network or recipient acceptance.

Next step

Use supported invoice details as a draft

For a simple supported outgoing invoice, you can review the mapped fields and open them as a new editable InvoiceCraftly draft. Complex source meaning is not silently discarded.

Peppol, EN 16931 and e-invoice XML FAQ

How do I open an invoice XML file?

Choose the file or paste its contents above. The viewer shows the invoice details in a readable layout. Opening it in a text editor or browser only shows the raw XML.

Why did I receive an invoice as an XML file?

The sender’s system issued it as an e-invoice, a structured format meant for accounting software. More countries now require e-invoices between businesses, including Norway from 1 January 2027.

Can I open an EHF invoice here?

Yes. EHF Billing is based on Peppol BIS Billing 3, which the viewer supports.

Can I open and check an XRechnung file?

Yes, for XRechnung 3.0 in the UBL syntax. The viewer shows the invoice details and checks the file against twelve KoSIT XRechnung rules, such as the buyer reference, seller contact and payment instructions, each named by its rule ID. The official KoSIT validator does not run in your browser, so its layer is shown as not run. XRechnung files in the CII syntax are not supported yet. To create an XRechnung file, use the XML export in the editor and choose XRechnung.

Can I check a Peppol invoice XML file?

Yes. The tool can recognize supported Peppol BIS Billing 3 UBL invoices, show mapped invoice details, and run InvoiceCraftly’s current deterministic preflight checks. It separately states when official Peppol business rules were not run.

Is this a complete EN 16931 validator?

Not yet. The page covers format recognition, mapped fields and bounded deterministic preflight. It does not claim complete EN 16931 Schematron, code-list, recipient or network validation unless those layers explicitly say they ran.

Can I use it as a UBL invoice checker?

The tool recognizes supported UBL invoice structures, including Peppol BIS Billing 3, and can show the fields InvoiceCraftly knows how to map. Generic UBL, including Danish OIOUBL, can be recognized at a basic structure level even when a specific profile is not classified.

Why was my e-invoice rejected?

A rejection can come from XML structure, business rules, code lists, recipient requirements or network delivery. InvoiceCraftly can explain issues that its current preflight can prove from the mapped file, while other validation layers remain clearly marked as not run or not checked.

Which e-invoice formats can InvoiceCraftly read?

The current viewer maps supported Peppol BIS Billing 3 UBL, XRechnung 3.0 UBL and Finvoice 3.0 structures. Other UBL documents, including Danish OIOUBL, can sometimes be recognized without full semantic mapping.

Can InvoiceCraftly fix the XML?

This consolidated viewer and checker explains current findings and can create an editable draft from supported simple outgoing invoices. Corrected XML download remains a later step because fixes must preserve invoice meaning and be validated again.