Documentation9 min de lecture

Données d'entreprise : identifiants, capital, secteurs et agréments

Dix-huit modules OCA du dépôt `partner-contact` décrivent les entreprises dans Odoo 18 Community : `partner_identification_eori` et `partner_identification_gln` fournissent des catégories d'identifiant **prêtes à l'emploi** — le numéro **EORI** exigé pour les opérations douanières, et le **GLN** utilisé dans les échanges de données. Les seize autres, du capital social aux agréments, en passant par la forme juridique.

Grand plateau de bureaux avec de nombreux postes de travail

Une fiche entreprise sert à facturer. Elle devrait aussi dire qui est cette entreprise : sa forme juridique, son capital, son effectif, son secteur, ses agréments, et les identifiants que réclament la douane et les échanges de données.

Dix-huit modules communautaires ajoutent ces informations — dont trois qui corrigent des régressions d'Odoo.

Résumé

Cinq modules traitent les identifiants : deux catégories prêtes à l'emploi — EORI pour la douane, GLN pour les échanges de données —, l'unicité par catégorie d'identifiant, le numéro DUNS, et la case assujetti à la TVA.

Cinq décrivent l'entreprise : sa forme juridique depuis un référentiel, son capital social et le pays d'origine de ce capital avec des tranches de chiffre d'affaires, son effectif classé par tranches, son secteur d'activité hiérarchisé et ses secteurs secondaires.

Le reste complète : un référentiel d'agréments et habilitations, un type d'adresse magasin, les champs personnalisés dynamiques activés sur les contacts, quatre champs calculés de type réel de contact, deux corrections sur les coordonnées bancaires, la société par défaut rétablie, et des statistiques de fréquence de commande client.

L'essentiel

  • EORI et GLN : deux catégories d'identifiant prêtes à l'emploi.
  • L'unicité d'un identifiant par catégorie, quand le métier l'exige.
  • La forme juridique depuis un référentiel, plutôt qu'en texte libre.
  • Le capital social, son pays d'origine et des tranches de chiffre d'affaires.
  • L'effectif classé par tranches configurables.
  • Des secteurs d'activité hiérarchisés, avec des secteurs secondaires.
  • Un référentiel d'agréments : habilitations, licences, certifications.
  • Le titulaire d'un compte bancaire réaffiché — il existe et reste masqué.

Ce que ces modules ajoutent à l'instance

FamilleModulesNombre
Identifiantspartner_identification_eori, partner_identification_gln, partner_identification_unique_by_category, partner_duns, partner_subject_to_vat5
Description d'entreprisepartner_company_type, partner_capital, partner_employee_quantity, partner_industry_parent, partner_industry_secondary5
Qualificationpartner_accreditation, partner_store, partner_property, sale_customer_order_frequency4
Corrections et techniquepartner_bank_acc_holder_name, partner_bank_code, partner_company_default, partner_type_base4

Les menus ajoutés : Contacts ▸ Configuration ▸ Agréments, Types de sociétés, Turnover ranges et Ranges by quantity of employees.

Les identifiants qu'on vous demandera

IdentifiantÀ quoi il sertModule
EORIOpérations douanières dans l'Union européenne — exigé pour importer et exporterpartner_identification_eori
GLNIdentification de lieu dans les échanges de données — standard de la grande distributionpartner_identification_gln
DUNSIdentifiant international d'entreprise, demandé par de nombreux donneurs d'ordrepartner_duns
Assujetti à la TVAUne case indiquant le statut du partenairepartner_subject_to_vat

Les deux premiers modules ne créent rien : ils livrent une catégorie d'identification prête à l'emploi dans le module générique d'identifiants. L'intérêt est l'uniformité — EORI s'appelle EORI partout, avec le même format, plutôt que d'être saisi dans un champ libre différent sur chaque instance.

partner_identification_unique_by_category ajoute la contrainte : exiger, catégorie par catégorie, que les numéros saisis soient uniques. Un numéro EORI en double signale soit un doublon de fiche, soit une erreur de saisie — les deux méritent un blocage.

Le module générique dont dépendent ces trois-là est décrit dans identité, adresses et contacts, et son usage pour les produits réglementés dans la recommandation de produits.

Décrire une entreprise, pas seulement l'adresser

  • partner_company_type ajoute la forme juridique — SA, SARL, SAS — depuis un référentiel configurable, et non en texte libre.
  • partner_capital enregistre le capital social, le pays d'origine du capital, et classe l'entreprise dans une tranche de chiffre d'affaires configurable.
  • partner_employee_quantity enregistre l'effectif et le classe dans une tranche configurable.
  • partner_industry_parent rend les secteurs d'activité hiérarchiques, et partner_industry_secondary permet d'en associer plusieurs à un contact.

Ces quatre informations — forme juridique, capital, effectif, secteur — forment la segmentation B2B classique : à qui vend-on, et que pèsent ces clients. Sans elles, un fichier de mille entreprises ne se lit que par chiffre d'affaires réalisé, donc par le passé.

La hiérarchie des secteurs résout un problème pratique : un fichier plat de deux cents secteurs est inexploitable, alors qu'une hiérarchie à deux niveaux permet d'analyser par grande famille puis de descendre. Les secteurs secondaires, eux, traitent les entreprises qui ont réellement plusieurs activités.

Qualifier : agréments, magasins, champs libres

ModuleCe qu'il permet
partner_accreditationUn référentiel d'agréments : habilitations, licences, certifications détenues par un partenaire
partner_storeUn type d'adresse magasin, en plus des types standards d'Odoo
partner_propertyLes champs personnalisés dynamiques d'Odoo activés sur les contacts, avec une définition distincte pour les sociétés et pour les personnes
sale_customer_order_frequencyDes statistiques de fréquence de commande par client

Les agréments répondent à un besoin réglementaire courant : vendre des produits phytosanitaires, des équipements de sécurité ou des dispositifs médicaux suppose que le client détienne une habilitation valide. Le référentiel permet de l'enregistrer ; le contrôle à la vente relève d'un autre module.

Les champs personnalisés dynamiques méritent une mention particulière : ils permettent d'ajouter des champs sans développement, et la distinction société / personne évite d'avoir un formulaire encombré de champs sans objet.

C'est l'alternative raisonnable au développement spécifique pour des besoins mineurs — à condition d'accepter que ces champs se prêtent mal aux rapports et aux automatisations.

La fréquence de commande, enfin, est une statistique simple et parlante : un client qui commandait toutes les trois semaines et qui n'a rien commandé depuis deux mois est un signal, que personne ne voit dans un tableau de chiffre d'affaires.

Trois corrections et une brique technique

  • partner_bank_acc_holder_name réaffiche le titulaire d'un compte bancaire : le champ existe toujours sur le modèle, mais Odoo ne l'affiche plus. Or un compte dont le titulaire diffère du partenaire est précisément le cas qu'il faut voir avant de payer.
  • partner_bank_code ajoute le code banque et le code agence sur la fiche des banques — nécessaires dans plusieurs pays.
  • partner_company_default rétablit un comportement présent jusqu'à Odoo 12 : l'affectation automatique de la société à la création d'un contact, supprimée lors de la refonte multi-société de la version 13.
  • partner_type_base ajoute quatre champs calculés déterminant le type réel d'un contact — individu, société, contact rattaché — brique technique pour d'autres modules.

Le premier est un bon exemple de ce que corrigent les modules communautaires : un champ qui existe, qui compte, et que l'éditeur a cessé d'afficher. Payer sur un compte dont le titulaire n'est pas celui qu'on croit est l'un des scénarios de fraude les plus courants.

Le rétablissement de la société par défaut appartient à la même famille que les autres modules de restauration déjà rencontrés — voir account_usability.

Limites connues

  • Les catégories EORI et GLN supposent le module générique d'identifiants installé.
  • L'unicité par catégorie échoue sur des données existantes en double : nettoyage préalable.
  • Capital, effectif et secteurs doivent être renseignés : ces champs ne se remplissent pas seuls, et un enrichissement externe est souvent nécessaire.
  • Les champs personnalisés dynamiques se prêtent mal aux rapports : ils conviennent aux besoins mineurs, pas aux données structurantes.
  • Le référentiel d'agréments n'impose rien à la vente : il enregistre, le contrôle relève d'un autre module.
  • partner_type_base et sale_customer_order_frequency sont peu documentés dans le relevé : à vérifier sur le dépôt.

Identité technique

Les dix-huit modules viennent du dépôt OCA partner-contact, branche 18.0, tous en licence AGPL-3. Trois dépendent du module générique d'identifiants de partenaires, et sale_customer_order_frequency de sale.

Les familles voisines : groupes, relations et segmentation, doublons et qualité et adresses et localisation.

Questions fréquentes

Qu'est-ce que le numéro EORI, et pourquoi l'enregistrer ?

C'est l'identifiant exigé pour les opérations douanières dans l'Union européenne : sans lui, pas d'import ni d'export. partner_identification_eori fournit une catégorie d'identification prête à l'emploi dans le module générique — ce qui garantit un format uniforme plutôt qu'un champ libre différent sur chaque instance.

Peut-on exiger l'unicité d'un identifiant ?

Oui, catégorie par catégorie, avec partner_identification_unique_by_category. Un numéro EORI ou GLN en double signale soit un doublon de fiche, soit une erreur de saisie : les deux méritent un blocage. La contrainte échoue tant que les doublons existants ne sont pas traités.

Comment segmenter un fichier d'entreprises ?

Avec quatre informations : la forme juridique (référentiel), le capital social et sa tranche de chiffre d'affaires, l'effectif par tranche, et le secteur d'activité hiérarchisé avec ses secteurs secondaires. Sans elles, un fichier ne se lit que par le chiffre d'affaires réalisé — donc par le passé.

Pourquoi le titulaire d'un compte bancaire n'est-il plus visible ?

Le champ existe toujours sur le modèle, mais Odoo ne l'affiche plus. partner_bank_acc_holder_name le réaffiche. C'est important : payer sur un compte dont le titulaire diffère du partenaire attendu est l'un des scénarios de fraude les plus courants.

Peut-on ajouter des champs à une fiche contact sans développement ?

Oui, avec partner_property, qui active les champs personnalisés dynamiques d'Odoo sur les contacts, avec des définitions distinctes pour les sociétés et pour les personnes. C'est l'alternative raisonnable au spécifique pour des besoins mineurs — en acceptant que ces champs se prêtent mal aux rapports et aux automatisations.

Se faire accompagner

Les données d'entreprise sont celles qu'on ne saisit jamais parce qu'elles ne bloquent rien : on peut facturer sans connaître le capital, l'effectif ou le secteur. Elles deviennent indispensables le jour où l'on veut piloter — ou le jour où la douane réclame un EORI.

Nous distinguons donc deux familles : ce qui est exigé par un tiers — EORI, GLN, agréments — et qu'il faut saisir dès maintenant, et ce qui sert à analyser — capital, effectif, secteur — qu'il vaut mieux enrichir en masse qu'à la main. Voir les prestations d'Atalios Consulting ou demander un rappel.

Pour aller plus loin

En résumé

Les identifiants qu'un tiers réclamera — EORI pour la douane, GLN pour les échanges, DUNS pour les donneurs d'ordre —, la description qui permet de segmenter — capital, effectif, secteur, forme juridique —, et trois corrections dont le titulaire de compte bancaire réaffiché. Parlons de votre référentiel tiers.

Documentation OCAContactsRéférentiel

Partager

Fiches connexes

Équipe au travail sur des ordinateurs portables autour d'une table
Le module OCA `account_invoice_en16931` (dépôt `fr-einvoicing`, version 18.0.1.0.0, licence AGPL-3) est le socle qui fabrique le fichier de facture électronique conforme à la norme européenne **EN 16931** : Factur-X (PDF/A-3 avec XML CII embarqué), XML UBL, XML CII ou PDF accompagné d'un UBL — et il ajoute des **contrôles bloquants à la validation** d'une facture client. Les quatre modules qui s'y greffent pour la France, et ce que le socle ne fait pas.
Lire la suite
Documentation OCA, Facturation électronique
Réunion d'approbation autour d'un document de travail
Relevé sur une instance Odoo 18 Community, le module OCA `base_tier_validation` (dépôt `server-ux`, version 18.0.3.5.1, licence AGPL-3) ajoute 1 modèle, 101 champs et 3 menus, mais ne s'active sur aucun document métier par lui-même : il lui faut un module d'implémentation. C'est le point qui surprend le plus — voici ce qu'il fait réellement, et comment le mettre en service.
Lire la suite
Documentation OCA, Odoo