Factur-X Explained: France's Hybrid E-Invoice Format for the 2026 Mandate
Understand what Factur-X is, why its hybrid PDF/XML design matters for France's 2026 e-invoicing mandate, how its profiles map to EN 16931, and how Complyance keeps your invoices compliant and audit-ready.
Table of Contents
A finance manager opens an invoice and sees a clean, readable PDF. A validation engine opens the exact same file and reads structured XML fields it can check against tax rules in milliseconds. Same document, two audiences, one format. That is the trick Factur-X pulls off, and it is one of the reasons France chose it as a cornerstone of the facturation électronique reform.
From 1 September 2026, all French businesses must be able to receive structured e-invoices, and large and medium-sized companies must issue them. By 1 September 2027, every remaining small and micro business has to issue them too. There is no further delay planned. When you send a compliant invoice, it has to travel in one of the three authorised structured formats: Factur-X, UBL 2.1, or UN/CEFACT CII. Factur-X is often the easiest one to adopt first, because it looks and feels like the PDF invoices your teams already send.
This guide breaks down what Factur-X actually is, why the hybrid design is more than a gimmick, how its five profiles map to the EN 16931 standard, and when it is the right choice. You will also see how Complyance, as an Approved Platform (Plateforme Agréée, or PA), generates, validates, and transmits Factur-X so your teams do not have to build any of it by hand.
What Is Factur-X?
Factur-X is a hybrid invoice format: a single file that is both a human-readable document and a machine-readable data record. Technically, it is a PDF/A-3 file (an archiving-grade PDF standard) with a structured XML invoice embedded inside it as an attachment.
That gives you two layers in one file:
1. The visible PDF layer
A normal-looking invoice your finance, procurement, and audit teams can read, print, and archive. No special software required to view it.
2. The embedded XML layer
A structured data file (using UN/CEFACT CII syntax) that platforms and ERP systems read automatically to validate fields, calculate VAT, and report to the tax administration.
The French tax authority, the DGFiP, recognises Factur-X as a valid structured format because the embedded XML, not the pixels on the page, is the legal, machine-readable invoice. The PDF is the friendly face; the XML is the substance.
Factur-X is the French name for the same specification known in Germany as ZUGFeRD 2.x. The two are aligned, which is one reason the format travels well across Europe.
Why "hybrid" is the whole point
Most structured formats (UBL 2.1, CII) are pure XML. Open one in a text editor and you see tags, not an invoice. That is perfect for machines and painful for humans. A pure PDF, on the other hand, is easy to read but carries no reliable structured data, which is exactly why an emailed PDF is not a compliant e-invoice in France.
Factur-X refuses the trade-off. Here is why that matters in practice:
1. No behaviour change for humans
Your AP clerk, your auditor, and your customer's finance team all still see a readable invoice. Adoption friction drops.
2. Machine-readable by default
The embedded XML flows straight into ERP, accounting, and validation engines with no re-keying and no OCR guesswork.
3. One file, one source of truth
There is no risk of a PDF and a separate XML drifting apart. The data lives inside the document it describes.
4. Archive-friendly
PDF/A-3 is built for long-term retention, which fits the multi-year archiving obligations that come with the mandate.
The Factur-X Profiles
Factur-X is not one fixed data set. It defines five profiles, each carrying a progressively richer amount of structured data in the XML. Lower profiles are lighter and simpler; higher profiles carry enough detail to fully satisfy the EN 16931 semantic standard and beyond.
| Profile | Structured data depth | EN 16931 conformant? | Typical use |
|---|---|---|---|
| MINIMUM | Header + totals only (essentially accounting data, no invoice lines) | No | Very basic exchange; often not enough for full B2B e-invoicing on its own |
| BASIC WL | Header data *without lines* (WL = "without lines") | No | Cases where line detail is handled outside the invoice |
| BASIC | Header + simplified invoice lines | Partial | Simple invoices with limited line-level needs |
| EN 16931 (COMFORT) | Full data set required by the EN 16931 standard | Yes | The recommended default for compliant French B2B e-invoicing |
| EXTENDED | EN 16931 plus additional fields for complex/cross-industry cases | Yes (superset) | Complex invoices, multi-line VAT, sector-specific extensions |
The practical takeaway: the EN 16931 (COMFORT) profile is the safe default for France. It carries the full structured data set the reform expects, including the new mandatory fields, while staying lean. Reach for EXTENDED only when your invoices need extra detail that COMFORT cannot express.
A word of caution on MINIMUM and BASIC WL. These lightweight profiles carry no (or no complete) line-level data. On their own they are usually not sufficient for compliant domestic B2B e-invoicing, because the reform expects structured line and VAT detail. Treat them as edge cases, not defaults.
How Factur-X Maps to EN 16931
EN 16931 is the European semantic standard for electronic invoicing. It is not a file format. It is a shared vocabulary that defines what an invoice must contain: the seller, the buyer, the invoice lines, the VAT breakdown, the totals, the payment terms, and so on. Each of those concepts is a defined "business term" with a code (for example, BT-1 is the invoice number).
France's whole approach is built on EN 16931. The three authorised formats are simply three different syntaxes that carry the same EN 16931 semantics:
- Factur-X (COMFORT profile and up) expresses EN 16931 business terms in CII XML, wrapped in a PDF.
- UBL 2.1 expresses the same business terms in OASIS UBL XML.
- UN/CEFACT CII expresses them in CII XML without the PDF wrapper.
Because they all share the EN 16931 backbone, a compliant platform can convert between them without losing meaning. A field like the buyer's identifier means the same thing whether it lives in a Factur-X file or a UBL file. Only the tag names differ.
France's reform also layers in four new mandatory fields on top of the existing legal mentions, and these must be carried in the XML:
1. Buyer SIREN. The buyer's legal identifier on domestic B2B invoices.
2. Delivery address. Where goods are delivered, when it differs from the billing address.
3. Nature of the operation. Goods, services, or both.
4. VAT-on-payments option. A flag for when VAT is due on payment rather than on the invoice date.
A COMFORT or EXTENDED Factur-X file has the structure to carry all four. A MINIMUM file does not, another reason the richer profiles are the practical choice.
A Small Illustrative Factur-X XML Snippet
Inside every compliant Factur-X file sits a CII XML document. You will rarely write this by hand (your platform generates it), but seeing a fragment demystifies what "embedded structured XML" really means. Below is a simplified, illustrative excerpt (not a full valid document) showing a few EN 16931 business terms and the profile declaration:
<rsm:CrossIndustryInvoice
xmlns:rsm="urn:un:unece:uncefact:data:standard:CrossIndustryInvoice:100"
xmlns:ram="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:100">
<rsm:ExchangedDocumentContext>
<ram:GuidelineSpecifiedDocumentContextParameter>
<!-- Profile: EN 16931 (COMFORT) -->
<ram:ID>urn:cen.eu:en16931:2017</ram:ID>
</ram:GuidelineSpecifiedDocumentContextParameter>
</rsm:ExchangedDocumentContext>
<rsm:ExchangedDocument>
<ram:ID>FR-2026-000123</ram:ID> <!-- BT-1 Invoice number -->
<ram:TypeCode>380</ram:TypeCode> <!-- 380 = commercial invoice -->
<ram:IssueDateTime>
<udt:DateTimeString format="102">20260915</udt:DateTimeString>
</ram:IssueDateTime>
</rsm:ExchangedDocument>
<!-- Buyer, incl. mandatory buyer SIREN, carried in the trade agreement block -->
<ram:BuyerTradeParty>
<ram:Name>ACME Buyer SAS</ram:Name>
<ram:SpecifiedLegalOrganization>
<ram:ID schemeID="0002">552081317</ram:ID> <!-- Buyer SIREN -->
</ram:SpecifiedLegalOrganization>
</ram:BuyerTradeParty>
</rsm:CrossIndustryInvoice>The profile is declared right at the top (urn:cen.eu:en16931:2017), so any receiving platform immediately knows how rich the data set is. The invoice number, type code, issue date, and buyer SIREN are all structured business terms a validator can check automatically. That is the machine-readable half of the hybrid working.
The Transition Period: PDFs Before the Structured Cutover
Not every business will be ready to emit a fully structured file on day one. France allows a transition: until December 2027, businesses may send plain PDFs to their Approved Platform for conversion. The PA takes the PDF, extracts the data, and builds a compliant structured invoice (for example a Factur-X or UBL 2.1 file) before transmitting it onward. This is a bridge, not a permanent lane, so treat structured issuance as the target and use PDF conversion only while you finish your integration.
When to Use Factur-X
Factur-X is not automatically the right format for every scenario, but it is often the smoothest starting point. Use this logic:
1. Choose Factur-X when humans still need to read the invoice.
If your customers, auditors, or internal teams expect a visible document, the hybrid PDF keeps everyone comfortable while satisfying the machine-readable requirement.
2. Choose Factur-X (COMFORT) as your compliant default.
It carries the full EN 16931 data set and the four new mandatory French fields, with a readable face on top.
3. Consider pure UBL 2.1 or CII for high-volume, system-to-system flows.
When two systems exchange thousands of invoices and no human ever looks at them, a lean XML format can be more efficient than carrying a PDF each time.
4. Let your platform convert as needed.
Your buyer's platform may prefer a different format. An Approved Platform (PA) like Complyance converts between Factur-X, UBL, and CII automatically, so you can standardise on one internally and still reach everyone.
Why Choose Complyance for Factur-X and French E-Invoicing?
Building and validating Factur-X by hand means wrangling PDF/A-3 embedding, CII XML schemas, EN 16931 business rules, and the new French fields, for every invoice. Complyance handles all of it as your Approved Platform (PA).
1. Generate valid Factur-X automatically
Feed Complyance your invoice data and it produces a correctly structured Factur-X file: right profile, valid PDF/A-3 wrapper, schema-clean CII XML, and the four mandatory French fields included.
2. Real-time validation before anything is sent
Every invoice is checked against EN 16931 rules and French requirements up front, so errors are caught and explained in plain language instead of surfacing as a rejection later.
3. Convert between formats on demand
Standardise on Factur-X internally; Complyance converts to UBL 2.1 or CII when a buyer's platform needs it, without you touching a schema.
4. Developer-friendly by design
Clean APIs, a sandbox with test data, and predictable responses let your developers integrate in days, not months.
5. Compliance that keeps up
As the French rules and formats evolve toward 2027 and the EU's ViDA reforms, Complyance updates the mappings so your integration stays valid.
Ready to send compliant Factur-X invoices?
Complyance gives your finance, IT, and developer teams the tooling and expert support to adopt Factur-X and the French mandate without the schema headaches. Talk to Complyance to see it in a sandbox.
Conclusion: Factur-X Gives You Both Readability and Compliance
Factur-X is the format that refuses to choose between people and machines, and that is exactly why it fits France's 2026 mandate so well. Before you adopt it, run through this checklist:
- Confirm your invoices need to be human-readable (if so, Factur-X fits)
- Standardise on the EN 16931 (COMFORT) profile as your default
- Map your data to the four new mandatory French fields (buyer SIREN, delivery address, nature of operation, VAT-on-payments option)
- Decide where EXTENDED is needed for complex invoices
- Choose an Approved Platform that generates and validates Factur-X for you
- Use the PDF-to-structured conversion path only as a bridge before December 2027
- Test in a sandbox well before September 2026
Get the format right now, and the mandate becomes a formality rather than a fire drill.
Related posts
Frequently Asked Questions
Factur-X is a hybrid invoice format: a single PDF/A-3 file that a person can read normally, with a structured XML invoice embedded inside it that machines read automatically. It gives you a human-readable document and machine-readable data in one file, which is why France accepts it as a compliant e-invoice format.
Yes, they share the same specification. Factur-X is the French name and ZUGFeRD 2.x is the German name for the aligned hybrid PDF/XML format. This alignment makes the format easier to use across European trade.
The EN 16931 (COMFORT) profile is the recommended default. It carries the full EN 16931 data set plus the structure needed for France's four new mandatory fields. Use EXTENDED only when you need extra detail COMFORT cannot express, and avoid MINIMUM or BASIC WL for standard B2B invoices because they lack full line data.
No. An ordinary PDF has no reliable structured data, so on its own it is not a compliant French e-invoice. Factur-X looks like a PDF but contains embedded structured XML, and that XML is the legally meaningful, machine-readable invoice. During the transition period (until December 2027) you may send a plain PDF to your Approved Platform, which converts it into a structured invoice for you.
No. An Approved Platform (PA) such as Complyance generates the PDF/A-3 wrapper and the embedded CII XML for you from your invoice data, validates it against EN 16931 and French rules, and transmits it. You provide the invoice content; the platform handles the format.
Yes. Because all three authorised formats share the EN 16931 semantic standard, a compliant platform can convert Factur-X to UBL 2.1 or CII (and back) without losing invoice meaning. Complyance does this automatically when a buyer's platform prefers a different format.






















