EN
Copied
Modules

Identifiants entreprise

Identifiants entreprise

Le module legal_ids extrait les identifiants d'entreprises françaises depuis une liste de POI déjà dotés d'un site web. Pour chaque site, le module localise et valide le SIRET (14 chiffres) et le SIREN (9 chiffres), et enregistre l'URL où l'identifiant a été trouvé. La somme de contrôle Luhn est appliquée à chaque candidat : les numéros de téléphone à neuf chiffres sont rejetés avant la sortie.

Ce module est le point d'entrée standard du pipeline legal-data : une fois un SIREN vérifié attaché à un item, des modules en aval comme legal_data peuvent interroger les registres officiels sans étape de rapprochement par nom.

Site web requis. Ce module lit le SIRET/SIREN dans les mentions légales du site web de chaque établissement : chaque ligne doit donc avoir une colonne site_web. Si votre liste n'a que des noms ou des liens Google Maps (sans site web), utilisez plutôt Données société — il renvoie le même SIRET/SIREN en recherchant le nom dans l'annuaire SIRENE, sans site web.

Objectif

Entrées

Le module consomme une enriched_list de POI. Le champ minimal requis sur chaque item est site_web ; les items sans site sont filtrés à la création du job et comptés comme ignorés.

Champ Type Requis Notes
site_web string oui Domaine racine ou URL quelconque du site cible.
nom string non Transmis tel quel en sortie pour le contexte.
adresse string non Transmis tel quel en sortie pour le contexte.

Une liste de POI est typiquement produite par le module scrap, mais toute enriched_list portant site_web est acceptée.

Sorties

Chaque item d'entrée est retourné avec trois nouveaux champs. Les autres champs d'entrée sont transmis tels quels.

Colonne Type Description
siren string Identifiant à 9 chiffres, validé Luhn. Vide si non trouvé.
siret string Identifiant d'établissement à 14 chiffres, validé Luhn. Vide si non trouvé.
siret_source_url string URL de la page d'extraction. Vide si non trouvé.

Quand seul un SIREN est détecté, siret reste vide et les modules en aval peuvent opérer sur le SIREN seul. Les autres attributs de société — forme juridique, n° RCS, code NAF, effectif, dirigeants, finances — relèvent de legal_data.

Cycle de vie

Cycle de job standard — voir Cycle de vie des jobs. Les échecs sur des items individuels n'arrêtent pas le job : la ligne de sortie correspondante a simplement les champs siren/siret vides, et le compteur errors suit le nombre d'items terminés sans identifiant.

Pipeline

needs:    poi_list
produces: enriched_list

legal_ids est rangé dans la catégorie enrich. Chaînes typiques :

Endpoints

Créer un job

POST /api/jobs/legal-ids

Corps :

Champ Type Requis Description
items tableau de POI oui Liste d'entrée. Chaque item doit porter site_web.
source_job_id string (UUID) non Quand on enchaîne depuis un job précédent, ID du job amont pour la traçabilité.

Réponse : objet Job standard, incluant id, status, output_filename, et l'estimation de coût en unités équivalent-France.

Le job créé est ensuite piloté par les endpoints habituels (GET /api/jobs/{id}, GET /api/jobs/{id}/download, etc.) partagés par tous les modules.

Quotas globaux et plafonds par job : voir Limites.

Erreurs

Situation Comportement
Item sans site_web Écarté avant démarrage. Si aucun item ne reste, le job est rejeté.
Site joignable, aucun identifiant trouvé Item terminé avec siren/siret vides. Comptabilisé dans le total d'erreurs.
POI non immatriculé (pas de SIREN/SIRET) Idem : aucun identifiant inventé ; sorties vides.
Entreprise étrangère Idem : seuls les identifiants français sont reconnus.
Candidat échouant à la validation Luhn Écarté silencieusement ; aucun faux positif écrit en sortie.
Aucun item avec site web Le job échoue avec un message explicite — ex. 0 ligne sur 120 a un site web (votre liste ne contient que des noms, des liens Google Maps et des téléphones) — et recommande legal_data pour obtenir le SIRET/SIREN par le nom.

Et après