Search
France

Regional spotlight

Formats? Mandates?
We've got you covered!

  • Overview of B2G, B2B and B2C e-invoicing in France.
  • Key formats, networks and channels you may need to support.
  • High-level regulatory and compliance considerations.

Read the Regional spotlight

e-invoicing in France

France is one of Europe’s most ambitious e-invoicing transitions. Mandatory B2B e-invoicing is being rolled out in phases: from September 2026, all businesses must be able to receive structured e-invoices, and large and mid-sized companies must also begin sending them. SMEs and micro-enterprises follow from September 2027. A key feature of the French model is that all domestic B2B invoices must flow through government-certified platforms called Plateformes Agréées (PA); direct point-to-point invoicing between companies is not permitted. Peppol is one of the accepted exchange formats between platforms, and a central directory (Annuaire) via the PPF (Portail Public de Facturation) enables recipient lookup. B2G e-invoicing has been mandatory since January 2020 via Chorus Pro.

Maventa is currently building support for France. The first priority is meeting the 1 September 2026 deadline, so that French companies can receive structured e-invoices through Maventa. Sending and e-reporting will follow.

Timeline

The French mandate applies in two phases. Alongside the legal deadlines, here is when Maventa’s support becomes available, so you can plan your build and testing.

Date Milestone
Mid-August 2026 Maventa: all the pieces needed for the receiving mandate are in place. Partners can start testing.
1 September 2026 Mandate: all French businesses must be able to receive e-invoices. Large and mid-sized companies must also begin sending.
Early autumn 2026 Maventa: AutoScan begins full line-level scanning, needed for e-reporting.
1 September 2027 Mandate: SMBs must also begin sending and e-reporting.

Most of our partners serve SMBs. For an SMB, only receiving is mandatory from 1 September 2026. Sending and e-reporting do not become mandatory until September 2027, and Maventa will deliver both well before that deadline.

If you serve larger companies, which must also begin sending from 1 September 2026, please get in touch with Maventa.

How e-invoicing works in France

France requires all e-invoicing traffic to pass through certified platforms, called Plateformes Agréées (PA). A PA:

The government system, the PPF (Portail Public de Facturation), manages the central directory and collects the tax data.

Maventa is not becoming a certified platform. Instead, Maventa partners with MySupply, which acts as the PA and handles the French regulatory layer: invoice validation, directory management, tax data submission, and government communication. Maventa handles routing, format conversion, and delivery to your integration.

Registering a French company

France is currently supported only for selected partners. To register French companies in Maventa, your vendor account must be enabled for it first. Please contact Maventa Support for more information on how to set this up with your ERP for French companies.

Enabling French support for selected partners lets Maventa keep the rollout controlled while support is still being built. Registering a new French company via the API has two requirements:

SIREN and SIRET

France identifies companies with two related numbers:

Identifier Description Format Validation
SIREN Identifies the legal entity (the company itself). Every company has exactly one. 123456789 (9 digits) Validated against the INSEE/SIRENE registry
SIRET Identifies a specific establishment: the 9-digit SIREN plus a 5-digit NIC suffix. 12345678900025 (14 digits) Validated against the INSEE/SIRENE registry

Receiving invoices

Receiving French invoices works almost exactly like Maventa’s normal receiving process, so nothing changes there. The one difference is the invoice formats: use the French formats Maventa recommends for your French customers’ invoices (see Formats you need to support). See the Timeline for when testing opens.

From 1 September 2026, every French company must be able to receive structured e-invoices. Maventa supports this through two routes, depending on where the invoice comes from:

Scheme Identifier Registered by Used for
0225 (FR:CTC) SIREN/SIRET MySupply Domestic French regulated traffic
0002 (SIRENE) SIREN (9-digit) Maventa Cross-border Peppol
0009 (SIRET) SIRET (14-digit) Maventa Cross-border Peppol

The cross-border Peppol identifiers use the format 0002:000000000 (9-digit SIREN) and 0009:00000000000000 (14-digit SIRET).

Invoices that arrive on paper or by email

Domestic French invoices always arrive as structured e-invoices through the regulated network. Invoices from abroad, however, can still arrive on paper or by email as a PDF. Before a French company can process such an invoice, and before it can be e-reported, it must be turned into a structured electronic format.

Maventa’s AutoScan service does this. French companies should activate AutoScan and use it for the invoices they receive from abroad: send email invoices straight to the scanning service, and paper invoices after first converting them to a PDF so they can be sent in. Scanning does not happen automatically, so make it part of your customers’ routine to always send every received email and printed invoice to AutoScan.

For France, invoices must be scanned with full line-level detail, so that MySupply can produce the required tax reports. AutoScan will start supporting full line scanning in early autumn 2026, and Maventa will support the France flow shortly after.

This is not mandatory yet: the SMB e-reporting mandate only starts in 2027. It is still worth preparing for it early.

Sending invoices

Sending is a later phase, following receiving compliance. This is how it will work:

Formats you need to support

A French invoice carries 15–20 data elements beyond a standard Peppol BIS invoice, so Peppol BIS 3.0 cannot fully represent one.

To serve French customers, your integration must support one of the French e-invoicing formats. Peppol BIS 3.0 alone is not enough: you cannot send to France with it, and invoices received from France convert to BIS 3.0 only with data loss.

France defines two profiles, each available in three syntaxes:

The three syntaxes are UBL 2.1 and CII D22B (both pure XML) and Factur-X (a PDF/A-3 file with the CII XML embedded).

What Maventa recommends

Implement EN16931-FR in UBL 2.1. It covers the French requirements without data loss, and UBL carries forward to Peppol BIS 4.0, which builds on UBL 2.5. Add EXTENDED-CTC-FR if your customers or their suppliers need it. Choose CII only if you have an existing Factur-X or ZUGFeRD investment.

Format support in Maventa

Format Status
Peppol BIS 3.0 Supported
EN16931-FR (UBL) Supported
EN16931-FR (CII) In progress
EXTENDED-CTC-FR Supported
Factur-X Receiving only: converted to XML and delivered with a readable PDF; not available to send or download through the API

Maventa converts between standard formats where a sound conversion exists, but does not build custom, per-customer conversion layers. The official French formats are defined in the AFNOR XP Z12-012 standard and the DGFiP external specifications.

Lifecycle statuses

French e-invoicing tracks what happens to an invoice through four lifecycle status messages (CDAR messages) that travel between platforms. Each has an official code:

Status Code Meaning
Déposée (Deposited) 200 The invoice has been accepted by the tax authority (PPF). Sent back to the sender as confirmation.
Refusée (Refused) 210 The buyer has commercially refused the invoice for a valid business reason. Requires a reason code. Terminal state.
Encaissée (Cashed) 212 The seller confirms payment has been received. Only required for businesses on TVA sur les encaissements (VAT due when payment is received).
Rejetée (Rejected) 213 The invoice failed technical validation at a platform. Terminal state.

Refusing an invoice: new API for 1 September 2026

To meet the 1 September 2026 deadline, ERPs must build support for a new, dedicated Maventa API method to refuse a received invoice. Detailed specifications will be shared soon.

When a buyer refuses an invoice, the ERP calls this new endpoint with:

Maventa then generates the Refused (Refusée) CDAR message and transmits it to MySupply, which passes it on through the regulated network to the sender’s platform and reports it to the tax authority. Refusal is only possible for invoices received through the French regulated system. It is a terminal state: once an invoice is refused it cannot be un-refused, and the sender must issue a new invoice if needed.

The other statuses follow in later phases, alongside sending and e-reporting.

E-reporting

E-reporting covers transactions that fall outside the domestic regulated invoice flow: cross-border transactions and B2C sales. For these, Maventa automatically sends a copy of the invoice to MySupply whenever one is needed for e-reporting, and MySupply reports the transaction data to the French tax authorities. No action is required from the partner. This is a later phase.

It applies when a French company:

Reporting frequency depends on the company’s VAT regime:

Flagging companies on the simplified regime through the onboarding API will be supported in a later phase. For now it is not supported. If you have customers on the simplified regime at the moment, let Maventa know. Through MySupply, Maventa reports per invoice, as each qualifying invoice is sent or received.

Archiving

French law (Article L123-22 of the Commercial Code) requires companies to archive their complete invoice records, including all lifecycle status transitions (Deposited, Refused, Rejected, Cashed), for 10 years. This obligation sits with the company, not with the platform.

Maventa retains invoice data for the current and previous year only, roughly two years. Partners cannot rely on Maventa as the long-term store for French invoices and lifecycle statuses.

French lifecycle statuses are part of the legally required invoice record. Partners must capture and store them in their own systems within Maventa’s retention window, so their customers can meet the 10-year obligation.

What integrators need to do

Maventa builds and operates the French compliance infrastructure with the help of MySupply. As an integrator, you connect to Maventa’s API and expose the capability to your own customers.

For receiving (1 September 2026):

For sending and e-reporting (later phases):

What comes next

Receiving compliance is the first milestone for 1 September 2026. Sending, e-reporting, and the remaining lifecycle statuses are being rolled out in later phases. This page will be updated with detailed documentation, including API specifications, as each capability becomes available.

Back to top

AI Chat Support 24/7

  • Get help via AI chat available 24/7 whenever it suits you
  • Chat extensively uses Maventa support pages, websites, and blogs in its answers
  • If you need assistance that the AI cannot provide, you can also ask a customer service agent to join the conversation
  • Support requests processed Monday to Friday
Cancel Open chat

Got feedback?

Did you not find what you were looking for? Or was something explained unclearly? Or just want to share your thoughts? We are happy to hear your feedback!

Note: This form is not a way to get support, this is only for feedback for the documentation website. If you need support, please contact Maventa support.

Integration Guide Services & Reach API Specification Changelogs Integration guide Getting Started Invoice sending Consumer Invoicing Printing Email invoicing Invoice receiving Scanning Detect Fraud reporting Webhooks Reference implementations Maventa Connector Embeddable User Interface Peppol Network Document Exchange Invoice Response Self-billing support Invoicing formats Validation Peppol BIS 3.0 Finvoice 3.0 Document types and type codes Maventa JSON (table) Maventa JSON (json schema) Companies and Settings Department Company Users Billing Accounts receivable Ropo's reminder and collection service Amili Kassavirta Amili Perintä Services and reach Maventa services and reach e-invoicing in Finland Mass Printing Service e-invoicing in Sweden e-invoicing in Norway e-invoicing in Denmark e-invoicing in the Netherlands e-invoicing in Belgium e-invoicing in Germany e-invoicing in Estonia e-invoicing in Latvia e-invoicing in Poland e-invoicing in Italy e-invoicing in France e-invoicing in Spain Api specification API overview Getting Started Common & authentication API Invoices API Documents API Companies & settings API Lookups API Detect API Validator API Receivables API Billing API Scanning API B2CFI API B2CNO API B2CSE API Partner API Getting Started Account Configuration API Methods Invoice Sending API Methods Invoice Receiving API Methods B2C Norway API Methods B2C Finland API Methods Other API Methods Changelogs Product changelog Developer Changelog
Clear Send

Enter your credentials to Maventa testing environment, to authenticate and try things out with the Swagger UI. This will fetch a Bearer token using OAuth2 with the endpoint POST https://ax-stage.maventa.com/oauth2/token. The token is stored in your browser's session storage (cleared when you close the tab) and used in Swagger calls done from this documentation website. The token is valid for 1 hour.

Never use your production credentials here. This is only for testing the Maventa test environment in the Swagger UI.
Reset All None
eui global company lookup document:receive document:send invoice:receive invoice:send company:read company:write validate receivables:assignments analysis billing:reports partner:invoice_delivery_actions partner:lookups partner:takeovers partner:lyanthe_scan_service fi_bank_message:send fi_bank_message:receive
Cancel Sign In