France's e-invoicing reform phases in reception and issuance obligations for domestic B2B transactions starting 1 September 2026. This page is honest about what Vantane supports today versus what's coming — no degraded guesses, per our own product principles.
All French businesses must be able to receive structured e-invoices from 1 September 2026. Issuance phases in by size: large and mid-size businesses (ETI) from 1 September 2026, small and micro businesses from 1 September 2027. Invoices must be routed through an accredited platform (a PDP, or the public PPF) in an accepted format — Factur-X (hybrid PDF/CII), UBL, or CII.
Query the live routing matrix — this is the same data your integration can check at runtime before deciding how to handle a French buyer:
curl -sS https://vantane.com/v1/capabilities | grep -A4 'fr-buyer-facturx-mandate'
As of today, native Factur-X generation is not yet implemented
(supported: false for French-buyer routing). We're not going to pretend
otherwise or hand you an invalid document — /v1/capabilities states this
plainly so your integration can detect it and branch, rather than silently producing
something a PDP will reject.
Document generation and validation (EN 16931 / Peppol BIS 3.0 UBL) are not country-specific — they work identically for any buyer. And Peppol network delivery is not gated by buyer country either: whenever a buyer is reachable on Peppol (has a registered participant identifier), Vantane delivers to them over the network today, regardless of whether they're French. Try it in sandbox:
curl -sS https://vantane.com/v1/validate \
-H 'content-type: application/json' \
-d '{"id":"FR-GUIDE-DOM-01","invoiceTypeCode":"380","issueDate":"2026-07-01","dueDate":"2026-07-31","currencyCode":"EUR","buyerReference":"PO-7001","seller":{"name":"Lyon Software SAS","vatId":"FR12345678901","registrationNumber":"123456789","address":{"line1":"10 Rue de la République","city":"Lyon","postalCode":"69001","countryCode":"FR"},"electronicAddress":{"scheme":"0088","value":"3760012345670"}},"buyer":{"name":"Marseille Retail SARL","vatId":"FR98765432109","registrationNumber":"987654321","address":{"line1":"5 Rue Saint-Ferréol","city":"Marseille","postalCode":"13001","countryCode":"FR"},"electronicAddress":{"scheme":"0088","value":"3760098765430"}},"lines":[{"id":"1","description":"Point-of-sale software licence","quantity":1,"unitCode":"EA","unitPrice":60000,"vat":{"categoryCode":"S","rate":20}}],"paymentMeans":{"typeCode":"30","iban":"FR7630006000011234567890189","bic":"AGRIFRPP","accountName":"Lyon Software SAS"}}'
curl -sS https://vantane.com/v1/invoices \
-H 'authorization: Bearer vantane_sandbox_public' \
-H 'content-type: application/json' \
-d '{"invoice":{"id":"FR-GUIDE-DOM-01","invoiceTypeCode":"380","issueDate":"2026-07-01","dueDate":"2026-07-31","currencyCode":"EUR","buyerReference":"PO-7001","seller":{"name":"Lyon Software SAS","vatId":"FR12345678901","registrationNumber":"123456789","address":{"line1":"10 Rue de la République","city":"Lyon","postalCode":"69001","countryCode":"FR"},"electronicAddress":{"scheme":"0088","value":"3760012345670"}},"buyer":{"name":"Marseille Retail SARL","vatId":"FR98765432109","registrationNumber":"987654321","address":{"line1":"5 Rue Saint-Ferréol","city":"Marseille","postalCode":"13001","countryCode":"FR"},"electronicAddress":{"scheme":"0088","value":"3760098765430"}},"lines":[{"id":"1","description":"Point-of-sale software licence","quantity":1,"unitCode":"EA","unitPrice":60000,"vat":{"categoryCode":"S","rate":20}}],"paymentMeans":{"typeCode":"30","iban":"FR7630006000011234567890189","bic":"AGRIFRPP","accountName":"Lyon Software SAS"}},"options":{"deliver":true}}'
Be precise about what this does and doesn't satisfy: delivering a Peppol
BIS 3.0 UBL document to a Peppol-reachable French buyer is a real, working, compliant
e-invoice — but it does not by itself satisfy the French national mandate's specific
PDP/PPF-routing requirement. If you must comply with the French domestic mandate today,
you need a PDP that speaks Factur-X/PPF routing; if you simply need to send a legally
compliant e-invoice to a French counterparty who happens to be Peppol-reachable (e.g.
outside the mandate's current scope, or as an EU cross-border transaction), this already
works. We'll update this page the moment native Factur-X/PDP routing ships — track the
date via /v1/capabilities rather than a changelog you'd have to remember to
check.
See also: Belgium · Germany · How delivery works