Introduction
In this guide, youโll learn how to issue invoices to French public institutions using Chorus Pro. It will walk you through:- Understanding Chorus Pro and its format requirements
- Setting up Invopop workflows:
- Supplier registration workflow
- Invoice submission workflow
- Preparing the Chorus Pro platform and creating credentials
- Registering a supplier with Chorus Pro
- Submitting your first invoice to a French public institution
What is Chorus Pro?
Chorus Pro is a mandatory service provided by the French government for invoicing French public institutions. The platform allows businesses to upload invoices in multiple e-invoicing formats and track them throughout the French public administration process. All invoices to French public sector entities must be submitted through Chorus Pro. The platform supports various e-invoicing formats including Cross Industry Invoice (CII), and implements the European Norm 16931 (EN16931) European standard for electronic invoicing with additional French-specific requirements.Understanding Chorus Pro Format Requirements
Chorus Pro accepts invoices in CII format based on the EN16931 European standard. However, it adds specific French extensions and validation requirements: EN16931 Standard The EN16931 defines the semantic data model for electronic invoices. The standard ensures interoperability across European Union (EU) member states while allowing for country-specific extensions. Chorus Pro Extensions Chorus Pro extends the base EN16931 standard with additional French requirements:- SIRET number validation for French entities
- Specific invoice types for different purposes
- Service codes for government departments
Setup
Configure your Invopop Workspace for Chorus Pro invoicing. Complete these steps:1
Connect the required apps
- Go to Configuration > Apps in the Console.
- Find UN/CEFACT CII in the app list and click Connect to activate the app.
- Find Chorus Pro in the app list and click Connect to activate the app.

2
Configure the supplier registration workflow
Add a new workflow to your workspace for registering suppliers. You can start with the template below.Keep the workflow ID at hand as youโll need it later.
- Template
- Code
- Build from scratch
3
Configure invoice workflow
Add a new workflow to your workspace for issuing invoices. You can start with the template below.Keep the workflow ID at hand as youโll need it later.
- Template
- Code
- Build from scratch
Chorus Pro Credentials
This section explains what suppliers need to configure within their Chorus Pro account to enable integration with Invopop. To configure Chorus Pro, complete these steps:1
Create a Chorus Pro account
Sign up for a Chorus Pro account if you donโt have one.
To test in sandbox mode, create an account in the Chorus Pro sandbox. Download a CSV file with test accounts. Use one of the accounts to log in. For more information, visit the Chorus Pro documentation.
2
Navigate to API settings
Once logged in to your Chorus Pro account, navigate to the API configuration area:

This opens a new page where you can manage your technical accounts.
- Go to Domains > Connections in the main menu

Navigate to Domains โ Connections
- Click Access Service in the Technical Account section (bottom left)

Navigate to Technical Account
3
Create a technical account
Set up the technical account credentials, this opens a form to create a technical account:
- Set the type of request to Creation of a technical account
- Select your company in the company field
-
This creates a login and password. Copy these credentials as youโll need them when registering with Invopop

Technical Account Creation
Running
Now youโll learn how to register a supplier and issue Chorus Pro invoices:Register a Supplier
Now that you have a technical account, you can register a supplier with Chorus Pro.1
Upload a Supplier
Use the Create an entry endpoint to upload a new supplier. Include a party object in the data field. For this step, you only need the VAT number.After successful upload, youโll see the supplier in the Parties section with status 
Empty.
Supplier registration
2
Send the Supplier to the registration workflow
Send the supplier to the registration workflow using the Create a job endpoint. Use:
- The supplierโs silo entry UUID from the previous step
- The Supplier Registration workflow ID from the Setup section

3
Complete Chorus Pro Authentication
The workflow stays in progress until the supplier completes the registration process. The supplier must access the link and add the credentials they created previously.
The supplierโs status will change to

Registered when authentication is complete.You can fill the form via API by sending a PUT request to the registration link. The payload should be a JSON object with the following fields:
username(string): The supplierโs Chorus Pro username.password(string): The supplierโs Chorus Pro password.
Send an Invoice
Once a supplier is registered, you can send invoices to French public institutions through Chorus Pro.1
Create an Invoice
Use the Create an entry endpoint to create a new invoice. Include an invoice object in the data field.
Review the example above. Notice that you need both the
Example B2G invoice
Example B2G invoice
Chorus Pro B2G Invoice
eu-en16931-v2017 and the fr-choruspro-v1 addon. These addons enable all the necessary validations in your GOBL invoice.1
Send to Chorus Pro
Send the invoice to Chorus Pro using the Create a job endpoint. Use:
- The invoiceโs silo entry UUID from the previous step
- The Chorus Pro Invoice workflow ID from the Setup section

2
Track Invoice Status
After submission, track your invoice in Chorus Pro using the invoice identifier (series plus code).
Chorus Pro allows document modifications after submission. If a document is rejected or contains errors, update the GOBL details and resubmit to the same workflow until the document is accepted.
Once accepted, do not modify the invoice.
The invoice identifier in Chorus Pro corresponds to your GOBL invoice series and code combined. This identifier helps you locate and track invoices across both systems.
Participate in our community
Ask and answer questions about invoicing in France โ