{"id":360199,"date":"2026-09-02T12:20:18","date_gmt":"2026-09-02T12:20:18","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/zh-n8n-connect\/"},"modified":"2026-09-02T12:20:02","modified_gmt":"2026-09-02T12:20:02","slug":"zh-webhooks-for-n8n","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/zh-webhooks-for-n8n\/","author":23100270,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"7.1","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"ZH Webhooks for n8n","header_author":"Zain Hassan","header_description":"Send WordPress form, WooCommerce, user, and chat events to n8n webhooks, with HMAC signing, delivery logs, and an n8n chat widget.","assets_banners_color":"020e28","last_updated":"2026-09-02 12:20:02","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/hassanzain.com\/n8n-wordpress-automation\/","header_author_uri":"https:\/\/hassanzain.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":31,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"zainhassandeveloper","date":"2026-09-02 12:20:02","revision":3677971}},"upgrade_notice":{"1.0.0":"<p>First public version.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3677971,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3677971,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3677971,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3677971,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3677971,"resolution":"1","location":"assets","locale":"","width":1280,"height":853},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3677971,"resolution":"2","location":"assets","locale":"","width":1280,"height":853},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3677971,"resolution":"3","location":"assets","locale":"","width":1280,"height":853},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3677971,"resolution":"4","location":"assets","locale":"","width":1280,"height":853},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3677971,"resolution":"5","location":"assets","locale":"","width":1280,"height":853}},"screenshots":{"1":"Connection \u2014 webhook URL, shared secret, Header Auth (<code>X-ZH-N8N-Key<\/code>), and a test ping.","2":"Events \u2014 choose which WordPress and WooCommerce events go to n8n.","3":"Chat \u2014 brand colors, radius, offsets, and a live widget preview.","4":"Logs \u2014 recent deliveries with event name and HTTP status.","5":"Front-end chat widget on a dark site, powered by n8n Respond to Webhook."}},"plugin_section":[],"plugin_tags":[569,2364,243637,15439,286],"plugin_category":[45],"plugin_contributors":[260819],"plugin_business_model":[],"class_list":["post-360199","plugin","type-plugin","status-publish","hentry","plugin_tags-automation","plugin_tags-chatbot","plugin_tags-n8n","plugin_tags-webhook","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_contributors-zainhassandeveloper","plugin_committers-zainhassandeveloper"],"banners":{"banner":"https:\/\/ps.w.org\/zh-webhooks-for-n8n\/assets\/banner-772x250.png?rev=3677971","banner_2x":"https:\/\/ps.w.org\/zh-webhooks-for-n8n\/assets\/banner-1544x500.png?rev=3677971","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/zh-webhooks-for-n8n\/assets\/icon-128x128.png?rev=3677971","icon_2x":"https:\/\/ps.w.org\/zh-webhooks-for-n8n\/assets\/icon-256x256.png?rev=3677971","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/zh-webhooks-for-n8n\/assets\/screenshot-1.png?rev=3677971","caption":"Connection \u2014 webhook URL, shared secret, Header Auth (<code>X-ZH-N8N-Key<\/code>), and a test ping."},{"src":"https:\/\/ps.w.org\/zh-webhooks-for-n8n\/assets\/screenshot-2.png?rev=3677971","caption":"Events \u2014 choose which WordPress and WooCommerce events go to n8n."},{"src":"https:\/\/ps.w.org\/zh-webhooks-for-n8n\/assets\/screenshot-3.png?rev=3677971","caption":"Chat \u2014 brand colors, radius, offsets, and a live widget preview."},{"src":"https:\/\/ps.w.org\/zh-webhooks-for-n8n\/assets\/screenshot-4.png?rev=3677971","caption":"Logs \u2014 recent deliveries with event name and HTTP status."},{"src":"https:\/\/ps.w.org\/zh-webhooks-for-n8n\/assets\/screenshot-5.png?rev=3677971","caption":"Front-end chat widget on a dark site, powered by n8n Respond to Webhook."}],"raw_content":"<!--section=description-->\n<p><strong>ZH Webhooks for n8n<\/strong> sends WordPress events to your n8n webhook. It is not another Zapier clone, cookie banner, or cache plugin.<\/p>\n\n<p>WordPress.org already has million-install plugins for GTM, consent, backups, and caching. It does <strong>not<\/strong> have a serious n8n webhook plugin. This one fills that gap:<\/p>\n\n<ul>\n<li><strong>WordPress \u2192 n8n<\/strong> \u2014 form submits (WPForms, Contact Form 7, Gravity Forms, Elementor, Fluent Forms, Ninja Forms), new users, published posts\/pages, WooCommerce orders.<\/li>\n<li><strong>Chat widget \u2192 n8n<\/strong> \u2014 visitor messages wait for a <code>{\"reply\":\"...\"}<\/code> response from a Respond to Webhook node (the commercial \u201cWordPress AI chatbot\u201d use case). Brand colors, radius, offsets, theme, launcher, and avatar are configurable in wp-admin.<\/li>\n<li><strong>n8n \u2192 WordPress ping<\/strong> \u2014 signed inbound REST route for a connection check.<\/li>\n<li><strong>HMAC + Header Auth<\/strong> \u2014 <code>X-ZH-N8N-Key<\/code> for n8n Header Auth, plus <code>X-ZH-N8N-Signature<\/code> (<code>sha256=HMAC(timestamp + \".\" + raw body)<\/code>).<\/li>\n<li><strong>Delivery logs<\/strong> \u2014 last 200 sends, payload kept only until success so retries work.<\/li>\n<li><strong>No n8n Cloud lock-in<\/strong> \u2014 any self-hosted or Cloud webhook URL.<\/li>\n<\/ul>\n\n<p>This plugin is <strong>not affiliated with n8n GmbH<\/strong>.<\/p>\n\n<p>Need the workflow installed on a client site? See <a href=\"https:\/\/hassanzain.com\/n8n-wordpress-automation\/\">n8n WordPress automation<\/a>.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>zh-webhooks-for-n8n<\/code> folder to <code>\/wp-content\/plugins\/<\/code>.<\/li>\n<li>Activate <strong>ZH Webhooks for n8n<\/strong>.<\/li>\n<li>Open <strong>ZH Webhooks<\/strong> in wp-admin.<\/li>\n<li>Paste your n8n <strong>Production<\/strong> webhook URL and copy the shared secret into n8n Header Auth (<code>X-ZH-N8N-Key<\/code>).<\/li>\n<li>Send a test ping, then enable the events you need.<\/li>\n<li>Optional: open the <strong>Chat<\/strong> tab to style the widget and enable it site-wide or via <code>[zh_n8n_chat]<\/code>.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20replace%20uncanny%20automator%20or%20bit%20integrations%3F\"><h3>Does this replace Uncanny Automator or Bit Integrations?<\/h3><\/dt>\n<dd><p>No. Those are generic \u201cconnect 400 apps\u201d products. This plugin only talks to <strong>n8n<\/strong> with a stable JSON envelope and HMAC.<\/p><\/dd>\n<dt id=\"can%20i%20put%20adsense%20in%20this%20plugin%3F\"><h3>Can I put AdSense in this plugin?<\/h3><\/dt>\n<dd><p>No. WordPress.org plugins cannot be an ad network. Monetize by booking implementation work or a later Pro license.<\/p><\/dd>\n<dt id=\"what%20json%20does%20n8n%20receive%3F\"><h3>What JSON does n8n receive?<\/h3><\/dt>\n<dd><p>{ \"id\", \"event\", \"timestamp\", \"site\": { \"name\", \"url\", \"timezone\" }, \"data\": { ... } } plus headers <code>X-ZH-N8N-Event<\/code>, <code>X-ZH-N8N-Timestamp<\/code>, <code>X-ZH-N8N-Signature<\/code>, <code>X-ZH-N8N-Key<\/code>.<\/p><\/dd>\n<dt id=\"how%20does%20chat%20work%3F\"><h3>How does chat work?<\/h3><\/dt>\n<dd><p>The widget POSTs to WordPress REST. WordPress forwards <code>chat.message<\/code> to n8n and <strong>waits<\/strong>. Your workflow must use <strong>Respond to Webhook<\/strong> with <code>{\"reply\":\"text\"}<\/code>. Other events are queued asynchronously so checkout stays fast.<\/p><\/dd>\n<dt id=\"why%20does%20live%20chat%20say%20it%20cannot%20reach%20n8n%3F\"><h3>Why does live chat say it cannot reach n8n?<\/h3><\/dt>\n<dd><p>The webhook URL is empty, not HTTPS, or not reachable from the server. <code>http:\/\/127.0.0.1<\/code> on your laptop is not reachable from Hostinger. Use n8n Cloud or another public HTTPS webhook.<\/p><\/dd>\n<dt id=\"is%20woocommerce%20required%3F\"><h3>Is WooCommerce required?<\/h3><\/dt>\n<dd><p>No. Order events fire only when WooCommerce is active.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release: outbound form, user, post, and WooCommerce events to n8n.<\/li>\n<li>HMAC-signed webhooks, delivery logs, and inbound ping.<\/li>\n<li>n8n chat widget with brand colors, radius, offsets, theme, launcher, and live admin preview.<\/li>\n<li>Chat mounts even when JS delay plugins (e.g. LiteSpeed) are active.<\/li>\n<\/ul>","raw_excerpt":"Send WordPress forms, WooCommerce orders, users, and chat to n8n webhooks. HMAC-signed JSON, delivery logs, and an n8n chat widget.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/360199","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=360199"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/zainhassandeveloper"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=360199"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=360199"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=360199"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=360199"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=360199"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=360199"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}