Products

Factur-X Compliance Checklist: A Practical Guide

#Factur-X #ZUGFeRD
Published August 31, 2026

France's e-invoicing mandate takes effect September 1, 2026 — and Factur-X is one of the three formats the reform recognizes. If you issue or receive invoices tied to French business, or you're building the software that does, use this checklist to check your readiness.

Need more info on Factur-X? Check out Factur-X: Is Your Business Ready for 2026?

1. Confirm You Need to Act

  • ☐ You issue or receive invoices for customers/suppliers in France
  • ☐ You build ERP, accounting, or invoicing software used by companies operating in France
  • ☐ You currently generate invoices as plain PDFs, paper, or another format outside UBL/CII/Factur-X

If any of these apply, the deadline applies to you.

2. Know Your Deadline

  • September 1, 2026 — every VAT-registered business in France must be able to receive structured e-invoices; large and mid-sized companies must also be able to issue them
  • September 1, 2027 — SMEs, micro-enterprises, and certain non-established taxable persons operating in France join the issuing obligation
  • ☐ You've confirmed which size category your business (or your customers) fall into, since the two dates apply differently

3. Understand What Factur-X Actually Is

  • ☐ You know Factur-X combines a human-readable PDF with a machine-readable XML file inside a single PDF/A-3 document
  • ☐ You know the XML layer uses the UN/CEFACT Cross Industry Invoice (CII) syntax
  • ☐ You know Factur-X aligns with EN 16931, the European semantic standard for e-invoicing
  • ☐ You know Factur-X and Germany's ZUGFeRD (2.0 and later) are technically the same format — one spec, two names

4. Choose the Right Profile

Factur-X defines five profiles, each building on the last. Pick based on how much automation your invoices need:

  • MINIMUM — header and totals only, no line items
  • BASIC WL (Without Lines) — more header detail, still no line items
  • BASIC — adds line-item detail
  • EN 16931 — full EU semantic compliance; the profile most businesses should target
  • EXTENDED — adds sector-specific or country-level tax fields on top of EN 16931

5. Build Toward a Compliant PDF

  • ☐ Your PDF is converted to PDF/A-3 (the only PDF/A variant that allows embedding non-PDF/A-compliant files)
  • ☐ Your invoice XML is validated against the CII schema for your chosen profile
  • ☐ Your XML file is named factur-x.xml and embedded as an associated file
  • ☐ Your AFRelationship value matches the target country — Alternative for German ZUGFeRD, Data or Source for French Factur-X
  • ☐ Your PDF includes the required XMP metadata and PDF/A-3 extension schema (document type, embedded filename, conformance level, version)

6. Validate Before You Ship

  • ☐ Every finished invoice is run through a Factur-X/ZUGFeRD validator
  • ☐ Validation checks both PDF/A-3 conformance and profile-specific XML content
  • ☐ You've tested invoices for each profile and each target country (France vs. Germany) separately, since the AFRelationship value differs

7. Plan Your Technical Approach

  • ☐ You've decided whether to build in-house or use a PDF SDK to handle the PDF/A-3 packaging, file embedding, and metadata work
  • ☐ If you already generate ZUGFeRD invoices for German customers, you've confirmed how much of that pipeline can be reused for France (often just the profile and AFRelationship value need to change)
  • ☐ Your invoicing logic — not your PDF tooling — is responsible for generating compliant XML data; a PDF library can package and structure a compliant file, but can't generate the invoice data itself

Next step: if you're evaluating tools to handle the PDF/A-3 conversion and embedding work, Datalogics' Adobe PDF Library includes sample code for Factur-X/ZUGFeRD conversion in C++, .NET, and Java.