Skip to main content

Generate Chorus-compliant e-invoices and transmit them via the Chorus API

Project description

Beta License: AGPL-3 OCA/l10n-france Translate me on Weblate Try me on Runboat

This is the base module for the support of Chorus Pro, the electronic invoicing plateform of the French administration. Chorus Pro specifications are available on Chorus Pro Community website. All the suppliers of the French administration must send their invoices through Chorus Pro. To know more about Chorus and the obligation to send electronic invoices to the French administration, read the dedicated page on the website of the Ministry of Economic Affairs.

To be able to generate an electronic invoice for Chorus, you need the module l10n_fr_chorus_factur-x or l10n_fr_chorus_ubl.

Table of contents

Configuration

On the customers that you invoice via Chorus, you must:

  • enter their SIRET (Accounting tab),

  • select Chorus as Customer Invoice Transmission Method (Accounting tab),

  • select the Info Required for Chorus to the value that you obtained from Chorus (menu Rechercher Structure Publique),

  • if the service is a required information for that customer in Chorus, you must create the Chorus service and then create an invoicing contact and select the related Chorus Service and make sure that this contact is used as Customer on the invoice.

If you want to use the Chorus API to easily send invoices to Chorus from Odoo, you must:

  • edit the Odoo server configuration file and add two keys chorus_api_oauth_id and chorus_api_oauth_secret that contain your Oauth client ID and client secret obtained via PISTE. Don’t forget to restart the Odoo server after the update of its configuration file.

  • in the menu Accounting > Configuration > Settings, in the section Chorus API, enable the option Use Chorus API, which will add all users to the Chorus API group. Then set the additional configuration parameters for Chorus API that will be prompted on the settings page.

In the menu Settings > Technical > Automation > Scheduled Actions, you should also activate the 3 scheduled actions related to Chorus Pro.

Usage

On the customer form view of a French public administration, in the Accounting tab, set the Customer Invoice Transmission Method to Chorus Pro. You will then see a new section Chorus Pro. In this section, you should set the Info required for Chorus and, if the administration is Service required, you must create the Chorus services.

If you enabled the Chorus API, just click on the button Update Info Required for Chorus and it will set the field Info required for Chorus and download all the Chorus services of that administration.

When you try to validate a customer invoice/refund for a customer for which you send the invoices via Chorus Pro, it will check the value of the field Info required for Chorus and check that this invoice has an order reference or/and a Chorus service if required for that customer.

If you enabled the Chorus API, you should see a button Send to Chorus on validated customer invoices and refunds that have a transmission method set to Chorus Pro. You can also select several customer invoices/refunds and do Action > Send to Chorus Pro.

Sending an invoice via the Chorus API creates a Chorus Flow, cf menu Accounting > Configuration > Chorus Pro > Chorus Flows (it is not really a configuration thing… so we could argue that it should not be in the configuration menu !). You can click on the button Update Flow Status to refresh the status of the flow, until it reaches the status IN_INTEGRE. Then, click on the button Get Chorus Invoice Identifiers to get the technical identifiers of the invoice in Chorus (and write it on the invoice in Odoo) and get the status of the invoice in Chorus. Eventually, on the invoice, you can click on the button Update Chorus Invoice Status to refresh the Chorus Invoice Status. All these actions to refresh the status of the Chorus flows and of the invoice are automated via the Scheduled Action named Chorus Pro Invoice Status Update. So, if that scheduled action is active, you should not have to manually perform the actions described in this paragraph.

In the list view of customer invoices, you can group by Chorus Status: that way, you get on overview of the status of all the invoices you sent to Chorus Pro, and you can easily spot if an invoice has been refused for example.

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us to smash it by providing a detailed and welcomed feedback.

Do not contact contributors directly about support or help with technical issues.

Credits

Authors

  • Akretion

Contributors

Maintainers

This module is maintained by the OCA.

Odoo Community Association

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

Current maintainer:

alexis-via

This module is part of the OCA/l10n-france project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

File details

Details for the file odoo12_addon_l10n_fr_chorus_account-12.0.1.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for odoo12_addon_l10n_fr_chorus_account-12.0.1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1ebbc65b41c68f6a3b4a42c2f05eefe8055a40ed7fd13d5ddcf1c1a12258efe4
MD5 b7eb06353b6592641964855016f477b3
BLAKE2b-256 2a7b240f801dc40cf672ebf2d0c339e3e388ae91fbd5f1e67ab825dbc4e765d6

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page