Convert PEPPOL UBL XML to UN/CEFACT CII — Free Online Tool
Drop a PEPPOL BIS 3.0 or XRechnung UBL invoice and get the equivalent UN/CEFACT CII (EN 16931) XML — the syntax embedded inside Factur-X / ZUGFeRD. Every EN 16931 field is mapped; invoices and credit notes are both supported.
Drop a PEPPOL BIS 3.0 or XRechnung UBL 2.1 invoice or credit note. Files are processed in your browser session and not retained.
2
Map UBL to CII
Every UBL element is mapped to its UN/CEFACT CII equivalent: parties, VAT breakdown, document-level allowances and charges, monetary totals and lines — into the EN 16931 CII structure (rsm:CrossIndustryInvoice).
3
Download CII XML
Get back a UN/CEFACT CII (EN 16931) XML file, ready to embed in a Factur-X / ZUGFeRD PDF or send to any system that ingests CII. Dates are reformatted from UBL's YYYY-MM-DD to CII's YYYYMMDD.
When to convert UBL to CII
Produce the XML for Factur-X / ZUGFeRD
Factur-X and ZUGFeRD embed a CII XML inside a PDF/A-3. Convert your PEPPOL UBL to CII to get the exact payload to embed for the German B2B mandate or the French e-invoicing reform.
Feed SAP, DATEV & CII-native ERPs
Some German ERP and accounting systems ingest UN/CEFACT CII directly. Convert PEPPOL UBL invoices to CII so they import without a UBL adapter.
Migrate PEPPOL to ZUGFeRD archives
Companies moving between the PEPPOL and ZUGFeRD ecosystems can re-emit existing UBL invoices as CII without rebuilding the data from scratch.
Credit notes included
Both invoices (TypeCode 380) and credit notes (TypeCode 381) convert, so your full document flow — not just invoices — can move from UBL to CII.
What gets mapped from UBL to CII?
Header fields (invoice number, dates, type code, currency, buyer reference); seller and buyer parties with addresses, VAT IDs and legal registration; payee; payment means (SEPA IBAN / BIC); document-level allowances and charges; the VAT breakdown with exemption reasons; monetary totals; and all invoice or credit-note lines with item details, classification codes, pricing and line-level tax. Both INVOICE (TypeCode 380) and CREDIT_NOTE (TypeCode 381) are supported.
Which output profile is produced?
The output is UN/CEFACT CII conforming to EN 16931 — the COMFORT profile used by Factur-X EN 16931 and ZUGFeRD. This is the profile recommended for the German B2B mandate and accepted by the French e-invoicing reform. Wrap it in a PDF/A-3 with our UBL → Factur-X tool to get a complete hybrid invoice.
UBL to CII: FAQ
What does the UBL to CII converter produce?
It produces a UN/CEFACT CII (Cross Industry Invoice) XML file conforming to EN 16931 — the COMFORT profile used inside Factur-X and ZUGFeRD. You can embed this XML in a PDF/A-3 to create a hybrid invoice, or send it to any system that ingests CII directly.
Which UBL formats can I convert?
Any EN 16931-based UBL 2.1 invoice or credit note: PEPPOL BIS 3.0 and XRechnung (UBL syntax) are both accepted. The converter reads the standard cac: / cbc: structure, so files exported from most ERPs work as long as they follow UBL 2.1.
Does it handle credit notes?
Yes. A UBL CreditNote (root ubl:CreditNote) is converted to CII with TypeCode 381; a UBL Invoice becomes TypeCode 380. Lines, quantities and billing references are mapped accordingly.
How are dates and amounts handled?
UBL ISO dates (YYYY-MM-DD) are reformatted to CII format 102 (YYYYMMDD). Monetary amounts keep their original precision and currency identifiers; the document currency is copied to InvoiceCurrencyCode.
How do I turn the CII into a Factur-X PDF?
Use our UBL to Factur-X converter, which produces the hybrid PDF/A-3 directly (visual PDF + embedded CII) in one step. The UBL to CII tool is for when you need the raw CII XML on its own — for example to embed it with your own PDF tooling or feed a CII-native system.
Is my file stored?
No. Files are uploaded over HTTPS to EU-based servers, processed in memory, and discarded immediately after conversion. No login is required to use the converter.