Qu’est-ce que le branching ?
Le branching (logique conditionnelle) est le mécanisme qui permet à un workflow de prendre des décisions. Au lieu de suivre un chemin linéaire unique, le workflow évalue une condition et oriente les données vers différentes branches selon le résultat.
C’est l’équivalent d’un aiguillage ferroviaire : les données arrivent à un point de décision, et selon leurs caractéristiques, elles sont dirigées vers le chemin approprié.
Comment fonctionne le branching
Condition simple (IF/ELSE)
Le cas le plus courant : une condition unique avec deux chemins possibles.
Exemple : un workflow de traitement d’emails
- Condition : le sujet contient “facture”
- Branche TRUE : extraire le montant, l’enregistrer dans la comptabilité, envoyer un accusé de réception
- Branche FALSE : transférer à l’équipe support
Conditions multiples (Switch/Router)
Pour les cas complexes avec plus de deux chemins, un switch évalue plusieurs conditions successives :
- Condition 1 : catégorie = “commercial” → envoyer au CRM
- Condition 2 : catégorie = “support” → créer un ticket
- Condition 3 : catégorie = “comptabilité” → transférer au service financier
- Fallback : aucune condition remplie → archiver
Branching par plateforme
| Plateforme | Nœud IF | Nœud Switch/Router | Particularités |
|---|---|---|---|
| n8n | IF | Switch | Branches illimitées, expressions JavaScript |
| Make | Router + filtre | Router multi-chemins | Chaque chemin peut avoir son propre filtre |
| Zapier | Paths | Paths multi-chemins | Limité à 3-5 chemins selon le plan |
Cas d’usage courants
Routage par priorité
Un workflow de support client qui classe les demandes :
- Demande urgente (client premium) → notification immédiate à l’équipe + réponse automatique
- Demande standard → ajout à la file d’attente + email d’accusé
- Spam détecté → archivage silencieux
Traitement différencié par type de données
Un workflow d’import qui traite différemment les fichiers selon leur format :
- CSV → parsing tabulaire
- PDF → extraction de texte via un LLM
- Image → analyse visuelle via un modèle multimodal
A/B testing automatisé
Répartir les données entre deux traitements pour comparer les résultats :
- 50 % des leads → email de bienvenue version A
- 50 % des leads → email de bienvenue version B
Bonnes pratiques
- Toujours prévoir un fallback : ajouter une branche par défaut pour les cas non couverts par les conditions. Sans fallback, les données non matchées disparaissent silencieusement
- Simplifier les conditions : une condition lisible est une condition maintenable. Éviter les expressions trop complexes avec des ET/OU imbriqués sur plus de 3 niveaux
- Limiter la profondeur : des branches qui contiennent elles-mêmes des branches créent des workflows difficiles à suivre. Au-delà de 2 niveaux de branching, envisager de découper en sous-workflows
- Documenter la logique : ajouter un commentaire sur chaque branche expliquant la règle métier qu’elle implémente. Dans 3 mois, la logique ne sera plus évidente
Termes associés
Questions fréquentes
C'est quoi le branching dans un workflow ?
Le branching (ou logique conditionnelle) permet de créer des chemins différents dans un workflow selon des conditions. Par exemple : si l'email contient le mot 'urgent', envoyer une notification Slack ; sinon, l'archiver. Chaque branche est un chemin indépendant avec ses propres modules et actions.
Quelle est la différence entre branching et filtrage ?
Le filtrage bloque les données qui ne correspondent pas à une condition — elles sont simplement ignorées. Le branching ne bloque rien : il oriente les données vers des chemins différents. Avec un filtre, les emails non urgents sont ignorés. Avec le branching, les emails urgents prennent le chemin A (notification) et les emails non urgents prennent le chemin B (archivage).
Comment créer un branching dans n8n ?
Dans n8n, le nœud IF (ou Switch pour les conditions multiples) permet de créer des branches. Le nœud IF évalue une condition et envoie les données vers la sortie 'true' ou 'false'. Le nœud Switch permet de gérer plus de deux chemins en évaluant plusieurs conditions successives, comme un switch/case en programmation.
Le branching augmente-t-il le coût sur Make ?
Oui. Sur Make, chaque module exécuté dans chaque branche consomme une opération. Un scénario avec un routeur et deux branches de 3 modules chacune consomme au minimum 4 opérations par exécution (routeur + 3 modules de la branche active). Si les deux branches s'exécutent, c'est 7 opérations.