Format guide

The CII format, made simple

What a Cross Industry Invoice contains, how CII relates to Factur-X and EN 16931, the four blocks of the XML, and the free tools to read, validate and convert it.

What is CII?

CII, short for Cross Industry Invoice, is the invoice syntax of UN/CEFACT, the United Nations body for trade standards. In European e-invoicing it is one of the two XML syntaxes accepted by the EN 16931 standard, alongside UBL. A CII file is the entire invoice as structured data: seller and buyer, line items, VAT breakdown, totals and payment terms, with no visible page attached.

The schema release used everywhere today is D16B. When a platform, an ERP or a validator says CII, it means a CrossIndustryInvoice document against the D16B schema, restricted by the EN 16931 rules.

CII, Factur-X and EN 16931: who does what

EN 16931 is the semantic model: it names every piece of information an invoice may carry, the business terms (BT-1 to BT-165, grouped in BG blocks), without fixing any XML. CII and UBL are the two syntaxes that write this model down. Factur-X is not a third syntax: it is a PDF/A-3 container with a CII file named factur-x.xml embedded inside, so every Factur-X invoice is a CII invoice wearing a readable PDF. The container side is covered in the Factur-X format guide.

A CII file declares which rulebook it follows in its specification identifier (BT-24):

<ram:GuidelineSpecifiedDocumentContextParameter>
  <ram:ID>urn:cen.eu:en16931:2017</ram:ID>
</ram:GuidelineSpecifiedDocumentContextParameter>

That identifier decides which validation rules apply. For a standalone CII invoice, urn:cen.eu:en16931:2017 is the normal choice; the Factur-X URNs declare the hybrid profiles, from MINIMUM to EXTENDED.

The four blocks of a CII invoice

A CrossIndustryInvoice document always has the same skeleton: a context block saying which profile the file claims, a header with number, type and date, the transaction with the line items and parties, and the settlement with currency, VAT and totals.

BlockXML elementWhat it holds
ContextExchangedDocumentContextThe specification identifier (BT-24)
HeaderExchangedDocumentInvoice number (BT-1), type code (BT-3), issue date (BT-2)
TransactionSupplyChainTradeTransactionThe line items, then the parties and the delivery
SettlementApplicableHeaderTradeSettlementCurrency, payment, VAT breakdown, totals

One CII quirk trips up most newcomers: the line items come first, the header-level parties and totals after them, and the element order is fixed by the schema. A file with shuffled blocks fails the XSD before any business rule runs.

To read a real file block by block: A Factur-X example, read field by field walks through a complete CII invoice.

Two files to keep open while reading: the valid CII XML of a French B2B invoice and its deliberately invalid twin, both in the example library.

CII in the French reform

The French exchange network accepts three formats, the socle: Factur-X, UBL and standalone CII. A pure CII XML is a legal e-invoice in the network, no PDF wrapper required; the Plateformes Agréées read, route and archive it like any hybrid, and Chorus Pro takes CII for public-sector invoicing too.

On top of the EN 16931 rules, a domestic French B2B invoice must satisfy the BR-FR layer of the mandate: the buyer's SIREN, the category of the operation, and the other French mentions. The CII validator checks both layers on one upload: validate a CII file.

Work with CII files right here

Frequently Asked Questions

Common questions about the CII format.

They are two XML syntaxes for the same EN 16931 invoice model, carrying the same business terms. CII is the UN/CEFACT syntax used inside Factur-X and ZUGFeRD; UBL is the OASIS syntax used on Peppol. The two convert into each other without loss.
Yes. The socle of the reform names three formats: Factur-X, UBL and CII. A standalone CII file is a valid e-invoice on its own; the PDF page of Factur-X is a convenience for humans, not a requirement.
It is the UN/CEFACT schema release (the second of 2016) that EN 16931 froze for CII invoices. Every compliant CII file, standalone or embedded in a Factur-X, validates against the D16B XSD.
Any text editor shows the raw XML, but the readable way is the viewer, which renders the file like a paper invoice; the CII to PDF tool turns it into an actual PDF.
ZUGFeRD, like Factur-X, is a hybrid PDF carrying a CII file; since ZUGFeRD 2.0 the two standards are identical. The XML inside is plain CII, so every CII tool on this site reads it.
For a standalone B2B invoice, urn:cen.eu:en16931:2017. A file meant to be embedded in a Factur-X declares the Factur-X profile URN instead. MINIMUM and BASIC WL identifiers mark header-only documents that do not count as invoices under the French mandate.
Ready for 2026 e-invoicing?

Send, receive and comply, without an ERP

Create your account to send and receive over the network, and keep every file compliant.

EN 16931 & PDF/A-3b compliant Results in seconds No installation Plateforme Agréée ready
Unlock unlimited tools