Direct PISTE integration vs Chorus Pay
Two ways to send invoices to the French public sector through Chorus Pro: integrate the official API yourself (which this documentation covers), or use Chorus Pay, which runs on that same API under the hood and handles the integration for you. Here is an honest comparison.
| Direct integration (PISTE) | Chorus Pay | |
|---|---|---|
| Prerequisites | PISTE account, Chorus Pro technical account setup, CGU consents, application activation | A Chorus Pay account (a few minutes) |
| Authentication | OAuth 2.0 (client_credentials) + base64-encoded cpro-account header - both on every request | One API key (Bearer) |
| Time to first deposited invoice | Days to weeks (account creation, onboarding, development, sandbox testing) | A few hours via the API - or instantly with no code, via a link sent to your client |
| Invoice status tracking | Manual polling of consultation endpoints | Signed webhooks (HMAC) on every status change |
| Purchase order / client acceptance | Your responsibility, upstream | Included: the public entity accepts the quote and attaches its purchase order via a link |
| Maintenance | On you (AIFE API changes, formats, certificates) | Handled by Chorus Pay |
| Cost | Free API, but the real cost is development and maintenance time | Credits per deposited invoice (no subscription) |
| Best for | Technical teams with dev time and high invoice volume | SMBs, software vendors, agencies - anyone invoicing the public sector without an integration project |
FAQ
Is Chorus Pro free?
Yes. Chorus Pro is the French State's free e-invoicing platform for the public sector. What costs money is the technical integration: PISTE account, OAuth, maintenance. Chorus Pay is a paid third-party service that handles that integration for you.
What is the difference between Chorus Pro and Chorus Pay?
Chorus Pro is the official State platform (AIFE) where public-sector invoices must be deposited. Chorus Pay is an independent SaaS that deposits your invoices on Chorus Pro for you, through the official API, without you managing PISTE, authentication or formats.
Do I need a PISTE account to use Chorus Pay?
No. Chorus Pay handles the technical onboarding. You create an account and deposit invoices through a simple REST API, or even with no code by sending an acceptance link to your public-sector client.
Can I track invoice statuses with Chorus Pay?
Yes, through signed webhooks fired on every invoice status change on Chorus Pro - no polling needed.
Prefer to integrate it yourself? This documentation covers everything you need. Prefer it handled for you?