What Chorus Pro is and why it matters
If you work with a French government agency, local authority, public hospital or any other public sector body in France, Chorus Pro is the only platform through which you can legally submit your invoices. Since 1 January 2020, every business billing a French public entity must use it, including sole traders and micro-entrepreneurs. There is no workaround.
The platform is run by AIFE (Agence pour l'Informatique Financière de l'État), the French government agency responsible for financial IT systems. Chorus Pro centralises all invoices addressed to public entities, runs automated compliance checks before passing them on and gives both the supplier and the public body a clear view of where each invoice stands at any point.
The rollout happened in stages: large enterprises in 2017, mid-sized companies in 2018, small businesses in 2019 and micro-enterprises in 2020. Today the obligation applies to everyone, regardless of business size.
Information you need before creating the invoice
This is where most problems start. Chorus Pro requires fields that you would not find on a standard B2B invoice. If any of them are missing or wrong, the invoice will be rejected or suspended.
Your SIRET number. The 14-digit SIRET identifying your business is mandatory. If you are registered as a sole trader or auto-entrepreneur in France, you received this when you registered with the URSSAF or INSEE. Foreign businesses without a SIRET need to register with the French SIRENE register first.
The SIRET of the public entity you are billing. Every French public body has its own SIRET. Ask your contact at the organisation for it directly before creating the invoice. Do not assume you can find the correct one yourself: large administrations often have multiple SIRET numbers for different internal units.
The engagement juridique (EJ) number. This is the most commonly missing piece of information, and the most common cause of rejections. The EJ is the internal reference number the public body uses to identify your order or contract in their accounting system. Without it, Chorus Pro cannot match your invoice to an authorised expenditure. Ask for this number before you even start drafting the invoice.
The service code. Some organisations, particularly large ministries and regional authorities, also require a code identifying the internal department responsible for payment. If your contact does not provide one, the field is not mandatory by default. It is worth asking to avoid a suspension later.
The public procurement number. If your work falls under a formal public contract (marché public), you will also need its reference number.
Accepted invoice formats
Chorus Pro accepts several file formats. For small businesses and freelancers, Factur-X is the most practical. It is a PDF/A-3 file with embedded XML data, meaning it looks like a regular invoice but contains structured data that the platform can read and process automatically. Your client receives a document they can open and read like any PDF, while the underlying XML satisfies the technical requirement.
Pure XML formats are also accepted: UBL (Universal Business Language) and CII (Cross-Industry Invoice). These are common in larger organisations with automated procurement systems but do not produce a human-readable document without dedicated software.
A plain PDF is no longer sufficient. Chorus Pro could previously handle standard PDF uploads in limited circumstances, but the system is clearly moving toward structured formats. If you are still sending plain PDFs, now is the time to switch.
Submitting your invoice
Go to chorus-pro.gouv.fr and create a free account if you do not already have one.
From your dashboard, select "Déposer une facture" (submit an invoice) and choose your submission method. For most freelancers and small businesses, the web portal is the straightforward option: upload your Factur-X file, fill in the required fields (recipient SIRET, EJ number, service code if applicable) and confirm.
For higher volumes, Chorus Pro also supports EDI and API integration, which allow software systems to submit invoices automatically. These are generally relevant for larger businesses processing many invoices each month.
Invoice statuses
After submission, Chorus Pro assigns a status to your invoice that updates as it moves through the process.
Déposée (Submitted): The file has been received and the automated checks are running.
Complète (Complete): The invoice passed Chorus Pro's checks and has been forwarded to the public entity. The legal payment clock starts here. The standard deadline is 30 days for the French state and most public bodies, though some entities have up to 50 days depending on their legal classification.
En cours de traitement (Being processed): The public body has received the invoice and is working through their internal approval.
Mise en paiement (Payment initiated): The payment order has been issued and the transfer should arrive within a few days.
Suspendue (Suspended): The public body has put the invoice on hold, usually because a piece of information needs to be confirmed or corrected. Contact your counterpart at the organisation to find out what is needed.
Rejetée (Rejected): The invoice was not accepted. The rejection reason is shown in the interface. The most frequent causes are a missing or incorrect EJ number, a wrong SIRET, an absent service code or a non-compliant file format.
A rejection does not mean you will not be paid. It means you need to correct the invoice and resubmit. Read the rejection reason carefully before making changes so you fix the actual problem rather than guessing.
How this connects to France's broader e-invoicing reform
Chorus Pro sits within a larger picture. France is currently rolling out an e-invoicing mandate that will extend structured electronic invoicing requirements to private B2B transactions as well. Chorus Pro is also being developed into a wider platform called the Portail Public de Facturation (PPF), which will serve as the public infrastructure for both B2G and B2B e-invoicing.
If you are already generating Factur-X invoices compliant with EN 16931 for your public sector clients, you are in good shape for that transition. The format and structured data requirements are the same for the upcoming B2B mandate. The delivery infrastructure changes, but the invoice you produce stays compatible.
Facturwise generates Factur-X invoices at the EN 16931 profile automatically, the format accepted by Chorus Pro. You fill in your invoice as normal and the structured file is built in the background. If you work with French public sector clients and your current tool does not produce compliant Factur-X, create a free account to try it.
Disclaimer: This article is provided for informational purposes only and does not constitute legal or tax advice. Rules around Chorus Pro and e-invoicing requirements may change. Consult AIFE or a qualified professional for advice specific to your situation.
