Chorus Pro

Qu'est-ce que Chorus Pro ?

Chorus Pro est le portail de facturation du secteur public français. Toute entreprise qui facture une entité publique (État, collectivités territoriales, établissements publics, hôpitaux, etc.) doit déposer ses factures sur ce portail. Le format Factur-X est l'un des formats acceptés par Chorus Pro.

Champs Chorus sur les factures

À l'activation du module, quatre champs complémentaires sont ajoutés sur les fiches facture, dans la section CHORUS :

Champ Description
Code service Code du service destinataire de la facture au sein de l'entité publique. Ce code vous est communiqué par votre client public
N° de marché Numéro du marché public ou du contrat auquel la facture se rapporte
N° d'engagement Numéro d'engagement juridique (bon de commande) lié à la facture
Identifiant Chorus Numéro de suivi attribué par le portail Chorus lors du dépôt de la facture. Ce champ est rempli après la soumission

Champs Chorus affichés sur la fiche facture dans Dolibarr

Champs Chorus sur les commandes

Les trois premiers champs (code service, numéro de marché, numéro d'engagement) sont également ajoutés sur les fiches commande. Lorsqu'une facture est créée à partir d'une commande, ces valeurs sont automatiquement reprises.

Champs Chorus sur les modèles de facture

Le code service, le numéro de marché, le numéro d'engagement et la case Facture pour Chorus Pro sont aussi présents sur les modèles de facture (factures récurrentes). Lorsqu'un modèle est créé à partir d'une facture brouillon, ces valeurs sont reprises sur le modèle, puis reportées sur chaque facture qu'il génère. Une facture récurrente à destination du secteur public conserve donc ses références Chorus à chaque échéance. Voir la section Factures récurrentes pour le détail.

Remplissage des champs

  1. Ouvrez la fiche de la facture ou de la commande
  2. Les champs Chorus apparaissent dans la section dédiée
  3. Renseignez les valeurs communiquées par votre client public
  4. Régénérez le PDF : les informations Chorus sont intégrées dans le XML Factur-X

Attention : Le code service, le numéro de marché et le numéro d'engagement sont des informations fournies par votre client public. Si vous ne les connaissez pas, contactez votre interlocuteur au sein de l'entité publique.

Case "Facture pour Chorus Pro" (par facture)

Chorus Pro identifie chaque structure (le fournisseur comme le destinataire) par son SIRET à 14 chiffres. C'est une exigence propre à Chorus : la norme Factur-X / EN 16931, elle, attend le SIREN à 9 chiffres (schemeID="0002") dans le bloc SpecifiedLegalOrganization/ID, le SIRET n'étant porté que par GlobalID (schemeID="0009").

Ces deux attentes sont incompatibles dans un même XML. Comme votre Dolibarr peut émettre à la fois des factures vers Chorus Pro (secteur public) et des factures vers le privé (via SuperPDP, FacturX ou tout autre canal Factur-X standard), le choix se fait facture par facture via la case à cocher "Facture pour Chorus Pro" présente dans la section CHORUS de la fiche facture.

Case cochée Contenu de SpecifiedLegalOrganization/ID Destinataire visé
Oui (facture Chorus) SIRET (14 chiffres), schemeID="0009", appliqué au fournisseur comme à l'acheteur. Le SIRET n'est pas dupliqué dans GlobalID. Ce XML peut être refusé par les validateurs EN 16931 stricts (SuperPDP, FacturX, etc.) -- ne cochez que si la facture part vraiment sur Chorus Secteur public via Chorus Pro
Non (par défaut) SIREN (9 chiffres), schemeID="0002", SIRET présent dans GlobalID Privé / B2B, tout PDP/PA ou OD français

Règle simple : cochez la case uniquement quand la facture est déposée sur Chorus Pro. Pour toutes les autres factures (privé, B2B classique), laissez décoché.

Si une facture passe par Chorus puis est ré-émise via un autre canal (ou inversement), régénérez simplement le PDF après avoir basculé la case : le XML est reconstruit avec les règles correspondantes.

Détection automatique : en plus de la case, le module bascule aussi en mode SIRET/Chorus dès qu'un champ métier Chorus (code service, n° de marché ou n° d'engagement) est renseigné sur la facture. Une facture B2B classique n'ayant aucun de ces champs, si vous la déposez sur Chorus sans cocher la case, elle repart en SIREN et Chorus la rejette (voir la section suivante).

Avertissement automatique sur les clients publics

Oublier la case sur une facture destinée à une administration est l'erreur la plus fréquente, et elle ne se voit qu'au rejet de Chorus, plusieurs heures après le dépôt. Le module signale donc désormais le cas au moment de la génération du PDF :

Votre client semble être une entité publique française (facturation via Chorus Pro), or cette facture n'est pas marquée comme destinée à Chorus Pro (...)

Le module considère qu'un client est une entité publique française à partir de sa fiche tiers, sur trois indices (un seul suffit) :

  • sa catégorie juridique INSEE : 71 (administration de l'État), 72 (collectivité territoriale), 73 (établissement public administratif), 74 (personne morale de droit public administratif) ;
  • son type de tiers : Administration ;
  • son SIREN commençant par 1 ou 2 : c'est la plage que l'INSEE réserve aux organismes publics inscrits au répertoire Sirene (État, collectivités, établissements publics). Une commune, par exemple, a toujours un SIREN commençant par 21.

L'avertissement est purement informatif : le PDF est bien généré, à vous de décider s'il faut cocher la case et régénérer.

Cocher la case automatiquement pour tous les clients publics

Si tous vos clients publics passent par Chorus Pro, vous pouvez éviter la case à cocher facture par facture : activez l'option Détecter automatiquement les entités publiques dans la configuration du module. Toute facture adressée à un client reconnu comme entité publique (mêmes indices que ci-dessus) est alors générée directement avec le mapping Chorus (SIRET dans SpecifiedLegalOrganization/ID, cadre de facturation A1).

L'option est désactivée par défaut : une entité publique peut aussi être facturée via une PDP qui attend, elle, le mapping EN 16931 standard (SIREN). Tant que l'option est désactivée, vous gardez la main facture par facture et le module se contente de l'avertissement décrit plus haut.

Rejet Chorus "l'identifiant doit être égal à 14" / "non référencé"

Si Chorus Pro rejette votre dépôt avec un compte-rendu de traitement (CRT) du type :

Le nombre de caractères de l'identifiant (...SellerTradeParty.SpecifiedLegalOrganization.ID.value) de type identifiant (SIRET) doit être égal à 14. L'identifiant fournisseur / débiteur de la demande de paiement (...) n'est pas référencé dans notre système. La structure (...) n'utilise pas l'application "Demandes de paiement".

il s'agit du cas décrit ci-dessus : la facture a été générée sans cocher "Facture pour Chorus Pro". Le XML contient alors le SIREN (9 chiffres) là où Chorus attend le SIRET (14 chiffres), et Chorus ne parvient pas à rapprocher ce SIREN de son annuaire de structures (d'où le "non référencé").

Marche à suivre :

  1. Ouvrez la facture, section CHORUS.
  2. Cochez "Facture pour Chorus Pro".
  3. Régénérez le PDF : le XML est reconstruit avec le SIRET à 14 chiffres (schemeID="0009"), pour le fournisseur comme pour l'acheteur.
  4. Redéposez la facture sur Chorus Pro.

Attention -- deux causes peuvent se cumuler. La manipulation ci-dessus corrige l'erreur de format (SIRET à 14 chiffres). Mais les messages "non référencé dans notre système" et "n'utilise pas l'application Demandes de paiement" peuvent aussi signaler un problème d'habilitation : Chorus Pro ne traite que les factures à destination du secteur public (B2G). Si le destinataire est une entreprise privée, ou si votre structure émettrice n'est pas enrôlée sur Chorus Pro avec l'application "Demandes de paiement" activée, la facture restera rejetée même avec un SIRET correct. Vérifiez dans ce cas que le destinataire est bien une entité publique référencée sur Chorus et que votre propre structure y est enregistrée.

Rejet Chorus "la valeur du champ ... n'est pas autorisée pour le cadre de facturation"

Si Chorus Pro rejette votre dépôt avec un message du type :

La valeur du champ FichierXml.ExchangedDocumentContext.BusinessProcessSpecifiedDocumentContextParameter.ID.value n'est pas autorisée pour le cadre de facturation.

il s'agit du cadre de facturation (code BT-23). Deux nomenclatures coexistent aujourd'hui pour ce même champ :

Canal Codes attendus
Réforme française (B2B, PDP/PA) B1 (biens), S1 (services/prestations), M1 (mixte) -- règle BR-FR-08
Chorus Pro (B2G) A1 (dépôt d'une facture par un fournisseur), A2 (facture déjà payée), A9 (facture de sous-traitant), A12 (facture de cotraitant)

Le module choisit automatiquement la bonne nomenclature : dès qu'une facture est identifiée comme destinée à Chorus Pro (case "Facture pour Chorus Pro" cochée, ou code service / n° de marché / n° d'engagement renseigné), il émet le cadre de facturation Chorus A1 au lieu du code de la réforme.

Si vous obtenez malgré tout ce rejet :

  1. Ouvrez la facture, section CHORUS.
  2. Vérifiez que la case "Facture pour Chorus Pro" est cochée (c'est elle qui déclenche le passage en A1 quand aucun champ métier Chorus n'est renseigné).
  3. Régénérez le PDF, puis redéposez la facture sur Chorus Pro.

Si votre situation exige un autre cadre que A1 (sous-traitance, cotraitance, facture déjà payée), la valeur se change dans la configuration du module, champ Cadre de facturation Chorus Pro (BT-23). Elle s'applique alors à toutes les factures Chorus. Le champ voisin Mode de facturation (BT-23) ne concerne, lui, que les factures hors Chorus.

Identifiant Chorus de transmission

L'identifiant Chorus est différent des trois autres champs. Il ne fait pas partie du XML Factur-X : c'est un numéro de suivi que le portail Chorus Pro vous attribue lorsque vous déposez la facture. Renseignez-le sur la fiche facture pour assurer la traçabilité.

Désactiver les champs Chorus

Si vous ne facturez pas le secteur public, les champs Chorus sont inutiles. Pour les masquer :

  1. Rendez-vous dans la configuration du module
  2. Activez l'option Désactiver la prise en charge de Chorus
  3. Les champs complémentaires disparaissent des fiches facture et commande

Les champs ne sont pas supprimés de la base de données, uniquement masqués. Vous pouvez les réactiver à tout moment.

Important -- ne désactivez Chorus que si vous êtes certain de ne jamais en avoir besoin. Les trois champs Chorus (code service, numéro de marché, numéro d'engagement) correspondent aux codes BT-10, BT-12 et BT-13 de la norme EN16931. Ces codes ne servent pas qu'au secteur public français : de plus en plus de clients privés B2B (grands comptes, centrales d'achat, donneurs d'ordre industriels) exigent ces références dans le XML Factur-X pour rapprocher la facture d'un bon de commande ou d'un contrat. Si l'un de vos clients vous demande de renseigner une "référence acheteur", un "n° de commande", un "n° de contrat" ou un "n° d'engagement" dans la facture électronique, laissez la prise en charge Chorus activée : c'est par ces champs que ces données passent dans le XML.

Champs Chorus et codes BT-* avancés

Les champs Chorus sont la porte d'entrée pour renseigner les codes *BT- avancés** dans le XML Factur-X :

Champ Dolibarr Code BT-* Rôle dans le XML
Code service BT-10 Référence acheteur (BuyerReference)
N° de marché BT-12 Référence du contrat (ContractReferencedDocument)
N° d'engagement BT-13 Référence de la commande acheteur (PurchaseOrderReferencedDocument)

Si la prise en charge de Chorus est désactivée, ces champs ne sont plus saisissables dans Dolibarr et les codes BT-10 / BT-12 / BT-13 ne peuvent plus être renseignés dans le XML, même pour un client privé qui les exigerait.

SIREN et SIRET

Pour les factures destinées au secteur public français, le module vérifie la présence d'un identifiant professionnel (SIREN ou SIRET) sur la fiche du client. Si ces informations manquent, un message d'erreur s'affiche lors de la génération du PDF.

Assurez-vous que la fiche tiers de votre client public contient :

  • Le SIREN (identifiant à 9 chiffres) ou le SIRET (identifiant à 14 chiffres)
  • Le numéro de TVA intracommunautaire
  • L'adresse complète (rue, code postal, ville, pays)