Global CII Invoice Generator
UN/CEFACT Cross Industry Invoice (CII, D16B) — the second EN 16931 syntax — for PA and PDP endpoints that require CII. For Odoo 18 & 19.
EN 16931 has two syntaxes: UBL and UN/CEFACT CII. Many public administrations and French PDPs (Plateformes Agréées) accept — or require — the CII syntax rather than UBL. This module is the CII counterpart of the engine’s UBL builder: it turns the same invoice into a conformant CrossIndustryInvoice XML, validates it against the CEN business rules, and hands it to whatever transport you run yourself (BYOK).
CII D16B builder profiles
Generate the UN/CEFACT CrossIndustryInvoice (schema D16B) in three
country-agnostic conformance profiles: EN 16931 (core),
BASIC WL (header and totals without trade lines) and a
Peppol-aligned context. Each profile emits the correct
GuidelineSpecifiedDocumentContextParameter/ID URN so the
receiver and the EN 16931 validators recognise it.
EN 16931 CEN business rules
Every document is checked before you send it: the BR / BR-CO core rules (seller and buyer name and country, line item names, quantities, net amounts, total coherence, credit-note referencing) plus CII-specific BR-CII rules — valid UN/ECE Rec 20 unit codes, UNTDID 5305 VAT categories, UNTDID 1001 document type and ISO 4217 currency. Results are reported per rule code.
Real code-list algorithms
No placeholders: genuine UN/ECE Rec 20 unit-of-measure resolution from your Odoo units, UNTDID 5305 VAT-category resolution from the rate together with reverse-charge, intra-community, export and exemption flags, ISO 8601 / format-102 dates, and the EN 16931 monetary derivation (grand total = basis + tax; payable = grand total − prepaid).
One click from the invoice
Enable it on the company, pick a default profile, and a CII e-Invoice tab appears on customer invoices and credit notes. Validate and generate with header buttons, download the CII XML, and read the deterministic SHA-256 document hash for your audit trail. Posted documents are auto-flagged so nothing is forgotten.
Built on the shared e-Invoice engine
This module layers on the e-Invoice Core Engine and the shared
CII builder — it duplicates no stack. It registers a global
global_cii profile and a generator hook, so it slots into the
same e-invoicing menu, document model and validation framework the rest
of the suite uses. The Odoo-free services are fully unit-tested with
plain Python.
Your data stays yours (BYOK)
This module generates and stores the CII XML on your own database. It does not transmit anything anywhere. Sending the document to a public administration, a French PDP or a Peppol access point is handled by your separately configured connector, using your own credentials and endpoints. Compatible with Odoo 18 and Odoo 19.
Screenshots
Invoice With Generated Cii D
E Invoice Document With Cii
Update date: 2026-07-02