Pourquoi n8n pour l'enrichissement SIREN ?
n8n offre un avantage clé sur Make.com pour ce cas d'usage : l'auto-hébergement. Si vous traitez des données sensibles (prospects financiers, portefeuille clients), garder le workflow sur votre infrastructure évite tout transit de données vers des serveurs tiers.
De plus, n8n permet du code JavaScript natif dans les nœuds "Function", ce qui donne plus de flexibilité pour le mapping et la transformation des données.
Architecture du workflow
Le workflow se compose de 5 nœuds :
- Trigger : Webhook, Schedule, ou nœud CRM
- HTTP Request : appel API OneMCP (
company_search) - IF : vérification qu'un résultat a été trouvé
- Function : transformation et mapping des données
- Output : mise à jour CRM ou Google Sheets
Configuration du nœud HTTP Request
Dans n8n, ajoutez un nœud HTTP Request avec :
{
"method": "POST",
"url": "https://api.onemcp.fr/api/company_search",
"authentication": "headerAuth",
"headerParameters": {
"Authorization": "Bearer mk_live_VOTRE_CLE"
},
"bodyParameters": {
"query": "={{$json.company_name}}",
"per_page": 1,
"is_active": true
},
"responseFormat": "json"
}
Nœud Function : mapping et nettoyage
// Dans le nœud Function n8n :
const result = $input.first().json.results?.[0];
if (!result) {
return [{ json: { enriched: false, reason: "no_match" } }];
}
return [{
json: {
enriched: true,
siren: result.siren,
naf_code: result.naf_code,
naf_label: result.naf_label,
address: result.address,
employee_range: result.employee_range,
is_active: result.is_active,
enriched_at: new Date().toISOString()
}
}];
Enrichissement en batch avec SplitInBatches
Pour enrichir une liste entière, utilisez le nœud SplitInBatches pour itérer sur chaque ligne. n8n gère la pagination automatiquement. Configurez un délai de 200ms entre chaque appel pour respecter les quotas :
{
"tool": "company_batch",
"params": {
"sirens": ["{{$json.siren_1}}", "{{$json.siren_2}}", "{{$json.siren_3}}"]
}
}
Utilisez company_batch via l'API REST pour traiter jusqu'à 20 SIRENs en un seul appel — beaucoup plus efficace que des appels individuels.
Gestion des erreurs
n8n permet de configurer des nœuds d'erreur. Connectez la sortie "Error" de chaque nœud HTTP vers un nœud qui :
- Log l'erreur dans un Google Sheet dédié
- Crée une tâche dans votre CRM pour vérification manuelle
- Envoie une notification Slack si le taux d'erreur dépasse 5%
Déploiement : n8n Cloud vs self-hosted
| Option | Coût | Avantage |
|---|---|---|
| n8n Cloud | ~20 €/mois | Zéro maintenance, SSL inclus |
| Self-hosted (Docker) | ~5 €/mois VPS | Données privées, personnalisation |
| Self-hosted local | Gratuit | Idéal pour tester |