About this plugin
OuiFacture turns your WooCommerce store into a compliant French electronic invoicing machine. Every order automatically gets a legally compliant PDF invoice with an embedded Factur-X XML file (PDF/A-3, profile EN 16931 ), the format required by the French e-invoicing reform (réforme de la facturation électronique, échéances 2026-2027). Automatic. On every order. Features Automatic generation of a Factur-X invoice when the order reaches the status you choose (processing, the default, or completed), no clicks needed. An order that jumps straight to completed is invoiced then; each order is invoiced exactly once. PDF/A-3 with embedded EN 16931 CII XML , validated against the official Factur-X XSD schemas at generation time. French legal invoice layout : seller block (raison sociale, forme juridique, capital, RCS, SIRET, TVA), buyer block, line items HT, VAT breakdown by rate, totals HT/TVA/TTC, payment terms, and the mandatory legal mentions (catégorie d’opération, pénalités de retard, indemnité forfaitaire de 40 €, escompte, option TVA sur les débits si activée). Gap-free sequential numbering (prefix + year + counter, optional yearly reset), race-safe, numbers are immutable once issued, regeneration never changes the number. B2B checkout fields : optional SIRET and intra-community VAT number on the classic checkout, validated (Luhn / FR VAT key) and shown in the admin order screen and in the XML. Customer access : download link in My Account → Orders, on the order-received page, and optional PDF attachment to the “order completed” email. Admin control : metabox on every order with Generate / Regenerate / Download. Secure storage : invoices live in a protected uploads folder with unguessable file names and are only served through authenticated endpoints. HPOS compatible (High-Performance Order Storage). No external calls, no tracking : everything is generated locally on your server. Compliance notes Invoices embed the CII XML at the EN 16931 profile of Factur-X 1.x, validated against the official XSDs before the PDF is written. Invoice numbers are sequential and gap-free; a number is only consumed once the invoice files have been written successfully. On uninstall, the plugin removes its settings but keeps generated invoices : French law requires you to retain them for 10 years. Limitations of this version The SIRET/VAT checkout fields are available on both the classic (shortcode) checkout and the block-based checkout (WooCommerce 8.9 or later for the block checkout fields; earlier versions still get automatic invoices, just without the two B2B fields on the block checkout). Refunds do not produce credit notes (avoirs); the original invoice is kept unchanged, as required (an issued invoice is immutable). One VAT category per order line (standard/zero). Margin schemes, VAT exemption reasons and non-EUR specifics beyond currency code pass-through are not handled. PDF/A-3 conversion covers embedded file relationships, XMP metadata and output intents as produced by the bundled Factur-X writer; full ISO 19005-3 conformance of exotic source PDFs is not re-verified at runtime. The buyer’s electronic routing identifier (BT-49, French rule BR-FR-12) is only included when the buyer supplied a SIRET at checkout (the B2B fields). Orders from a private buyer with no SIRET do not carry it: there is no such identifier to supply truthfully for an individual.