Manuel de formation
Construire, sans écrire une ligne de code, des workflows commerciaux qui captent, qualifient et relancent les prospects automatiquement — avec n8n et l'IA. Ce manuel détaille, séance par séance, les étapes de construction et des exemples concrets (payloads, prompts, templates) pour chaque atelier.
Objectif — à l'issue de la formation, chaque participant sait créer ses propres automatisations commerciales sans code, et repart avec plusieurs workflows fonctionnels, exportables et réutilisables dans son activité.
Enchaîner automatiquement une série d'actions à partir d'un événement déclencheur, sans qu'un humain ait à répéter la tâche manuellement. Exemple sans automatisation : un commercial reçoit un email de contact, ouvre son tableur, copie les informations, ouvre sa messagerie, écrit une notification à l'équipe. Avec automatisation : ces quatre actions s'enchaînent seules, en quelques secondes, à chaque nouvel email.
Une tâche est une bonne candidate à l'automatisation quand elle réunit plusieurs de ces signaux :
À l'inverse, une tâche qui demande du jugement, de l'empathie ou une décision commerciale engageante (négocier un prix, gérer une réclamation sensible) reste du ressort humain — l'automatisation peut au mieux préparer le terrain (résumer, qualifier, notifier) sans remplacer la décision.
| Outil | Modèle | Complexité | Hébergement | Idéal pour |
|---|---|---|---|---|
| Zapier | SaaS, facturé à la tâche | Très simple | Cloud uniquement | Démarrer vite, petit volume |
| Make | SaaS, facturé à l'opération | Intermédiaire | Cloud uniquement | Scénarios visuels complexes |
| Power Automate | SaaS, licence Microsoft | Intermédiaire | Cloud (écosystème Microsoft) | Entreprises déjà sous Microsoft 365 |
| n8n | Open-source | Intermédiaire | Cloud ou self-hosted | Flexibilité, coût maîtrisé, logique avancée |
Pourquoi n8n pour cette formation : contrairement à Zapier ou Make où le coût grimpe avec le volume d'exécutions, n8n peut être auto-hébergé à coût fixe. Son modèle par nœuds visuels reste accessible sans code, tout en permettant d'écrire de petites expressions JavaScript quand la logique no-code atteint ses limites — un compromis rare entre simplicité et puissance.
| Terme | Définition | Exemple |
|---|---|---|
| Déclencheur | L'événement qui démarre le workflow | Un formulaire est soumis |
| Action | Une étape qui exécute une tâche | Enregistrer une ligne dans Google Sheets |
| Workflow | L'enchaînement complet déclencheur + actions | « Nouveau lead → Sheets → Email » |
| Exécution | Un passage unique du workflow, avec des données précises | Le passage d'un prospect donné dans le workflow |
| Nœud | Un bloc représentant une étape (trigger ou action) | Le nœud « Google Sheets » |
| Credential | Les identifiants stockés permettant à n8n de se connecter à un service | Le compte Gmail utilisé pour envoyer les emails |
| Expression | Une formule dynamique entre {{ }} qui insère une donnée ou un calcul | {{ $json.Nom }} |
Avant tout contact avec l'outil, chaque participant cartographie à la main un processus commercial réel de son activité.
déclencheur → action 1 → action 2 → résultatExemple rempli
Cette cartographie sert de base au premier workflow construit en séance 2.
| Zone | Rôle |
|---|---|
| Canvas | Espace central où les nœuds sont posés et reliés entre eux |
| Panneau de nœuds (+) | Recherche et ajout d'un nouveau nœud par nom ou catégorie |
| Panneau latéral d'un nœud | Paramètres, données d'entrée/sortie, aperçu du JSON traité |
| Executions | Historique des passages du workflow, réussis ou en erreur, avec les données de chaque étape |
| Credentials | Bibliothèque centralisée des accès (Google, Gmail, Slack, OpenAI…), réutilisable entre workflows |
Un clic sur Test workflow exécute le workflow une seule fois avec des données réelles ou simulées, sans l'activer en continu. Chaque nœud affiche ensuite les données qu'il a reçues et produites — c'est le premier réflexe de débogage : lire le JSON à l'entrée et à la sortie de chaque étape avant de chercher plus loin. Le workflow n'est réellement « en production » qu'une fois le bouton Active basculé.
Google Sheets ou Gmail nécessite une credential connectée (compte Google autorisé via OAuth). Sans elle, le nœud affiche une erreur d'authentification dès le premier test : toujours créer la credential avant de configurer le nœud qui l'utilise.Un prospect remplit un formulaire :
→ Enregistrement automatique dans Google Sheets
→ Notification par email
→ Historique des prospects centralisé
Capture de leadsn8n Form Trigger (On form submission) avec les champs : Nom, Email, Société, BesoinSet (Edit Fields) pour normaliser les données : email en minuscules, ajout d'un champ Date de réception avec l'expression {{ $now }}Google Sheets, opération Append row, connecté au classeur « Suivi Prospects », onglet « Leads »Gmail (ou Send Email) pour notifier l'équipeExemple — données soumises par le formulaire
Exemple — corps de l'email de notification
Un score numérique transforme un jugement subjectif (« ce prospect a l'air intéressant ») en règle explicite, reproductible et modifiable. Il permet à un Switch de router automatiquement chaque prospect vers le bon traitement, sans intervention humaine à chaque nouvelle ligne. Les poids attribués à chaque critère restent une décision commerciale : ils doivent être révisés régulièrement à la lumière des résultats (un critère qui ne corrèle pas avec les ventes conclues doit être réajusté ou retiré).
Filter vs IF| Nœud | Sorties | Usage typique |
|---|---|---|
| Filter | 1 seule (les éléments qui ne passent pas la condition sont simplement écartés) | Ne garder que les lignes à traiter dans un lot |
| IF | 2 (vraie / fausse) | Faire deux traitements différents selon une condition |
| Switch | N (une par règle, + une sortie par défaut) | Router vers plusieurs traitements distincts (3 segments ou plus) |
Qualification selon plusieurs critères : taille de l'entreprise, secteur d'activité, niveau d'intérêt. Le système oriente automatiquement chaque prospect vers le bon traitement.
Exemple — grille de score (nœud Set)
| Critère | Condition | Points |
|---|---|---|
| Taille entreprise | > 50 salariés | +2 |
| Secteur prioritaire | Tech, Finance ou Santé | +2 |
| Niveau d'intérêt | Déclaré « Élevé » | +1 |
Set qui calcule un champ score à partir des critères ci-dessusSwitch à 3 branches basé sur ce scoreExemple — expression du nœud Set
Exemple — routage du Switch
Relances à J+3 · J+7 · J+15 sans intervention manuelle, avec arrêt automatique dès que le prospect répond.
Schedule Trigger quotidien (ex. 8h00)Google Sheets : lire toutes les lignes de suiviFilter : ne garder que les lignes où Statut = "En attente" et Prochaine relance <= aujourd'huiIF : vérifier que le prospect n'a pas déjà répondu (statut CRM) avant d'envoyerSwitch sur Nombre de relances envoyées : 0 → template J+3, 1 → template J+7, 2 → template J+15Send Email avec le template correspondantSet : incrémenter Nombre de relances, mettre à jour Prochaine relance, passer Statut à « Clos » après la 3ᵉExemple — templates de relance
Un prompt efficace se compose de deux rôles distincts, envoyés séparément au modèle :
Trois réflexes améliorent nettement la qualité des réponses : donner un exemple du résultat attendu quand le format compte, imposer une contrainte de longueur explicite (« 120 mots maximum »), et demander une structure précise plutôt qu'un texte libre quand la sortie doit être exploitée automatiquement (comme le compte rendu structuré en 4 rubriques).
| Modèle | Vitesse | Coût | Usage recommandé |
|---|---|---|---|
| gpt-4o-mini | Très rapide | Faible | Emails, messages courts, tâches à fort volume |
| gpt-4o | Rapide | Modéré | Comptes rendus complexes, raisonnement plus fin |
Création d'un assistant capable de rédiger des emails commerciaux, générer des messages LinkedIn, préparer des réponses aux objections et produire des comptes rendus de rendez-vous, via le nœud OpenAI dans n8n.
OpenAI (Message a model), renseigner la clé APIExemple — email commercial
Exemple — message LinkedIn
Exemple — réponse à une objection
Exemple — compte rendu de rendez-vous
Un webhook est une URL exposée par n8n qui reçoit automatiquement des données dès qu'un événement externe se produit (soumission de formulaire, appel d'une autre application). Les données arrivent structurées en JSON.
Exemple — payload reçu par le webhook
Le JSON s'organise en paires clé-valeur, imbriquées à volonté. Trois formes reviennent constamment :
| Structure | Exemple | Accès en expression |
|---|---|---|
| Objet imbriqué | { "body": { "nom": "Marc" } } | $json.body.nom |
| Tableau (liste) | { "besoins": ["CRM", "Facturation"] } | $json.besoins[0] |
| Valeur simple | { "score": 4 } | $json.score |
| Méthode | Usage |
|---|---|
| GET | Lire une donnée existante, sans la modifier |
| POST | Créer une nouvelle donnée (ex. un contact dans un CRM) |
| PUT / PATCH | Mettre à jour une donnée existante |
| DELETE | Supprimer une donnée |
Un formulaire n8n (Form Trigger) simplifie cette mécanique en gérant la réception automatiquement ; un webhook générique demande de comprendre la forme exacte du JSON envoyé par l'application externe, généralement documentée dans sa page « Webhooks » ou « API ».
Chaque valeur du JSON reçu devient accessible via une expression n8n :
D'autres expressions utiles reviennent souvent dans les workflows commerciaux :
Analyse et personnalisation des données d'un prospect. Exemple : Nom → Email → Société → Besoin utilisés automatiquement dans les workflows.
Set après le webhookFiche combinant plusieurs variablesExemple — expression du champ « Fiche »
Réutilisation du score calculé en séance 3 pour router chaque prospect :
Si prospect stratégique → CRM, Notification commerciale
Sinon → Email automatique, Documentation
IF testant la condition {{ $json.score >= 4 }}HTTP Request vers l'API du CRM (ex. HubSpot/Pipedrive) + notification Slack au commercialSend Email avec ressource documentaire + mise à jour du tag dans Google SheetsExemple — condition du nœud IF
Après un routage (IF ou Switch), les branches peuvent être recombinées avec un nœud Merge — utile quand une étape finale commune (journalisation, notification) doit s'exécuter quel que soit le chemin emprunté, plutôt que de dupliquer cette étape sur chaque branche.
Quand un nœud précédent (Google Sheets, base de données) renvoie plusieurs lignes, n8n exécute par défaut les nœuds suivants une fois par ligne — inutile d'écrire une boucle explicite dans la plupart des cas. Le nœud Loop Over Items (Split in Batches) devient nécessaire seulement quand le traitement doit se faire par paquets (ex. 10 lignes à la fois pour respecter une limite d'API), avec une pause entre chaque paquet.
Un nœud comme HTTP Request ou Gmail peut échouer (API indisponible, credential expirée). Par défaut, l'exécution entière s'arrête et remonte en erreur. Deux options changent ce comportement :
Error Trigger — reçoit automatiquement les détails de toute exécution en échec (quel workflow, quel nœud, quel message d'erreur) pour notifier un canal Slack dédié au monitoringUne API (interface de programmation) est simplement une porte d'entrée qu'une application expose pour que d'autres logiciels puissent lui parler — lire ou écrire des données — sans passer par son interface visuelle. Le nœud HTTP Request permet de frapper à cette porte : il envoie une requête à une URL et récupère la réponse, généralement en JSON.
| Type | Principe | Exemple |
|---|---|---|
| Clé API (Header) | Un jeton fixe envoyé dans un en-tête HTTP | Authorization: Bearer sk-xxx |
| Clé API (Query) | Un jeton fixe envoyé dans l'URL | ?api_key=xxx |
| OAuth2 | Autorisation via connexion au compte, jeton renouvelé automatiquement | Connexion Google, HubSpot |
| Basic Auth | Identifiant + mot de passe encodés dans la requête | Rare sur les API modernes |
n8n stocke ces informations dans une credential dédiée au nœud HTTP Request plutôt que dans l'expression elle-même — la clé n'apparaît donc jamais en clair dans le workflow exporté.
429 signale un dépassement : le nœud HTTP Request propose une option de nouvelle tentative automatique (« Retry on Fail ») avec un délai croissant, à activer dès qu'un workflow appelle une API externe pour chaque prospect.Connexion d'une application externe pour enrichir automatiquement une fiche prospect.
HTTP Request, méthode GEThttps://api.exemple.com/entreprise?domaine={{ $json.domaine }}Authorization: Bearer {{ $credentials.apiKey }}Set suivant pour fusionner la réponse dans la fiche prospectExemple — réponse de l'API
Assemblage de tous les blocs construits pendant la formation, sur un seul workflow :
Capture des leads → Qualification → Relances → IA → Reporting
Enchaînement complet des nœuds
Un workflow n'est jamais définitivement terminé : les API changent, les volumes augmentent, les besoins commerciaux évoluent. Quelques habitudes évitent les mauvaises surprises :