Skip to main content

Documentation Index

Fetch the complete documentation index at: https://invopop-mintlify-changelog-week-1778411791.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

Compliance questions

France
1 September 2026 for receiving (all businesses) and issuing for large/mid-size companies. 1 September 2027 extends issuing to SMEs and micro-businesses. B2G via Chorus Pro has been mandatory since 2017–2020 (phased by company size).
Chorus Pro
For all B2G transactions with French public administrations since 2020 (mandatory date depended on supplier size, fully phased in by 2020). Once an invoice is destined for a public entity, Chorus Pro is the only legal channel.
Suppliers must register on Chorus Pro’s portal and obtain credentials. Foreign businesses without a SIRET can register with their local tax ID but must verify acceptance with the receiving administration on a case-by-case basis.
PA (Plateforme Agréée)
E-invoices cannot be deleted or retracted. Instead a credit note or corrected invoice is sent referencing the original.
The supplier must be registered in the Annuaire (the DGFiP-maintained directory of B2B participants) via an approved PA. Once registered, Invopop becomes the supplier’s PA for sending and receiving over Peppol.
E-invoicing transmits the invoice itself between trading parties via Peppol, with the PPF receiving the regulated dataset as a fifth corner. E-reporting is a periodic submission to the PPF covering transactions out of scope for e-invoicing — B2C, cross-border B2B, and any flow where the counterparty is not in the Annuaire.
Yes — B2C is exempt from e-invoicing but is subject to e-reporting. From 1 September 2026 (large and medium-sized companies) or 1 September 2027 (all businesses), B2C transactions must be reported periodically to the PPF.
If the supply is taxable under French reverse charge (i.e. VAT is paid on import), the transaction must be e-reported.
Report payment data only when VAT is due on receipt of payment, such as for services under “cash VAT” (TVA sur les encaissements).
E-invoicing does not apply. If the business is liable to French VAT, e-reporting applies to the relevant flows. E-reporting for reverse-charge VAT and intra-EU acquisitions is deferred until 1 September 2027.
Peppol
Mandatory dates vary by country. Belgium requires structured B2B e-invoicing — Peppol BIS by default — from January 2026. Germany phases B2B e-invoicing in between 2025–2028. France’s Factur-X via Peppol applies once the PA reform takes effect. Outside mandates, Peppol delivery is voluntary but increasingly expected for B2G and cross-border trade.
Yes. Every document exchanged on Peppol BIS uses a UBL or CII syntax that conforms to the EN16931 European e-invoicing standard, plus the relevant Peppol BIS specification. Invopop generates compliant XML automatically when you use the Peppol app.
Peppol is a federated network — anyone could otherwise register a Participant ID for a company they don’t represent. Proof of ownership ties the Participant ID to a verifiable contact at the company, which is what allows the registration to be published on the SML.
Requirements vary by Authority. In Belgium, for example, the supplier must provide a recent extract from the Banque-Carrefour des Entreprises (KBO/BCE) plus a signed mandate. Invopop walks the registering party through the local requirements during the registration wizard.
Yes — a Peppol BIS document delivered through a certified Access Point is treated as the legal e-invoice in any country that recognises Peppol. The signed UBL or CII XML is the authoritative record; archive it alongside any human-readable rendering you generate.
Retention is set by each country’s tax authority — typically 7 to 10 years in the EU. Invopop preserves the original XML and any generated PDF in the silo entry so you can satisfy local archival requirements wherever you operate.

Invoicing questions

France
Two channels depending on the recipient: B2G uses Chorus Pro (CII format); B2B from September 2026 uses the Plateforme Agréée model (UBL, CII, or Factur-X via Peppol). Invopop is an approved PA — install the France PA app for B2B and the Chorus Pro app for B2G.
In Factur-X PDFs, the XML file is embedded within the PDF itself. To extract and view it, use the Attachments section in Adobe Acrobat Reader, or a tool like the SysTools PDF Extractor.
Chorus Pro
Chorus Pro primarily supports CII format based on EN16931. Invopop currently focuses on CII with plans to add additional formats in the future.
French businesses need a SIRET number. Foreign businesses can use their local tax identifier, but should verify acceptance with the receiving French institution.
Yes, you can modify and resubmit invoices until the receiving institution accepts them. Once accepted, invoices become locked and cannot be modified.
Use your GOBL invoice series and code combined as the invoice identifier in the Chorus Pro portal to locate your submitted invoices.
Chorus Pro has specific file size and format requirements. Invopop handles these automatically when generating CII XML files from your GOBL invoices.
The recipient’s SIRET (or equivalent identifier) plus a Chorus Pro service code where applicable. Invopop generates EN 16931 CII XML by default — UBL is also accepted by Chorus Pro.
PA (Plateforme Agréée)
Invopop is an officially approved Plateforme Agréée under the DGFiP mandate. Registration, invoicing, and lifecycle status are available today; e-reporting (Flow 10) is in active development. See the PA hub readiness matrix for the current state.
The base fr-fec-v3 regime plus the EN 16931 profile. For Peppol delivery, peppol-bis-v3. The forthcoming fr-ctc-flow10-v1 addon covers e-reporting payloads — separate from the e-invoicing flow.
Peppol
In countries where Peppol is the standard but not mandatory, you may still need to issue an e-invoice when the recipient isn’t on the network. Both parties can agree on an alternative transfer method, but the invoice must still be EN16931 compliant.Recommended approach:
  • Set up a separate workflow that generates the XML without the send-Peppol-document step
  • Or reuse your existing workflow without the customer Peppol ID — the send step is automatically skipped
  • Fetch the generated XML and deliver it through the agreed channel, typically email
B2C invoices typically lack the structured customer information required for Peppol delivery, and most consumers don’t have inboxes. Use a conditional workflow:
  1. Add an If/Else step that checks for a customer inbox using count(customer.inboxes, true) > 0.
  2. On the false branch, generate a PDF and email it to the customer, then stop the flow.
This routes B2B invoices through Peppol while keeping a smooth path for consumers.
If a job fails with KO and receiver not found in the peppol network, treat it like an invalid email address — the recipient simply isn’t reachable on Peppol. Add the Lookup Participant ID step (ideally in a separate validation workflow run against customer data) so you catch missing IDs before generating the invoice.
No. The regime is automatically derived from the supplier’s settings, which is the recommended approach for Peppol — leave it unset on the document.
See the oasis-ubl-v2 addon and the Peppol app reference for required fields, supported document types, and Participant ID schemes.

Registering supplier questions

France
For B2B PA flows: register the supplier via the France PA Register Party workflow (publishes the SIREN to the Annuaire and Peppol). For Chorus Pro: register the supplier with their SIRET on Chorus Pro’s portal and link credentials in the Chorus Pro app.
France PA does not require supplier-side certificates — Peppol uses Invopop’s AP cert. Chorus Pro uses an OAuth token bound to the supplier’s account; the token is encrypted at rest in Invopop.
Chorus Pro
Ensure the supplier has a valid Chorus Pro account and provided correct credentials. Contact support if registration workflow issues persist.
OAuth 2.0 client credentials issued by Chorus Pro after registration. Invopop stores the token encrypted; suppliers can revoke access at any time through Chorus Pro’s portal.
PA (Plateforme Agréée)
Run the France PA Register Party workflow with the supplier’s SIREN. Invopop publishes them to the Annuaire and the Peppol SMP — they are then routable for both invoicing and e-reporting through Invopop.
None at the supplier level. The Plateforme Agréée holds an OpenPeppol-issued mTLS certificate (Invopop’s), and the PA-to-PPF channel uses additional DGFiP credentials managed by Invopop.
Peppol
Upload the company as a party (Console → Parties → Suppliers → + New Supplier, or via the Create an Entry API) with name, tax_id, address, and email. Then run it through the party registration workflow — the contact will receive a registration wizard link to provide proof of ownership.Once approved, the party is registered on the Peppol network (SMP+SML+Peppol visibility by default with the ubl-invoice doc group) and ready to receive invoices.
A supplier with that Participant ID already exists in your workspace. Either reuse the existing party or, if it really is a new entity, check whether it should be registered under an alternative scheme (for example Belgium’s 9925 VAT scheme rather than the default 0208).
Register them through different silo entries, even though they represent the same legal party. The supplier must upload proof of ownership for each inbox.
Unique identifiers for entities on the Peppol network, made up of two parts:
  • Scheme — identifies the type of identifier (e.g. 9920 for Spanish VAT, 0208 for Belgian KBO/BCE)
  • Code — the actual identification number
Participant IDs are usually based on VAT numbers or local business identifiers, and Invopop can derive them automatically from a Tax ID. Some countries support multiple schemes — Belgium, for example, defaults to 0208 but some entities are only registered under 9925 (VAT). If you hit a “receiver not found” error, the recipient may be registered under an alternative scheme.
Peppol Party visibility determines what you can send and receive:
  • smp — SMP only, for testing
  • smp+sml — SMP and SML, useful when you only want to send
  • smp+sml+peppol — SMP, SML, and the Peppol Directory, recommended for both sending and receiving (and for being discoverable in the Directory)
In general, use the highest visibility available.

Receiving questions

France
Register the recipient with Invopop as their Plateforme Agréée. Inbound documents (UBL, CII, Factur-X) are converted to GOBL and stored in the Expenses folder. Chorus Pro inbound flow is separate and routes via the Chorus Pro app.
UBL via gobl.peppol; CII and Factur-X via gobl.cii. The original structured XML (or PDF/A-3 with embedded XML) is preserved as a silo entry attachment.
PA (Plateforme Agréée)
Register the recipient via Invopop as their PA. Inbound UBL/CII/Factur-X documents are routed to the configured Import workflow and become GOBL silo entries. Lifecycle status updates (CDAR) feed back to the issuer through the same channel.
UBL, CII, or Factur-X (PDF with embedded CII XML), all conforming to EN 16931 and the French CTC profile. Invopop preserves the original and exposes the GOBL conversion.
Peppol
Register the recipient as a Peppol participant with Invopop as their Access Point. Incoming documents are routed through your configured Import workflow, which converts the UBL or CII payload to GOBL and stores the entry in the Expenses folder.
Yes. Either format can be removed based on your needs. The default template includes both for comprehensiveness, but if you’re certain you’ll only receive invoices in one syntax, dropping the other simplifies the workflow and reduces the apps you need to activate.
The Import workflow’s UBL and CII parser steps map the inbound XML into a GOBL invoice. From there you can route it to webhooks, Google Drive, accounting integrations, or any other destination — the GOBL representation is the single source of truth for downstream processing.

Reporting questions

France
For TVA, file via DGFiP’s portal — Invopop does not generate CA3 yet. For e-reporting (Flow 10): submit via your Plateforme Agréée — Invopop’s e-reporting workflow batches transactions per period and submits to the PPF.
TVA: DGFiP’s EDI-TVA XML schema. E-reporting Flow 10: a structured JSON/XML payload defined by the PPF specification (currently in beta). Invopop emits Flow 10 via the upcoming fr-ctc-flow10-v1 GOBL addon.
PA (Plateforme Agréée)
Flow 10 e-reporting: 3× per month (every 10 days) for B2C and cross-border transactions. Lifecycle status (CDAR): per event, near real-time. Specific deadlines depend on the supplier’s tax filing cadence (monthly/quarterly).
Flow 10 uses a JSON envelope wrapping aggregated transaction data, defined in the PPF technical specification. Lifecycle CDAR payloads are XML messages exchanged over Peppol with structured status codes.

Participate in our community

Ask and answer questions about France’s regulation →