Aller au contenu principal
SquadNovia
Retour au blog

Intégrations

Enrichir Zoho CRM gratuitement avec l'API Recherche d'entreprises (SIREN, NAF, effectif)

SIREN, code NAF, effectif, date de création : enrichissez vos comptes Zoho CRM gratuitement avec l'API Recherche d'entreprises, fonction Deluge incluse.

8 novembre 2026

L'essentiel

L'API Recherche d'entreprises de l'État donne gratuitement, sans clé, le SIREN, le code NAF, la tranche d'effectif, la catégorie et l'état administratif d'une entreprise. Une fonction Deluge d'une trentaine de lignes suffit pour remplir ces champs dans Zoho CRM à chaque création de compte. En édition Enterprise, une règle de workflow la déclenche ; dans les éditions inférieures, un webhook ou Zoho Flow prend le relais.

En bref

  • Gratuite, sans clé, limitée à 7 appels par seconde, mise à jour chaque jour.
  • Recherche par SIREN, ou par nom et code postal.
  • L'effectif arrive en code INSEE, à traduire en tranche lisible : 12 veut dire 20 à 49 salariés.
  • Les entreprises non diffusibles ne sont pas accessibles.
  • Zia enrichit aussi les fiches, mais sans les données du répertoire SIRENE.

Que fournit l'API, et quels champs créer dans Zoho CRM ?

L'API répond à une simple requête GET sur https://recherche-entreprises.api.gouv.fr/search, avec le paramètre q : un SIREN ou un nom d'entreprise. Des filtres affinent la recherche (code postal, département, code NAF, catégorie, état administratif, tranche d'effectif), avec 25 résultats au plus par page.

Donnée Champ renvoyé par l'API Champ à créer dans le module Comptes
SIREN siren SIREN, texte de 9 caractères
SIRET du siège siege.siret SIRET du siège, texte de 14 caractères
Code NAF activite_principale Code NAF, texte, par exemple 62.01Z
Tranche d'effectif tranche_effectif_salarie, en code INSEE Tranche d'effectif, liste de choix
Année de l'effectif annee_tranche_effectif_salarie Année de l'effectif, texte de 4 caractères
Catégorie categorie_entreprise : PME, ETI ou GE Catégorie, liste de choix
Date de création date_creation Date de création, date
État etat_administratif : A pour active, C pour cessée État administratif, liste de choix
Adresse du siège siege.adresse, siege.code_postal, siege.libelle_commune Champs d'adresse de facturation existants

Les codes de tranche d'effectif suivent la nomenclature de l'INSEE : 00 pour 0 salarié, 01 pour 1 à 2, 02 pour 3 à 5, 03 pour 6 à 9, 11 pour 10 à 19, 12 pour 20 à 49, 21 pour 50 à 99, 22 pour 100 à 199, 31 pour 200 à 249, 32 pour 250 à 499, 41 pour 500 à 999, 42 pour 1 000 à 1 999, 51 pour 2 000 à 4 999, 52 pour 5 000 à 9 999 et 53 pour 10 000 salariés et plus. La valeur NN désigne une unité non employeuse.

L'effectif n'est pas celui du jour : c'est celui de l'année indiquée dans annee_tranche_effectif_salarie. Gardez cette année à côté de la tranche, pour que vos commerciaux sachent de quand date le chiffre.

Comment écrire la fonction Deluge ?

La fonction reçoit l'identifiant du compte. Elle cherche par SIREN quand il est connu, sinon par nom et code postal. Par prudence, une recherche par nom ne remplit pas la fiche : elle propose un SIREN, qu'un commercial valide.

// Zoho CRM : fonction liée à une règle de workflow sur les comptes (argument idCompte)
compte = zoho.crm.getRecordById("Accounts", idCompte);
siren = ifnull(compte.get("SIREN"), "").replaceAll(" ", "");
parSiren = siren.length() == 9;
if(parSiren)
{
	requete = "q=" + siren;
}
else
{
	requete = "q=" + encodeUrl(compte.get("Account_Name")) + "&code_postal=" + ifnull(compte.get("Billing_Code"), "");
}
reponse = invokeurl
[
	url :"https://recherche-entreprises.api.gouv.fr/search?" + requete + "&per_page=1"
	type :GET
];
resultats = ifnull(reponse.get("results"), list());
if(resultats.size() == 0)
{
	info "Aucune entreprise trouvée";
	return;
}
entreprise = resultats.get(0);
maj = Map();
if(!parSiren)
{
	// Recherche par nom : la fonction propose, un commercial valide
	maj.put("SIREN_propose", entreprise.get("siren") + " " + entreprise.get("nom_complet"));
	zoho.crm.updateRecord("Accounts", idCompte, maj);
	return;
}
if(entreprise.get("siren") != siren)
{
	info "SIREN introuvable : " + siren;
	return;
}
tranches = {"NN":"Non employeuse","00":"0 salarié","01":"1 à 2","02":"3 à 5","03":"6 à 9","11":"10 à 19","12":"20 à 49","21":"50 à 99","22":"100 à 199","31":"200 à 249","32":"250 à 499","41":"500 à 999","42":"1 000 à 1 999","51":"2 000 à 4 999","52":"5 000 à 9 999","53":"10 000 et plus"};
siege = entreprise.get("siege");
maj.put("SIRET_siege", siege.get("siret"));
maj.put("Code_NAF", entreprise.get("activite_principale"));
maj.put("Tranche_effectif", tranches.get(ifnull(entreprise.get("tranche_effectif_salarie"), "NN")));
maj.put("Annee_effectif", entreprise.get("annee_tranche_effectif_salarie"));
maj.put("Categorie_entreprise", entreprise.get("categorie_entreprise"));
maj.put("Date_creation", entreprise.get("date_creation"));
maj.put("Etat_administratif", if(entreprise.get("etat_administratif") == "A", "Active", "Cessée"));
maj.put("Enrichi_le", zoho.currentdate);
info zoho.crm.updateRecord("Accounts", idCompte, maj);

Quatre points méritent l'attention :

  • Les champs personnalisés : créez-les avant d'activer la fonction, avec les noms d'API utilisés dans le code.
  • La traduction des tranches : la table tranches convertit le code INSEE en libellé, et chaque libellé doit exister dans la liste de choix.
  • Le SIREN proposé : la meilleure correspondance par nom n'est pas toujours la bonne entreprise. Un humain tranche.
  • Les crédits d'API : la lecture et la mise à jour du compte consomment des crédits Zoho CRM (API Zoho CRM : crédits, limites et quotas (v8)). L'appel à l'API de l'État, lui, est gratuit.

Pour aller plus loin et noter chaque prospect avec l'IA, voyez l'agent de qualification (Agent IA : qualifier chaque nouveau lead dans Zoho CRM).

Comment déclencher la fonction selon votre édition ?

Les fonctions Deluge dans les règles de workflow demandent l'édition Enterprise. Les éditions inférieures ont deux autres chemins.

Édition de Zoho CRM Déclencheur Où tourne le code
Enterprise et Ultimate Règle de workflow sur les comptes Fonction Deluge dans Zoho CRM
Professional Règle de workflow avec un webhook Fonction Zoho Catalyst, qui appelle l'API puis met à jour le compte
Standard et Professional Zoho Flow, sur la création d'un compte Fonction personnalisée en Deluge dans Zoho Flow

Dans tous les cas, déclenchez à deux moments : à la création du compte, et quand le champ SIREN change. Un SIREN ajouté après coup enrichit ainsi la fiche sans action manuelle.

Zoho Flow est inclus dans Zoho One, et son offre gratuite compte 100 tâches par mois : assez pour tester sur un petit volume. Le détail de ce que chaque édition permet est dans Éditions Zoho CRM : ce que chacune permet techniquement.

Comment enrichir les comptes existants en masse ?

Pour une base déjà remplie, une fonction planifiée reprend les comptes par lots, chaque nuit. Trois règles la rendent sûre :

  1. Des lots courts. Une fonction planifiée dispose de 15 minutes. Traitez quelques centaines de comptes par passage, repérés grâce au champ Enrichi_le, et reprenez la nuit suivante.
  2. Un rythme sous la limite de l'API. L'API de l'État accepte 7 appels par seconde. Une boucle séquentielle limite déjà le débit ; un traitement en parallèle doit être bridé.
  3. Des mises à jour groupées. zoho.crm.bulkUpdate met à jour jusqu'à 100 comptes en un appel, et économise des crédits d'API.

Un ordre de grandeur : 10 000 comptes à 7 appels par seconde demandent près de 24 minutes d'appels, donc au moins deux passages. Au-delà de quelques dizaines de milliers de comptes, passez sur Zoho Catalyst, qui découpe le travail en tâches de 15 minutes et gère les relances (Deluge : dépasser les limites de 10 s, 30 s et 15 min).

Quelles limites connaître, RGPD compris ?

  • Les entreprises non diffusibles sont absentes. Un entrepreneur qui a demandé la non-diffusion de ses données n'apparaît pas : sa fiche se complète à la main, avec ce qu'il vous a lui-même donné. Les entreprises dont l'immatriculation au RCS a été refusée sont absentes aussi.
  • Les données sont déclaratives et datées. L'effectif et la catégorie correspondent à une année de référence, et la base reflète ce que les entreprises ont déclaré. Elle est mise à jour chaque jour.
  • Pas de clé, mais un débit plafonné. Au-delà de 7 appels par seconde, attendez-vous à des refus : prévoyez une nouvelle tentative plutôt qu'un échec définitif.
  • Les dirigeants sont des données personnelles. L'API peut renvoyer leurs noms. Les copier dans le CRM les fait entrer dans votre traitement de prospection : gardez seulement ce qui sert, informez les personnes et inscrivez le traitement dans votre registre.

La fonction de cet article ne copie aucun dirigeant : seules des données sur l'entreprise entrent dans la fiche.

API gratuite, Zia ou Pappers : que choisir ?

Trois façons d'enrichir une fiche coexistent dans l'écosystème Zoho. Elles ne fournissent pas les mêmes données.

Critère API Recherche d'entreprises Enrichissement de Zia Extension Pappers, par Vivasoft
Prix Gratuit Inclus dans Zoho CRM, dans la limite d'un quota Extension payante
Édition de Zoho CRM Toutes, avec le bon déclencheur Dès Standard Enterprise et au-delà
Volume 7 appels par seconde 500 enrichissements par licence, 50 000 au plus Selon l'offre de l'extension
SIREN, code NAF, effectif Oui Non Oui, depuis Pappers
Code à écrire Une fonction Aucun Aucun

Pour une base de clients français, l'API gratuite couvre l'essentiel. Zia complète avec des données venues du web, mais sans le répertoire SIRENE (L'IA dans Zoho : ce que Zia fait et ce qu'il faut construire). L'extension Pappers convient à qui veut une solution prête à l'emploi, sans code, en édition Enterprise. Les autres connecteurs utiles pour une entreprise française sont recensés dans le panorama.

Mettre l'enrichissement en place en quelques heures

Créer les champs, brancher le bon déclencheur selon votre édition, reprendre la base existante : c'est un petit chantier, pas un projet.

Banque d'heures Zoho, par SquadNovia

Nous créons les champs, installons la fonction ou son équivalent pour votre édition, enrichissons vos comptes existants par lots et vous laissons une procédure de contrôle. Des heures prépayées, à utiliser sur ce chantier ou sur d'autres développements Zoho.

Réserver des heures

Questions fréquentes

L'API Recherche d'entreprises est-elle vraiment gratuite ?

Oui, sans clé ni inscription, dans la limite de 7 appels par seconde.

Peut-on chercher une entreprise sans son SIREN ?

Oui, par son nom, avec un filtre sur le code postal. Mais la meilleure correspondance n'est pas toujours la bonne : faites valider le SIREN proposé.

Pourquoi certaines entreprises sont-elles introuvables ?

Les entreprises non diffusibles, et celles dont l'immatriculation au RCS a été refusée, ne sont pas accessibles par l'API.

Que signifie le code 12 dans la tranche d'effectif ?

20 à 49 salariés, selon la nomenclature de l'INSEE. Le code NN désigne une unité non employeuse.

Faut-il l'édition Enterprise de Zoho CRM ?

Pour une fonction déclenchée par une règle de workflow, oui. En Professional, passez par un webhook et Zoho Catalyst ; en Standard, par Zoho Flow.

Zia ne fait-il pas déjà cet enrichissement ?

Zia enrichit les fiches avec des données du web, mais pas avec le répertoire SIRENE : ni SIREN, ni code NAF, ni tranche d'effectif INSEE.

Sources

Pages consultées le 21 octobre 2026.

À lire aussi

Vous utilisez Zoho ?

Développement, agents IA, connecteurs français, facturation électronique : l’atelier technique Zoho, en français.