The three e-invoice formats, compared
European e-invoicing rests on two XML syntaxes — UBL 2.1 and CII — plus one hybrid wrapper, the PDF that carries CII inside it. Same standard, very different reading experience.
The comparison in one table
| Format | What it is | Extension | Readable without a tool? | Where you meet it |
|---|---|---|---|---|
| UBL 2.1 | An invoice written entirely in XML, following the OASIS standard | .xml | No — a tree of tags | Platform-to-platform exchange, profiles such as Peppol BIS Billing 3.0 and XRechnung |
| CII (UN/CEFACT) | An invoice written entirely in XML, following the UN/CEFACT library | .xml | No — a tree of tags | Platform-to-platform exchange, and inside every hybrid PDF |
| Factur-X / ZUGFeRD | A PDF/A-3 that displays a page and carries a CII XML attachment | .pdf | The page yes, the data no | Invoices sent to recipients who also want to see the invoice |
What they have in common
All three comply with EN 16931. That means they share one model: the same information, named by the same identifiers — BT-1 for the invoice number, BT-9 for the due date, BT-115 for the amount due — and subject to the same consistency rules, numbered BR-xx.
The same invoice expressed in UBL and then in CII therefore contains exactly the same information, written with different tag names. That property is what lets one tool read all three and apply the same checks to each.
What actually separates them
- The syntax. UBL and CII are two XML vocabularies saying the same thing:
cbc:IDin one,ram:IDin the other. - The wrapper. Factur-X and ZUGFeRD are not a third syntax: they are CII placed inside a PDF. The printable page is for you, the XML is for the machine.
- Immediate convenience. A hybrid PDF opens on a double-click and shows something. A UBL or CII file shows nothing usable without a tool.
- The declared profile. Every file announces which variant of the standard it follows: Factur-X BASIC or EN 16931, Peppol BIS Billing 3.0, XRechnung. The profile sets the level of detail to expect.
How to tell which one you received
- Look at the extension. A
.pdfsent to you as an electronic invoice is probably a hybrid one. An.xmlis UBL or CII. - Open the XML in a text editor and read the first tag.
InvoiceorCreditNotemeans UBL;CrossIndustryInvoicemeans CII. - Or simply drop the file. Format and profile are identified as it is read and shown at the top of the invoice, with nothing for you to choose.
That last method is the safest: a file can carry a misleading extension, but its content does not lie.
Is one of them better?
You do not choose what your suppliers send you, so the question only really arises when you start issuing invoices yourself — and the date that happens depends on your country, as the page on obligations explains.
At that point the summary is simple: a hybrid PDF stays readable to a poorly equipped recipient while remaining machine-usable. UBL and CII are lighter and often simpler for a business system to produce. In practice, your invoicing software will decide for you.
Frequently asked questions
Is there a fourth permitted format?
EN 16931 fixes two syntaxes, UBL 2.1 and CII. Names such as Peppol BIS Billing 3.0, XRechnung or EN 16931 (COMFORT) are not extra formats: they are tighter variants of those same syntaxes.
Can one file be both UBL and a hybrid PDF?
No. Factur-X and ZUGFeRD carry CII, never UBL. If you receive a PDF containing structured data, that data is CII; a UBL file always arrives on its own, with no printable page.
Does the format change the amount I have to pay?
No. The format decides how the invoice is written, not what it says. The amount due is the same whatever the wrapper. A file can of course contain an arithmetic inconsistency, and that is what the EN 16931 checks are there to catch.
Can Lekteo convert a UBL file into a hybrid PDF?
No. It does not convert between formats and issues no invoices. It reads all three, lays them back out, checks them, and lets you export the data as JSON or CSV to use elsewhere.