Build French Electronic Invoice for PDP Routing (UBL 2.1 / CII — EN 16931)
Skill: Assemble an invoice into an e-invoice routed through a certified PDP in the Y-model
Region: France Category: Tax — E-invoicing Does: Takes ordinary invoice data and assembles a structured electronic invoice in one of the reform's accepted formats — UBL 2.1, UN/CEFACT CII, or hybrid Factur-X — conforming to EN 16931 (the European semantic standard) plus French extensions (CTC data), for routing through a certified Plateforme de Dématérialisation Partenaire (PDP) in the Y-model of the French facturation électronique reform. Spec: DGFiP — réforme de la facturation électronique; EN 16931 + UBL 2.1 / CII syntaxes; French CTC extension (current external specifications)
From the 2026–2027 deployment, all domestic B2B invoices between French taxable persons must be issued, transmitted and received as structured e-invoices via certified PDPs. Accepted core formats are UBL 2.1, CII and Factur-X (the three socle formats), all aligned to EN 16931, enriched with reform-specific fields (lifecycle/statut, données de TVA, mentions). This skill builds the structured invoice; it complements the Factur-X skill, which embeds CII inside a PDF/A-3. Element names below follow EN 16931 / UBL-CII and the reform specifications, not a verbatim XSD.
When this applies
- A French taxable person issues a domestic B2B invoice to another French taxable person (within the e-invoicing mandate).
- The invoice must be a structured format (UBL 2.1, CII, or Factur-X) compliant with EN 16931 and the DGFiP external specifications, carrying the CTC data the DGFiP extracts.
- Issuance, transmission and lifecycle statuses (statuts de cycle de vie) flow through a certified PDP; the PPF acts as annuaire (directory) and data concentrator, not as a routing platform.
Structure (invoice → UBL 2.1 / CII)
Invoice (UBL 2.1) / CrossIndustryInvoice (CII)
CustomizationID / spec identifier EN 16931 + French CTC extension
ID, IssueDate, InvoiceTypeCode, DocumentCurrencyCode = EUR
AccountingSupplierParty vendeur: SIREN/SIRET, numéro de TVA intracommunautaire, adresse
AccountingCustomerParty acheteur: SIREN/SIRET (routage via annuaire), TVA
PaymentMeans / PaymentTerms
InvoiceLine* désignation, quantité, prix HT, TVA par ligne
TaxTotal / TaxSubtotal base HT par taux, montant TVA, code catégorie TVA
LegalMonetaryTotal total HT, total TVA, total TTC, net à payer (EUR)
Data rules
- Both parties identified by SIREN/SIRET; the buyer's SIRET drives routage via l'annuaire to the correct receiving PDP. Numéro de TVA intracommunautaire carried where required.
- VAT category codes and rates (20 %, 10 %, 5,5 %, 2,1 %) per line; TaxSubtotal per rate; mandatory mentions (e.g. autoliquidation, option pour le paiement de la TVA d'après les débits) included.
- Monetary totals in EUR: sum of line nets = total HT; line/TVA totals must satisfy EN 16931 calculation rules (BR-CO checks) within rounding tolerance.
- The invoice must pass the EN 16931 schematron plus the French CTC business rules; the PDP performs format/conformity controls before transmission.
- Lifecycle statuses (déposée, reçue, approuvée/refusée, encaissée) are exchanged via the PDP and reported to the DGFiP; required statuses must be supported.
Worked example (outline)
Invoice (UBL 2.1) CustomizationID = EN16931 + extension FR
ID FAC-2026-0042, IssueDate 2026-10-03, currency EUR
Supplier SIRET 12345678900012, TVA FR40123456789
Customer SIRET 98765432100021 (routage annuaire), TVA FR55987654321
Line 1: prestation, qté 1, prix HT 1,000.00, TVA 20%
TaxSubtotal 20%: base 1,000.00, TVA 200.00
LegalMonetaryTotal: HT 1,000.00, TVA 200.00, TTC 1,200.00
Validated against EN 16931 + French CTC rules and transmitted to the buyer through the certified PDP; lifecycle statuses and VAT data are reported to the DGFiP.
Validation checklist
- Format is a socle format (UBL 2.1 / CII / Factur-X) aligned to EN 16931
- Supplier and customer SIRET present; buyer SIRET resolvable in the annuaire
- VAT rates, category codes and mandatory mentions correct per line
- Totals in EUR satisfy EN 16931 calculation rules (HT/TVA/TTC tie out)
- Passes EN 16931 schematron + French CTC business rules
- Required lifecycle statuses supported and reported via the PDP
- Routed through a certified PDP per the reform calendar (2026–2027)
Last updated: 2026-06-04 — confirm the current socle formats, EN 16931 + French CTC external specifications, annuaire/routage rules, lifecycle statuses, and the reform deployment calendar against current DGFiP (impots.gouv.fr) and PDP guidance before use.