France e-invoicing · Odoo 19

Meet France e-invoicing without leaving Odoo 19: PDP, Factur-X and e-reporting

From 1 September 2026, the French reform makes it compulsory to send and receive electronic invoices through an approved platform (PDP). Bolting that on with tools outside your ERP is a real risk. This Odoo 19 module connects your ERP to the approved platform, generates Factur-X, tracks every invoice through its lifecycle and prepares B2C e-reporting, all inside Odoo.

Approved-platform (PDP) routingSend and receive invoices straight from Odoo 19.
Factur-X formatPDF/A-3 with embedded XML, the reform's hybrid format.
Lifecycle trackingEvery invoice status visible inside Odoo, no extra screen.
B2C e-reportingPrepares data for transactions without a mandatory e-invoice.
France e-invoicing handled inside Odoo 19 with Factur-X and an approved PDP platform
The French reform, inside your ERPPDP, Factur-X and e-reporting in the same Odoo you already invoice from.
Source code included Odoo 17 / 18 / 19 · Community and Enterprise €49 · one-time payment, no SaaS fee Direct support from the developer

Real module screenshots

The exact screens you get in Odoo, working for real.

France e-invoicing module for Odoo screenshot 1 France e-invoicing module for Odoo screenshot 2 France e-invoicing module for Odoo screenshot 3 France e-invoicing module for Odoo screenshot 4 France e-invoicing module for Odoo screenshot 5

Try the France e-invoicing module inside a real Odoo 19, no sign-up. User demo / flexigodemo.

Try the live demo View on the App Store

The real problem the French reform creates for anyone invoicing in France

From September 2026, a PDF by email is no longer enough. The invoice has to travel through an approved platform in a structured format, and its status has to be traceable. Handling that with disconnected tools outside your ERP just multiplies the errors.

The PDF-by-email invoice stops being valid

For domestic B2B transactions in France, the invoice must be sent in a structured format through an accredited platform. Emailing a plain PDF no longer complies with the reform.

Not knowing the invoice status

Without lifecycle tracking, you cannot tell whether an invoice was deposited, rejected or accepted. That blind spot breaks your reconciliation and your relationship with the French customer.

B2C and cross-border count too

It is not all B2B invoices: consumer sales and certain cross-border transactions require e-reporting. Keeping that in a separate system is one more source of mistakes.

What the module does inside Odoo

It does not promise to represent you before the French tax authority. It does the concrete, useful work: connect Odoo to an approved platform, generate Factur-X, track every invoice through its lifecycle and prepare B2C e-reporting.

Multi-PDP connectivity

Routes both sending and receiving from Odoo itself, with built-in adapters for Basware, Sovos, Tradeshift, EDICOM and Docaposte, plus a generic REST adapter for any other accredited platform.

Factur-X, UBL 2.1 and UN/CEFACT CII

Generates Factur-X (PDF/A-3 with embedded XML, from the Minimum profile to Extended) and also the UBL 2.1 and UN/CEFACT CII structured formats, whichever your platform expects.

EN 16931 validation before you send

Validates each invoice against the EN 16931 standard before submission, with BR error codes, so rejections are caught inside Odoo before they ever reach the platform.

Lifecycle tracking

Records the 6 DGFiP statuses of every invoice with an immutable history and alerts for stalled submissions, so you always know whether it was deposited, accepted or rejected.

Inbound vendor invoices

Invoices arriving from the platform are turned into draft vendor bills inside Odoo, with purchase-order matching by confidence score and built-in duplicate control.

B2C, cross-border and reverse-charge e-reporting

Covers the three CGI Art. 290 e-reporting types: B2C in 10-day periods, monthly cross-border and domestic reverse-charge, with deadline reminders sent by email from Odoo.

Annuaire: SIRENE and SIRET data

Validates and completes your contacts' SIRET against the INSEE SIRENE API, with a bulk-completion wizard for cleaning up an existing contact database.

Dashboard, DGFiP evidence and encrypted credentials

Compliance dashboard with a countdown to the mandate, a ZIP evidence export for a DGFiP audit with 10-year retention, and platform credentials encrypted with Fernet, never stored in plain text.

From your usual invoice to a compliant e-invoice, in four steps

You keep working the way you already do in Odoo. The module takes over the moment you validate the invoice.

1. Connect your platform

Install the module and enter the credentials of your accredited platform (PDP). They are stored encrypted with Fernet, and a built-in or generic REST adapter handles the rest.

2. Validate and issue

When you post an invoice, the module builds the Factur-X (or UBL 2.1 / CII), checks it against EN 16931 and routes it to the platform, all without leaving the invoice screen.

3. Track and receive

The 6 DGFiP statuses update automatically on each invoice, and inbound invoices from the platform land as draft vendor bills matched to your purchase orders.

The person who builds it is the person who answers you

FlexigoTech is Flexibles y Accesorios Gobe, S.L., based in Barcelona. The module is built by a single developer, so when you have a question about the approved platform or Factur-X, you talk directly with the person who wrote the code, not a salesperson.

17-19native Odoo
BCNlocal development
0separate SaaS

What it does and what it does not

It is a native Odoo module, with no external platform to maintain and no extra SaaS fee. It connects to the approved platform, generates Factur-X, tracks the lifecycle and prepares B2C e-reporting. Signing the contract with the approved platform and your own tax responsibility remain yours, and we tell you that before you buy, not after.

Try the live demoAsk a question

One price, source code included, no recurring fees

Buy it once on the Odoo App Store and it is yours. No per-invoice charges, no monthly SaaS subscription on top of your platform contract.

€49, one-time payment

A single purchase on the Odoo App Store. No subscription, no per-document fee: what you pay for the France e-invoicing module is what it costs.

Full source code included

You get the readable Python and XML source, so your own team or partner can review, adapt and maintain it. No obfuscation, no black box.

Odoo 17, 18 and 19

Built and tested for Odoo 17, 18 and 19, on both Community and Enterprise. Whichever supported version you run today, the module is ready for it.

Direct developer support

Questions and issues go straight to the developer who wrote the module. Try it first in the free live demo, then buy with confidence.

If the French reform brought you here, this is worth a look too

E-invoicing rarely comes alone. It usually shows up next to other European e-invoicing mandates and the need to keep all your compliance inside a single Odoo.

Questions that usually come up with the French reform

When does e-invoicing become mandatory in France?

Under the French reform timeline, receiving e-invoices is mandatory for every company from 1 September 2026. Issuing e-invoices is mandatory from that same date for large companies and mid-caps, and from 1 September 2027 for SMEs and micro-businesses. This Odoo 17/18/19 module gets your business ready to issue and receive through an approved platform (PDP).

What is a PDP (Plateforme de Dematerialisation Partenaire) and why do I need one?

A PDP, now officially called a Plateforme Agreee, is a private platform accredited by the French tax administration that routes your e-invoices between issuer and recipient and forwards the required data to the DGFiP. Because the public portal no longer handles routing, going through an approved platform is the operational way to send and receive. The module connects your Odoo to that platform so the routing happens straight from the ERP.

What e-invoice format does the module generate?

The module generates Factur-X, the hybrid format of the French reform: a human-readable PDF/A-3 with a structured XML embedded inside for automated processing, from the Minimum profile up to Extended. It can also output the UBL 2.1 and UN/CEFACT CII structured formats, so the invoice works for both your customer and the transmission through the approved platform.

Does the module cover B2C e-reporting as well?

Yes. Beyond B2B e-invoices, the reform requires e-reporting: sending the tax administration the data for transactions that do not carry a mandatory e-invoice, such as B2C sales and certain cross-border operations. The module covers the three CGI Art. 290 e-reporting types (B2C in 10-day periods, monthly cross-border and domestic reverse-charge) right inside Odoo, so you do not run compliance in two separate systems.

Does it work with Odoo Community?

Yes. The module runs on both Odoo Community and Enterprise, for Odoo 17, 18 and 19. It does not depend on any Enterprise-only app, so a standard Community install with Accounting/Invoicing is enough to connect to the approved platform, generate Factur-X and track the invoice lifecycle.

Can I try it before buying?

Yes. There is a live demo, a real Odoo 19 with the module installed and no sign-up (user demo, password flexigodemo), where you can see the approved-platform connection, Factur-X generation, invoice lifecycle tracking and B2C e-reporting. When you are ready, you buy the license on the Odoo App Store for a single one-time payment of 49 EUR, source code included.

If you invoice in France, e-invoicing arrives in September 2026.

The only question is whether you bolt it on with loose tools or solve it inside Odoo. Try the demo and tell us which Odoo you run.

Try the live demoView on the App Store · +34 639 913 105