{"id":140,"date":"2026-01-19T00:00:00","date_gmt":"2026-01-18T23:00:00","guid":{"rendered":"https:\/\/helloblog.io\/fr\/automatiser-formulaires-wordpress-wpforms-avec-n8n\/"},"modified":"2026-01-20T06:32:40","modified_gmt":"2026-01-20T05:32:40","slug":"automatiser-formulaires-wordpress-wpforms-avec-n8n","status":"publish","type":"post","link":"https:\/\/helloblog.io\/fr\/automatiser-formulaires-wordpress-wpforms-avec-n8n\/","title":{"rendered":"Automatiser les formulaires WordPress avec n8n (WPForms) : pipeline sans copier-coller"},"content":{"rendered":"\n<p>Quand un site WordPress commence \u00e0 g\u00e9n\u00e9rer un peu de volume (leads, demandes de devis, inscriptions, paiements), le point de friction arrive vite : les donn\u00e9es sortent du formulaire\u2026 puis stagnent dans une bo\u00eete mail. Et on se retrouve \u00e0 copier un email, coller un t\u00e9l\u00e9phone, cr\u00e9er une t\u00e2che, notifier l\u2019\u00e9quipe, relancer, etc.<\/p>\n\n\n\n<p>L\u2019int\u00e9r\u00eat de <strong>n8n<\/strong> (un outil d\u2019automatisation de workflows, bas\u00e9 sur des <em>nodes<\/em> et des <em>triggers<\/em>) est justement de servir de passerelle entre ton site et tes outils m\u00e9tiers. Coupl\u00e9 \u00e0 <strong>WPForms<\/strong> via l\u2019addon n8n, tu peux transformer chaque soumission en une cha\u00eene d\u2019actions : enrichissement, filtrage, routage, notifications, \u00e9criture dans un Google Sheet, synchro CRM, etc.<\/p>\n\n\n\n<p>Dans ce guide, on met en place une int\u00e9gration propre : <strong>WPForms \u2192 webhook n8n \u2192 actions<\/strong>. Objectif : un workflow actif 24\/7 (avec l\u2019URL \u201cProduction\u201d), s\u00e9curis\u00e9 par une <strong>Secret Key<\/strong>, et facile \u00e0 maintenir.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">n8n, concr\u00e8tement : \u00e0 quoi \u00e7a sert pour des formulaires WordPress ?<\/h2>\n\n\n\n<p>n8n est un orchestrateur d\u2019automatisation : tu construis un workflow visuellement et tu relies des services via des connecteurs. L\u00e0 o\u00f9 certains plugins ne font qu\u2019une int\u00e9gration \u201cA vers B\u201d, n8n te laisse composer de la logique (conditions, transformations, multiples destinations, code custom si besoin).<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li><strong>Gagner du temps<\/strong> : plus de ressaisie manuelle apr\u00e8s chaque email de notification.<\/li>\n\n\n<li><strong>R\u00e9duire les erreurs<\/strong> : les donn\u00e9es sont transf\u00e9r\u00e9es telles qu\u2019elles ont \u00e9t\u00e9 saisies.<\/li>\n\n\n<li><strong>Mieux ma\u00eetriser la donn\u00e9e<\/strong> : n8n peut \u00eatre <em>self-hosted<\/em> (auto-h\u00e9berg\u00e9) pour garder le contr\u00f4le sur les flux.<\/li>\n\n\n<li><strong>Cr\u00e9er des workflows complexes<\/strong> : filtrer, reformater, router vers plusieurs apps en parall\u00e8le, etc.<\/li>\n\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">n8n vs Zapier \/ Make : ce qui change vraiment<\/h3>\n\n\n\n<p>Les trois font de l\u2019automatisation, mais n8n se d\u00e9marque surtout sur deux axes : le <strong>self-hosting<\/strong> (donc la confidentialit\u00e9\/ma\u00eetrise) et la <strong>flexibilit\u00e9<\/strong> (logique avanc\u00e9e, possibilit\u00e9s de code). Zapier\/Make sont tr\u00e8s efficaces mais plut\u00f4t orient\u00e9s SaaS, et peuvent devenir co\u00fbteux quand le volume augmente.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Pr\u00e9-requis (\u00e0 v\u00e9rifier avant de commencer)<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li>Une licence <strong>WPForms Pro<\/strong> (l\u2019int\u00e9gration n8n est un addon premium).<\/li>\n\n\n<li>Le plugin <strong>WPForms<\/strong> en version <strong>1.9.8.1 ou sup\u00e9rieure<\/strong>.<\/li>\n\n\n<li>Un compte <strong>n8n<\/strong> (cloud) ou une instance <strong>self-hosted<\/strong> (n8n propose aussi un essai gratuit c\u00f4t\u00e9 cloud, selon l\u2019annonce).<\/li>\n\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">\u00c9tape 1 \u2014 Cr\u00e9er un workflow n8n avec le trigger WPForms<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">1) D\u00e9marrer un workflow \u201cfrom scratch\u201d<\/h3>\n\n\n\n<p>Connecte-toi au dashboard n8n, puis cr\u00e9e un nouveau workflow (option \u201cStart from scratch\u201d). Tu arrives sur un canvas vide : c\u2019est l\u00e0 que tu poses ton trigger et tes actions.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"680\" height=\"383\" src=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-start-from-scratch.jpg\" alt=\"Cr\u00e9ation d\u2019un nouveau workflow dans n8n (Start from scratch)\" class=\"wp-image-122\" srcset=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-start-from-scratch.jpg 680w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-start-from-scratch-300x169.jpg 300w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-start-from-scratch-400x225.jpg 400w\" sizes=\"auto, (max-width: 680px) 100vw, 680px\" \/><figcaption class=\"wp-element-caption\">\/ \u2014 <em>Forr\u00e1s: WPBeginner.com<\/em><\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">2) Ajouter le node WPForms Trigger<\/h3>\n\n\n\n<p>Clique sur le \u201c+\u201d du canvas pour ajouter un node, puis recherche <strong>WPForms<\/strong>. S\u00e9lectionne <strong>WPForms Trigger<\/strong>, installe le node si n\u00e9cessaire, puis \u201cAdd to workflow\u201d.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"680\" height=\"382\" src=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-add-new-node.jpg\" alt=\"Ajout d\u2019un node dans l\u2019\u00e9diteur de workflow n8n\" class=\"wp-image-123\" srcset=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-add-new-node.jpg 680w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-add-new-node-300x169.jpg 300w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-add-new-node-400x225.jpg 400w\" sizes=\"auto, (max-width: 680px) 100vw, 680px\" \/><figcaption class=\"wp-element-caption\">\/ \u2014 <em>Forr\u00e1s: WPBeginner.com<\/em><\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"680\" height=\"383\" src=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-wpforms-trigger.jpg\" alt=\"S\u00e9lection du trigger WPForms dans n8n\" class=\"wp-image-124\" srcset=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-wpforms-trigger.jpg 680w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-wpforms-trigger-300x169.jpg 300w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-wpforms-trigger-400x225.jpg 400w\" sizes=\"auto, (max-width: 680px) 100vw, 680px\" \/><figcaption class=\"wp-element-caption\">\/ \u2014 <em>Forr\u00e1s: WPBeginner.com<\/em><\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"680\" height=\"383\" src=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/m8n-install-node.jpg\" alt=\"Installation du node WPForms Trigger dans n8n\" class=\"wp-image-125\" srcset=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/m8n-install-node.jpg 680w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/m8n-install-node-300x169.jpg 300w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/m8n-install-node-400x225.jpg 400w\" sizes=\"auto, (max-width: 680px) 100vw, 680px\" \/><figcaption class=\"wp-element-caption\">\/ \u2014 <em>Forr\u00e1s: WPBeginner.com<\/em><\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"680\" height=\"382\" src=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-add-to-workflow.jpg\" alt=\"Ajout du node WPForms Trigger au workflow n8n\" class=\"wp-image-126\" srcset=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-add-to-workflow.jpg 680w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-add-to-workflow-300x169.jpg 300w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-add-to-workflow-400x225.jpg 400w\" sizes=\"auto, (max-width: 680px) 100vw, 680px\" \/><figcaption class=\"wp-element-caption\">\/ \u2014 <em>Forr\u00e1s: WPBeginner.com<\/em><\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">3) R\u00e9cup\u00e9rer l\u2019URL webhook \u201cProduction\u201d<\/h3>\n\n\n\n<p>Ouvre la configuration du node <strong>WPForms Trigger<\/strong>, va dans l\u2019onglet <strong>Parameters<\/strong>, puis rep\u00e8re la section <strong>Webhook URLs<\/strong>. Tu verras g\u00e9n\u00e9ralement une URL de test et une URL de production.<\/p>\n\n\n\n<p>Utilise <strong>Production URL<\/strong> : c\u2019est celle qui est pens\u00e9e pour tourner en continu (alors que la \u201cTest URL\u201d est souvent li\u00e9e \u00e0 l\u2019\u00e9tat de l\u2019\u00e9diteur). Copie l\u2019URL, on va la coller dans WPForms.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"680\" height=\"371\" src=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/nin-wpforms-trigger-parameters.jpg\" alt=\"Param\u00e8tres du node WPForms Trigger dans n8n\" class=\"wp-image-127\" srcset=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/nin-wpforms-trigger-parameters.jpg 680w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/nin-wpforms-trigger-parameters-300x164.jpg 300w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/nin-wpforms-trigger-parameters-400x218.jpg 400w\" sizes=\"auto, (max-width: 680px) 100vw, 680px\" \/><figcaption class=\"wp-element-caption\">\/ \u2014 <em>Forr\u00e1s: WPBeginner.com<\/em><\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"680\" height=\"382\" src=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-production-url.jpg\" alt=\"Copie de l\u2019URL de production (webhook) dans n8n\" class=\"wp-image-128\" srcset=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-production-url.jpg 680w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-production-url-300x169.jpg 300w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-production-url-400x225.jpg 400w\" sizes=\"auto, (max-width: 680px) 100vw, 680px\" \/><figcaption class=\"wp-element-caption\">\/ \u2014 <em>Forr\u00e1s: WPBeginner.com<\/em><\/figcaption><\/figure>\n\n\n\n<div class=\"wp-block-group callout callout-info is-style-info is-layout-flow wp-block-group-is-layout-flow\" style=\"border-width:1px;border-radius:8px;padding-top:1rem;padding-right:1.5rem;padding-bottom:1rem;padding-left:1.5rem\">\n\n<h4 class=\"wp-block-heading callout-title\">Webhook : le concept en une phrase<\/h4>\n\n\n<p>Un <em>webhook<\/em> est un endpoint HTTP que n8n expose : WPForms y POST les donn\u00e9es quand un \u00e9v\u00e9nement survient (soumission, paiement, spam\u2026).<\/p>\n\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\">\u00c9tape 2 \u2014 Activer l\u2019addon n8n dans WPForms et mapper les champs<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">1) Activer l\u2019int\u00e9gration n8n c\u00f4t\u00e9 WPForms<\/h3>\n\n\n\n<p>Dans WordPress, ouvre ton formulaire dans le builder WPForms (un simple formulaire de contact suffit). Dans la sidebar, va dans <strong>Marketing \u2192 n8n<\/strong>. Si l\u2019addon n\u2019est pas install\u00e9, WPForms te proposera de l\u2019installer et de l\u2019activer.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"680\" height=\"329\" src=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/wpforms-marketing-n8n.png\" alt=\"Menu Marketing \u2192 n8n dans WPForms\" class=\"wp-image-129\" srcset=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/wpforms-marketing-n8n.png 680w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/wpforms-marketing-n8n-300x145.png 300w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/wpforms-marketing-n8n-400x194.png 400w\" sizes=\"auto, (max-width: 680px) 100vw, 680px\" \/><figcaption class=\"wp-element-caption\">\/ \u2014 <em>Forr\u00e1s: WPBeginner.com<\/em><\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"680\" height=\"285\" src=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/wpforms-install-activate-n8n-addon.png\" alt=\"Installation et activation de l\u2019addon n8n dans WPForms\" class=\"wp-image-130\" srcset=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/wpforms-install-activate-n8n-addon.png 680w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/wpforms-install-activate-n8n-addon-300x126.png 300w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/wpforms-install-activate-n8n-addon-400x168.png 400w\" sizes=\"auto, (max-width: 680px) 100vw, 680px\" \/><figcaption class=\"wp-element-caption\">\/ \u2014 <em>Forr\u00e1s: WPBeginner.com<\/em><\/figcaption><\/figure>\n\n\n\n<p>Active ensuite le toggle <strong>Enable n8n Integration<\/strong>. Des param\u00e8tres apparaissent : Webhook URL, Secret Key, Trigger Event, Field Mapping.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"680\" height=\"382\" src=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/wpforms-enable-n8n-integration.png\" alt=\"Activation de l\u2019int\u00e9gration n8n dans WPForms\" class=\"wp-image-131\" srcset=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/wpforms-enable-n8n-integration.png 680w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/wpforms-enable-n8n-integration-300x169.png 300w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/wpforms-enable-n8n-integration-400x225.png 400w\" sizes=\"auto, (max-width: 680px) 100vw, 680px\" \/><figcaption class=\"wp-element-caption\">\/ \u2014 <em>Forr\u00e1s: WPBeginner.com<\/em><\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"680\" height=\"382\" src=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/wpforms-n8n-integration-settings.png\" alt=\"Param\u00e8tres de l\u2019int\u00e9gration n8n dans WPForms\" class=\"wp-image-132\" srcset=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/wpforms-n8n-integration-settings.png 680w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/wpforms-n8n-integration-settings-300x169.png 300w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/wpforms-n8n-integration-settings-400x225.png 400w\" sizes=\"auto, (max-width: 680px) 100vw, 680px\" \/><figcaption class=\"wp-element-caption\">\/ \u2014 <em>Forr\u00e1s: WPBeginner.com<\/em><\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">2) Coller la Webhook URL et synchroniser la Secret Key<\/h3>\n\n\n\n<p>Colle l\u2019<strong>URL de production<\/strong> copi\u00e9e depuis n8n dans le champ <strong>Webhook URL<\/strong> de WPForms.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"680\" height=\"291\" src=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/wpforms-n8n-webhook-url.png\" alt=\"Coller l\u2019URL webhook n8n dans WPForms\" class=\"wp-image-133\" srcset=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/wpforms-n8n-webhook-url.png 680w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/wpforms-n8n-webhook-url-300x128.png 300w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/wpforms-n8n-webhook-url-400x171.png 400w\" sizes=\"auto, (max-width: 680px) 100vw, 680px\" \/><figcaption class=\"wp-element-caption\">\/ \u2014 <em>Forr\u00e1s: WPBeginner.com<\/em><\/figcaption><\/figure>\n\n\n\n<p>WPForms g\u00e9n\u00e8re aussi une <strong>Secret Key<\/strong>. Copie-la, puis retourne dans n8n et colle-la dans le champ <strong>Secret Key<\/strong> du node WPForms Trigger. Cette cl\u00e9 sert de garde-fou : seule ton instance WPForms doit pouvoir d\u00e9clencher ce workflow.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"680\" height=\"278\" src=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-wpforms-secret-key.png\" alt=\"Ajout de la Secret Key WPForms dans le trigger n8n\" class=\"wp-image-134\" srcset=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-wpforms-secret-key.png 680w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-wpforms-secret-key-300x123.png 300w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-wpforms-secret-key-400x164.png 400w\" sizes=\"auto, (max-width: 680px) 100vw, 680px\" \/><figcaption class=\"wp-element-caption\">\/ \u2014 <em>Forr\u00e1s: WPBeginner.com<\/em><\/figcaption><\/figure>\n\n\n\n<div class=\"wp-block-group callout callout-warning is-style-warning is-layout-flow wp-block-group-is-layout-flow\" style=\"border-width:1px;border-radius:8px;padding-top:1rem;padding-right:1.5rem;padding-bottom:1rem;padding-left:1.5rem\">\n\n<h4 class=\"wp-block-heading callout-title\">\u00c0 propos du \u201cTest Connection\u201d<\/h4>\n\n\n<p>Le test peut \u00e9chouer tant que la Secret Key n\u2019est pas coh\u00e9rente des deux c\u00f4t\u00e9s. Et sur un site en localhost, le test peut aussi \u00eatre perturb\u00e9 par la configuration r\u00e9seau, m\u00eame si le flux est correct en conditions r\u00e9elles.<\/p>\n\n<\/div>\n\n\n\n<h3 class=\"wp-block-heading\">3) Choisir l\u2019\u00e9v\u00e9nement d\u00e9clencheur (Trigger Event)<\/h3>\n\n\n\n<p>Dans <strong>Trigger Event<\/strong>, WPForms propose (selon l\u2019addon) plusieurs \u00e9v\u00e9nements. Les principaux :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li><strong>Form Submitted<\/strong> : d\u00e9clenchement \u00e0 chaque soumission (le cas le plus courant).<\/li>\n\n\n<li><strong>Entry Marked as Spam<\/strong> : utile pour des traitements anti-spam\/monitoring.<\/li>\n\n\n<li><strong>Payment Processed<\/strong> : pour d\u00e9clencher apr\u00e8s paiement (formulaires de commande\/paiement).<\/li>\n\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"680\" height=\"192\" src=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/wpforms-trigger-event.png\" alt=\"Choix du Trigger Event dans WPForms (soumission, spam, paiement)\" class=\"wp-image-135\" srcset=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/wpforms-trigger-event.png 680w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/wpforms-trigger-event-300x85.png 300w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/wpforms-trigger-event-400x113.png 400w\" sizes=\"auto, (max-width: 680px) 100vw, 680px\" \/><figcaption class=\"wp-element-caption\">\/ \u2014 <em>Forr\u00e1s: WPBeginner.com<\/em><\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">4) Mapper les champs envoy\u00e9s \u00e0 n8n (Field Mapping)<\/h3>\n\n\n\n<p>Le mapping sert \u00e0 d\u00e9cider <strong>quels champs<\/strong> sont envoy\u00e9s et <strong>sous quels noms<\/strong> (cl\u00e9s) c\u00f4t\u00e9 n8n. Pour chaque champ, tu d\u00e9finis un <strong>Parameter Key<\/strong> (ex. <code>email<\/code>) et tu s\u00e9lectionnes le champ WPForms correspondant.<\/p>\n\n\n\n<p>Pratique : reste sur des cl\u00e9s simples, en minuscules, stables (\u00e7a \u00e9vite de casser tes nodes n8n si tu renommes un libell\u00e9 dans WPForms).<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"680\" height=\"240\" src=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/wpforms-field-mapping.png\" alt=\"Mapping des champs WPForms vers des cl\u00e9s (Parameter Key) pour n8n\" class=\"wp-image-136\" srcset=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/wpforms-field-mapping.png 680w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/wpforms-field-mapping-300x106.png 300w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/wpforms-field-mapping-400x141.png 400w\" sizes=\"auto, (max-width: 680px) 100vw, 680px\" \/><figcaption class=\"wp-element-caption\">\/ \u2014 <em>Forr\u00e1s: WPBeginner.com<\/em><\/figcaption><\/figure>\n\n\n\n<div class=\"wp-block-group callout callout-info is-style-info is-layout-flow wp-block-group-is-layout-flow\" style=\"border-width:1px;border-radius:8px;padding-top:1rem;padding-right:1.5rem;padding-bottom:1rem;padding-left:1.5rem\">\n\n<h4 class=\"wp-block-heading callout-title\">Pourquoi le mapping est important<\/h4>\n\n\n<p>Dans n8n, tu r\u00e9cup\u00e8res ces cl\u00e9s comme variables. Si tu poses des cl\u00e9s explicites (<code>email<\/code>, <code>name<\/code>, <code>phone<\/code>), la configuration des actions (Google Sheets, Slack, CRM\u2026) devient quasi du glisser-d\u00e9poser.<\/p>\n\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\">\u00c9tape 3 \u2014 Ajouter des actions dans n8n et activer le workflow<\/h2>\n\n\n\n<p>\u00c0 ce stade, WPForms sait o\u00f9 envoyer les donn\u00e9es, et n8n sait \u00e9couter. Il reste \u00e0 dire \u00e0 n8n quoi faire avec la payload.<\/p>\n\n\n\n<p>Sur le node WPForms, clique sur le \u201c+\u201d \u00e0 droite pour ajouter un <strong>Action node<\/strong> (une \u00e9tape qui consomme la donn\u00e9e).<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"680\" height=\"382\" src=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-add-action-node.png\" alt=\"Ajout d\u2019un node d\u2019action apr\u00e8s le trigger WPForms dans n8n\" class=\"wp-image-137\" srcset=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-add-action-node.png 680w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-add-action-node-300x169.png 300w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-add-action-node-400x225.png 400w\" sizes=\"auto, (max-width: 680px) 100vw, 680px\" \/><figcaption class=\"wp-element-caption\">\/ \u2014 <em>Forr\u00e1s: WPBeginner.com<\/em><\/figcaption><\/figure>\n\n\n\n<p>Quelques sc\u00e9narios simples mais efficaces :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li>\u00c9crire chaque lead dans <strong>Google Sheets<\/strong> (une ligne par soumission).<\/li>\n\n\n<li>Envoyer une notification sur <strong>Slack<\/strong> ou <strong>Microsoft Teams<\/strong> (ex. nouveau lead, nouveau paiement).<\/li>\n\n\n<li>Inscrire automatiquement un contact dans un outil d\u2019email marketing (ex. <strong>Mailchimp<\/strong> ou <strong>ActiveCampaign<\/strong>).<\/li>\n\n<\/ul>\n\n\n\n<div class=\"wp-block-group callout callout-warning is-style-warning is-layout-flow wp-block-group-is-layout-flow\" style=\"border-width:1px;border-radius:8px;padding-top:1rem;padding-right:1.5rem;padding-bottom:1rem;padding-left:1.5rem\">\n\n<h4 class=\"wp-block-heading callout-title\">Authentification : le point qui bloque le plus souvent<\/h4>\n\n\n<p>Chaque node vers un service tiers demandera des \u201cCredentials\u201d (OAuth ou API key selon le service). Dans n8n, ouvre le node et compl\u00e8te la section Credential\/Authentication, sinon l\u2019action ne pourra pas s\u2019ex\u00e9cuter.<\/p>\n\n<\/div>\n\n\n\n<p>Quand tes actions sont pr\u00eates : clique sur <strong>Save<\/strong>, puis bascule le workflow sur <strong>Active<\/strong> (toggle en haut \u00e0 droite). Un workflow inactif ne traite rien, m\u00eame si WPForms envoie bien les donn\u00e9es.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"680\" height=\"244\" src=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-active-toggle.png\" alt=\"Activation du workflow n8n via le toggle Active\" class=\"wp-image-138\" srcset=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-active-toggle.png 680w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-active-toggle-300x108.png 300w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-active-toggle-400x144.png 400w\" sizes=\"auto, (max-width: 680px) 100vw, 680px\" \/><figcaption class=\"wp-element-caption\">\/ \u2014 <em>Forr\u00e1s: WPBeginner.com<\/em><\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">\u00c9tape 4 \u2014 Tester le pipeline end-to-end (sans se pi\u00e9ger)<\/h2>\n\n\n\n<p>Avant de consid\u00e9rer \u00e7a \u201cen prod\u201d, fais un test complet. Dans l\u2019\u00e9diteur n8n, clique sur <strong>Execute workflow<\/strong> : n8n se met alors en mode \u00e9coute pour capturer un \u00e9v\u00e9nement entrant.<\/p>\n\n\n\n<p>Ensuite seulement, soumets ton formulaire WordPress avec des valeurs r\u00e9alistes (tous les champs). Reviens dans n8n : tu dois voir la donn\u00e9e circuler dans le workflow.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"680\" height=\"297\" src=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-execute-workflow.png\" alt=\"Bouton Execute workflow dans n8n pour lancer un test d\u2019ex\u00e9cution\" class=\"wp-image-139\" srcset=\"https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-execute-workflow.png 680w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-execute-workflow-300x131.png 300w, https:\/\/helloblog.io\/app\/uploads\/sites\/4\/2026\/01\/n8n-execute-workflow-400x175.png 400w\" sizes=\"auto, (max-width: 680px) 100vw, 680px\" \/><figcaption class=\"wp-element-caption\">\/ \u2014 <em>Forr\u00e1s: WPBeginner.com<\/em><\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Checklist de debug rapide<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li>Le workflow est bien <strong>Active<\/strong> ?<\/li>\n\n\n<li>L\u2019URL webhook dans WPForms correspond <strong>exactement<\/strong> \u00e0 la Production URL du trigger ?<\/li>\n\n\n<li>La <strong>Secret Key<\/strong> est identique des deux c\u00f4t\u00e9s ?<\/li>\n\n\n<li>Le <strong>Field Mapping<\/strong> c\u00f4t\u00e9 WPForms contient bien les champs attendus ?<\/li>\n\n<\/ul>\n\n\n\n<p>Une bonne pratique : faire deux soumissions de test de suite. Si \u00e7a passe deux fois, tu \u00e9vites la fausse r\u00e9ussite li\u00e9e \u00e0 un \u00e9tat transitoire (cache, credentials non rafra\u00eechis, node partiellement configur\u00e9).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Questions fr\u00e9quentes (c\u00f4t\u00e9 WPForms + n8n)<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Peut-on emp\u00eacher WPForms d\u2019enregistrer les entr\u00e9es en base WordPress ?<\/h3>\n\n\n\n<p>Oui. Dans le builder WPForms, va dans <strong>Settings \u2192 General<\/strong>, puis dans la section Advanced, active l\u2019option <strong>Disable storing entry information in WordPress<\/strong> pour ne pas conserver les entr\u00e9es en base WordPress.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Que se passe-t-il si je supprime le node WPForms Trigger dans n8n ?<\/h3>\n\n\n\n<p>Le lien est rompu : tes formulaires ne d\u00e9clenchent plus le workflow. Il faudra ajouter un nouveau WPForms Trigger, r\u00e9cup\u00e9rer sa nouvelle Production URL, puis mettre \u00e0 jour l\u2019URL webhook dans WPForms.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">n8n est gratuit, mais WPForms ?<\/h3>\n\n\n\n<p>n8n peut \u00eatre utilis\u00e9 gratuitement en self-hosted, mais l\u2019int\u00e9gration n8n c\u00f4t\u00e9 WPForms n\u00e9cessite <strong>WPForms Pro<\/strong> (ou sup\u00e9rieur) via l\u2019addon d\u00e9di\u00e9.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Quels types d\u2019automatisations sont r\u00e9alistes avec ce setup ?<\/h3>\n\n\n\n<p>Les cas classiques : follow-up post-soumission, notifications internes, \u00e9criture dans un tableur\/CRM, qualification (r\u00e8gles de routing), et d\u00e9clenchements apr\u00e8s paiement pour des formulaires de commande.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">R\u00e9sum\u00e9 : une architecture simple, mais robuste<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n\n<li>Cr\u00e9er un workflow n8n avec <strong>WPForms Trigger<\/strong> et copier la <strong>Production URL<\/strong>.<\/li>\n\n\n<li>Activer l\u2019addon n8n dans WPForms, coller l\u2019URL, synchroniser la <strong>Secret Key<\/strong>.<\/li>\n\n\n<li>D\u00e9finir l\u2019\u00e9v\u00e9nement (soumission\/spam\/paiement) et faire le <strong>Field Mapping<\/strong> (cl\u00e9s stables).<\/li>\n\n\n<li>Ajouter des actions n8n, configurer les credentials, passer le workflow en <strong>Active<\/strong>.<\/li>\n\n\n<li>Tester end-to-end avec <strong>Execute workflow<\/strong>, puis une soumission r\u00e9elle.<\/li>\n\n<\/ol>\n\n\n<div class=\"references-section\">\n                <h2>R\u00e9f\u00e9rences \/ Sources<\/h2>\n                <ul class=\"references-list\"><li><a href=\"https:\/\/www.wpbeginner.com\/wp-tutorials\/how-to-automate-wordpress-forms-with-n8n\/\" target=\"_blank\" rel=\"noopener noreferrer\">How to Automate WordPress Forms With n8n &#8212; Save Hours of Manual Work<\/a><\/li><li><a href=\"https:\/\/www.wpbeginner.com\/beginners-guide\/how-to-add-n8n-like-automation-in-wordpress\/\" target=\"_blank\" rel=\"noopener noreferrer\">How to Add n8n Like Automation in WordPress<\/a><\/li><li><a href=\"https:\/\/www.wpbeginner.com\/plugins\/how-to-create-automated-workflows-in-wordpress-with-uncanny-automator\/\" target=\"_blank\" rel=\"noopener noreferrer\">How to Create Automated Workflows in WordPress With Uncanny Automator<\/a><\/li><li><a href=\"https:\/\/www.wpbeginner.com\/beginners-guide\/make-com-like-automation-in-wordpress\/\" target=\"_blank\" rel=\"noopener noreferrer\">How to Set Up Make.com-Like Automation in WordPress<\/a><\/li><li><a href=\"https:\/\/www.wpbeginner.com\/wp-tutorials\/how-to-connect-any-wordpress-forms-to-google-sheets\/\" target=\"_blank\" rel=\"noopener noreferrer\">How to Connect Any WordPress Forms to Google Sheets (Easy Way)<\/a><\/li><li><a href=\"https:\/\/www.wpbeginner.com\/beginners-guide\/how-to-create-a-contact-form-in-wordpress\/\" target=\"_blank\" rel=\"noopener noreferrer\">How I Created a WordPress Contact Form That People Actually Use<\/a><\/li><li><a href=\"https:\/\/www.wpbeginner.com\/plugins\/how-to-block-contact-form-spam-in-wordpress\/\" target=\"_blank\" rel=\"noopener noreferrer\">How We Block Contact Form Spam in WordPress (9 Proven Ways)<\/a><\/li><li><a href=\"https:\/\/www.wpbeginner.com\/glossary\/localhost\/\" target=\"_blank\" rel=\"noopener noreferrer\">Glossary: localhost<\/a><\/li><li><a href=\"https:\/\/www.wpbeginner.com\/wp-tutorials\/the-ultimate-guide-to-using-wordpress-forms\/\" target=\"_blank\" rel=\"noopener noreferrer\">The Ultimate Guide to Using WordPress Forms (All You Need to Know)<\/a><\/li><li><a href=\"https:\/\/www.wpbeginner.com\/showcase\/best-wordpress-form-builders\/\" target=\"_blank\" rel=\"noopener noreferrer\">We Tested 12 Best Online Form Builders<\/a><\/li><\/ul>\n            <\/div>","protected":false},"excerpt":{"rendered":"<p>Marre de recopier des leads depuis les emails de notifications vers un CRM, un tableur ou Slack ? Avec WPForms + n8n, une soumission de formulaire peut d\u00e9clencher un workflow complet, de fa\u00e7on fiable et tra\u00e7able.<\/p>\n","protected":false},"author":14,"featured_media":121,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[58],"tags":[61,60,62,10,59],"class_list":["post-140","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tutoriels","tag-automatisation","tag-n8n","tag-webhook","tag-wordpress","tag-wpforms"],"_links":{"self":[{"href":"https:\/\/helloblog.io\/fr\/wp-json\/wp\/v2\/posts\/140","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/helloblog.io\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/helloblog.io\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/helloblog.io\/fr\/wp-json\/wp\/v2\/users\/14"}],"replies":[{"embeddable":true,"href":"https:\/\/helloblog.io\/fr\/wp-json\/wp\/v2\/comments?post=140"}],"version-history":[{"count":1,"href":"https:\/\/helloblog.io\/fr\/wp-json\/wp\/v2\/posts\/140\/revisions"}],"predecessor-version":[{"id":160,"href":"https:\/\/helloblog.io\/fr\/wp-json\/wp\/v2\/posts\/140\/revisions\/160"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/helloblog.io\/fr\/wp-json\/wp\/v2\/media\/121"}],"wp:attachment":[{"href":"https:\/\/helloblog.io\/fr\/wp-json\/wp\/v2\/media?parent=140"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/helloblog.io\/fr\/wp-json\/wp\/v2\/categories?post=140"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/helloblog.io\/fr\/wp-json\/wp\/v2\/tags?post=140"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}