The E-Invoicing API - France allows you to automate the entire electronic invoice lifecycle, simplifying integration with the French e-invoicing system and reducing the complexity of document workflows.
With a single API you can manage the issuing, receiving, and monitoring of electronic invoices. The platform automatically routes each document through the most appropriate transmission channel, using the Peppol network, the French national network, or, when applicable, alternative channels, ensuring compliance with current regulations.
In addition to sending invoices, the API allows you to configure companies, receive incoming documents, monitor their status in real time, and receive automatic updates via callback. The integration is designed to fit both management software and enterprise platforms that process high volumes of documents.
The integration logic follows the same approach as the E-Invoicing API Italy: the same configuration principles, the same asynchronous handling, and the same use of callbacks. Those who already use the Italian service can therefore quickly extend their systems to the French market as well.
After an invoice is sent, updates on the document status are automatically notified via callback, allowing the management software to stay constantly synchronized without making continuous API calls.
POST /FR-configurations
Company configuration is the first step to using the E-Invoicing API France. Through this endpoint you can register the company, enable the sending service, the receiving service, or both, depending on your integration needs, and configure the callbacks that will automatically receive updates on document status.
To complete onboarding it is sufficient to provide the SIREN (9 digits) or the SIRET (14 digits). The service automatically creates the company configuration, retrieves the information needed for tax identification, and prepares the environment for managing electronic invoices in accordance with French regulations.
Once configuration is complete, the company is ready to use the enabled services, whether for sending electronic invoices, receiving them, or both. There is no need to manage different configurations based on the transmission channel: the API will handle the entire process throughout the document's lifecycle.
The following example shows a company configuration request enabling the e-invoicing services and defining a callback to automatically receive invoice-related updates.
{
"fiscal_id": "21750001600019",
"vat_id": "FR12217500016",
"name": "Your Company FR",
"email": "[email protected]",
"customer_invoice": true,
"supplier_invoice": true,
"address": {
"street_address": "Rue de Rivoli 42",
"zip_code": "75001",
"city": "Paris",
"country": "FR"
},
"api_configurations": [
{
"event": "customer-invoice",
"callback": {
"url": "https://your-server.site/webhook/fr/out"
}
}
]
}
Configuration is performed only once and represents the starting point of the integration. From this moment on, the management software will be able to send and receive electronic invoices, while updates on document status will be automatically notified via the configured callbacks.
POST /FR-invoices
The POST /FR-invoices endpoint allows you to send French B2B and B2G electronic invoices with a single API request. Simply submit the invoice data: the service verifies its correctness, generates the format compliant with French regulations, and automatically starts the transmission process.
The integration is designed to make developers' work as simple as possible. The management software always sends the invoice to the same REST endpoint, while the platform automatically handles all the operations required to deliver the document.
For invoices addressed to the French Public Administration, the document is routed through the channel required by regulations. For B2B invoices, on the other hand, the service automatically identifies the most appropriate transmission channel based on the recipient's configuration.
The following example shows the sending of an electronic invoice. Once the request is received, the service takes charge of the document and automatically manages the transmission process.
{
"document_number": "INV-2026-001",
"issue_date": "2026-05-12",
"currency": "EUR",
"total_amount_including_tax": 61.20,
"sender": {
"name": "Your Company",
"fiscal_id": "YourCompanyFiscalId",
"vat_id": "FR12345678901"
},
"recipient": {
"name": "Customer Company",
"fiscal_id": "CustomerFiscalId",
"email": "[email protected]"
},
"invoice_lines": [
{
"description": "Professional Service",
"quantity": 1,
"unit_price": 250.00,
"tax_rate": 20
}
]
}
After sending, a technical confirmation that the request has been taken in charge is returned. Invoice processing continues asynchronously, and updates regarding delivery, acceptance, rejection, or payment are automatically notified via callback.
CALLBACK Document statuses
After an invoice is sent, the service immediately returns a technical confirmation that the request has been taken in charge. Document processing continues asynchronously, and every update is automatically notified via callback.
Unlike the Italian system, where the Sistema di Interscambio mainly communicates the outcome of the transmission, the French process continues even after the invoice has been delivered. The recipient can in fact accept the document, dispute it, reject it, or report its payment.
For this reason, it is possible to monitor the entire invoice lifecycle through a series of statuses that are automatically updated throughout the process.
Notifications are automatically sent to the endpoints configured during onboarding, allowing the management software to stay constantly synchronized with the evolution of the documents without having to make periodic API requests.
GET /FR-invoices
The GET /FR-invoices endpoint allows you to retrieve the list of electronic invoices associated with the configured company, both outgoing and incoming. Documents are returned with their detailed information and the updated status of the processing.
This service is useful for synchronizing your management software, building monitoring dashboards, or quickly retrieving the history of invoices processed by the platform.
{
"data": [
{
"document_number": "INV-2026-001",
"issue_date": "2026-05-12",
"currency": "EUR",
"type": "380",
"amount_including_tax": 61.2,
"total_amount_including_tax": 61.2,
"amount_excluding_tax": 51,
"total_amount_excluding_tax": 51,
"tax_amount": 10.2,
"total_tax_amount": 10.2,
"sender": {
"name": "ACME France SARL",
"fiscal_id": "21750001600019",
"siren": "217500016",
"siret": "21750001600019",
"vat_id": "FR12217500016",
"email": "[email protected]",
"address": {
"street_address": "Rue de Rivoli 42",
"zip_code": "75001",
"city": "Paris",
"country": "FR"
}
},
"recipient": {
"name": "ACME France SARL",
"fiscal_id": "21750001600019",
"siren": "217500016",
"siret": "21750001600019",
"vat_id": "FR12217500016",
"email": "[email protected]",
"address": {
"street_address": "Rue de Rivoli 42",
"zip_code": "75001",
"city": "Paris",
"country": "FR"
}
},
"invoice_lines": [
{
"description": "Wireless Mouse",
"quantity": 2,
"unit_price": 25.5,
"tax_rate": 20,
"total_net_amount": 51,
"unit_of_measure": "C62",
"nature": "standard",
"tax_category": "standard"
}
],
"payment_means": [
{
"payment_mode": "sepa_credit_transfer",
"due_date": "2026-06-12",
"amount": 61.2,
"financial_account": "FR7630006000011234567890123"
}
],
"tax_subtotals": [
{
"taxable_amount": 51,
"tax_amount": 10.2,
"vat_rate": 20,
"tax_category": "standard"
}
],
"chorus_pro_service_code": "SERVICES_TECH",
"commitment_number": "PO-12345",
"attachments": [
{
"document": "JVBERi0xLjcKJeLjz9MK...",
"mime_type": "application/pdf",
"filename": "INV-2026-001.pdf",
"description": "Invoice PDF",
"document_id": "INV-2026-001"
}
],
"id": "645a3f2b1c0d9e8f7a6b5c4d",
"state": "NEW",
"details": {
"external_status": "submitted",
"network": "fr-dgfip",
"siren": "217500016",
"siret": "21750001600019",
"service_code": "SERVICES_TECH",
"commitment_number": "PO-12345",
"invoice_type": "Factur-X",
"submission_date": "2026-05-12T15:30:00Z"
},
"create_at": "2026-05-12T15:30:00Z"
}
],
"success": true,
"message": "",
"error": null
}
The response includes all invoice information, including sender and recipient details, the invoice line items, amounts, payment methods, attachments, and the current status of the transmission process. The retrieval endpoints allow you to fetch up-to-date data on electronic invoices processed by the service at any time.
GET /FR-invoices/{id}
To get the detail of a specific invoice, you can use the GET /FR-invoices/{id} endpoint, specifying the document identifier returned during the sending or receiving phase.
The response includes all invoice information, the current status of the document, and data related to the transmission process.
When needed, you can use the refresh=true parameter, which forces synchronization with the transmission system and returns the most up-to-date status available.
The following example shows how to retrieve the detail of an invoice, updating its status in real time.
GET /FR-invoices/645a3f2b1c0d9e8f7a6b5c4d?refresh=true
In most cases, updates are automatically received via callback. The retrieval endpoints are an additional tool for checking the status of a specific document or synchronizing external systems when needed.
The E-Invoicing API France allows you to automatically receive electronic invoices issued by suppliers, centralizing the entire incoming cycle directly within your management software.
After enabling the service during company configuration, every invoice addressed to the organization is automatically captured and made available through the configured callbacks, regardless of the channel used for delivery.
Each supplier-invoice event contains the information needed to identify the document and automatically trigger registration, accounting, or approval processes in the management software.
To automatically receive incoming invoices, simply configure a callback endpoint during the company's onboarding.
{
"api_configurations": [
{
"event": "supplier-invoice",
"callback": {
"url": "https://your-server.site/webhook/fr/in"
}
}
]
}
Every new invoice received is automatically sent to the configured endpoint, allowing the management software to capture the document and immediately trigger internal processes without further API calls.
French e-invoicing involves several transmission channels, used depending on the type of recipient and the configured receiving methods. This makes integration more complex compared to other national systems.
With the E-Invoicing API France, there is no need to implement different logic for each channel. The management software always sends the invoice to the same REST endpoint, and the platform will automatically select the most appropriate delivery path.
For invoices addressed to the French Public Administration (B2G), the document is instead transmitted directly via Chorus Pro, according to the procedures required for public bodies.
This approach allows you to develop a single API integration, leaving the platform to handle all the complexity related to selecting the transmission channel and managing regulatory changes.
The E-Invoicing API France is designed for all organizations that want to integrate and automate the management of French electronic invoices directly within their own software. It is the ideal solution for software houses, developers, ERPs, and Independent Software Vendors (ISVs) who want to quickly add compliance with French regulations through a single API integration, without having to manage the complexity of the various transmission channels.
It is also aimed at Italian and international companies with customers, suppliers, or operating locations in France, e-commerce platforms, marketplaces, and accounting software that need to automatically issue and receive electronic invoices, as well as professional firms and consulting companies that manage the administrative and tax processes of their clients.
Thanks to intelligent invoice routing, real-time callbacks, and integration logic shared with the E-Invoicing API Italy, the solution fits both small-volume projects and enterprise platforms that process thousands of documents every day, reducing development time, maintenance costs, and operational complexity.
Do you need help?
Haven't found the answer you're looking for?
Fill in all the details, we will get back to you as soon as possible!
The France E-Invoicing API enables you to integrate the complete management of French electronic invoicing into your software. Through a single API, you can configure companies, send B2B and B2G electronic invoices, receive incoming invoices, monitor document statuses, and receive automatic callback notifications, without having to manage the complexity of the different transmission channels.
Yes. The API supports both B2B electronic invoicing and invoicing to the French Public Administration (B2G). For invoices addressed to public entities, the service automatically routes them through Chorus Pro, without requiring any additional configuration on your application.
Updates are automatically delivered through configurable webhooks during the onboarding process (business configuration). Every change in an invoice's status is notified to your management system in real time, eliminating the need to continuously poll the API.
By enabling invoice reception during the company configuration, every invoice addressed to your organization is automatically collected and delivered through callback notifications. This allows your management system to process incoming invoices immediately, without any manual intervention.
Throughout an invoice's lifecycle, the API returns several statuses, including NEW, SENT, RECEIVED, DONE, and ERROR. Statuses are updated automatically and delivered via webhooks, allowing you to monitor the entire process until completion.
No manual configuration of the delivery channel is required. The API automatically determines the most suitable transmission route by using the Peppol network, the French national network, or, when applicable, email delivery. For invoices sent to the French Public Administration, Chorus Pro is used automatically.
The API is designed for software vendors, developers, ERP systems, e-commerce platforms, marketplaces, accounting software providers, and companies that want to integrate French electronic invoicing into their systems through a single API integration.
Yes. The France E-Invoicing API follows an integration model that is very similar to the Italian solution. If you are already using the Italy E-Invoicing API, you can easily extend your software to the French market while maintaining a consistent integration model.
Activation is immediate. Once the company has been configured through the dedicated endpoint, the service is ready to send, receive, and monitor French electronic invoices.
When the recipient cannot be reached through the supported transmission channels (such as Peppol or the French national network), the API can send the electronic invoice in Factur-X format via email. In this case, the message is sent using a neutral sender that is not associated with the Openapi brand, ensuring a consistent and professional experience for the recipient.