{"id":350531,"date":"2026-10-02T09:32:47","date_gmt":"2026-10-02T09:32:47","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/slack-notifications-for-contact-forms\/"},"modified":"2026-10-02T09:32:25","modified_gmt":"2026-10-02T09:32:25","slug":"rayo-contact-form-notifications-for-slack","status":"publish","type":"plugin","link":"https:\/\/vec.wordpress.org\/plugins\/rayo-contact-form-notifications-for-slack\/","author":23525529,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"7.1.2","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"Rayo Contact Form Notifications for Slack","header_author":"rayoinnovations.com","header_description":"Automatically sends form submissions (Formidable Forms, Contact Form 7, WPForms, Gravity Forms, Ninja Forms) to Slack channels with rich Block Kit messages. Includes a full admin UI to configure credentials, field mappings, and preview the message template.","assets_banners_color":"5b20a8","last_updated":"2026-10-02 09:32:25","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/wordpress.org\/plugins\/rayo-contact-form-notifications-for-slack\/","header_author_uri":"https:\/\/www.rayoinnovations.com\/?utm_source=wordpress_plugin&utm_medium=plugin_ui&utm_campaign=form_slack_notification","rating":0,"author_block_rating":0,"active_installs":0,"downloads":41,"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":"rayoinnovations","date":"2026-10-02 09:32:25","revision":3724467}},"upgrade_notice":{"1.0.0":"<p>Initial release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3724503,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3724503,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3724527,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3724527,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":[],"screenshots":{"1":"Settings panel \u2013 configure Slack credentials, Default Channel ID, and message options.","2":"Form Mappings \u2013 map any number of forms, from any supported plugin, to their own Slack channel and fields.","3":"Message preview \u2013 see the Block Kit layout before submissions arrive.","4":"Activity log \u2013 review recent notification attempts and errors."}},"plugin_section":[],"plugin_tags":[1152,1655,4906,3565,130711],"plugin_category":[],"plugin_contributors":[283988,283990],"plugin_business_model":[],"class_list":["post-350531","plugin","type-plugin","status-publish","hentry","plugin_tags-contact-form-7","plugin_tags-gravity-forms","plugin_tags-notifications","plugin_tags-slack","plugin_tags-wpforms","plugin_contributors-rayo","plugin_contributors-rayoinnovations","plugin_committers-rayoinnovations"],"banners":{"banner":"https:\/\/ps.w.org\/rayo-contact-form-notifications-for-slack\/assets\/banner-772x250.png?rev=3724527","banner_2x":"https:\/\/ps.w.org\/rayo-contact-form-notifications-for-slack\/assets\/banner-1544x500.png?rev=3724527","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/rayo-contact-form-notifications-for-slack\/assets\/icon-128x128.png?rev=3724503","icon_2x":"https:\/\/ps.w.org\/rayo-contact-form-notifications-for-slack\/assets\/icon-256x256.png?rev=3724503","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p><strong>Rayo Contact Form Notifications for Slack<\/strong> connects your WordPress site to Slack so your team is notified instantly when a new lead is submitted through any of these form plugins:<\/p>\n\n<ul>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/formidable\/\">Formidable Forms<\/a><\/li>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/contact-form-7\/\">Contact Form 7<\/a><\/li>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/wpforms-lite\/\">WPForms<\/a><\/li>\n<li><a href=\"https:\/\/www.gravityforms.com\/\">Gravity Forms<\/a><\/li>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/ninja-forms\/\">Ninja Forms<\/a><\/li>\n<\/ul>\n\n<p>You only need one of these installed for the plugin to work \u2014 install more than one and you can route forms from each of them to Slack side by side (a Formidable form and a WPForms form can both notify Slack independently, even to different channels).<\/p>\n\n<p>When a visitor submits a mapped form, the plugin builds a polished Slack message using Block Kit and posts it to your chosen channel. No Zapier or third-party middleware required.<\/p>\n\n<p>This plugin is an independent, third-party integration and is not affiliated with, endorsed by, or sponsored by Slack Technologies, LLC. \"Slack\" is a trademark of Slack Technologies, LLC.<\/p>\n\n<h4>Features<\/h4>\n\n<ul>\n<li><strong>Multi-plugin support<\/strong> \u2013 Formidable Forms, Contact Form 7, WPForms, Gravity Forms, and Ninja Forms are all supported. Only plugins actually active on your site appear as options.<\/li>\n<li><strong>Multiple form \u2192 channel mappings<\/strong> \u2013 Add a mapping per form, each with its own Form Plugin, Form, and (optionally) its own Slack channel. Mix forms from different plugins freely.<\/li>\n<li><strong>Default Channel ID<\/strong> \u2013 Set one fallback channel for every mapping; only override it per-mapping when a specific form needs to go somewhere else.<\/li>\n<li><strong>Dynamic field mapping<\/strong> \u2013 Pick real fields from the selected form (fetched live from that plugin) and assign each one a custom label shown in Slack \u2014 no manual field-ID guessing.<\/li>\n<li><strong>Drag-to-reorder fields<\/strong> \u2013 Reorder a mapping's field list by dragging, so the Slack message shows fields in the order that makes sense.<\/li>\n<li><strong>Email &amp; Message roles<\/strong> \u2013 Flag one field as the reply email (powers a one-click \u201cReply via Email\u201d button) and one as the main message body \u2014 everything else renders as label:value detail rows.<\/li>\n<li><strong>Slack Block Kit messages<\/strong> \u2013 Header, alert text, structured lead fields, customer message, and the reply button, all customisable.<\/li>\n<li><strong>Bot token encrypted at rest<\/strong> \u2013 The Slack Bot Token is encrypted before being stored in the database.<\/li>\n<li><strong>Full admin settings UI<\/strong> \u2013 Configure credentials, mappings, and message copy from the WordPress admin, with a live Slack message preview.<\/li>\n<li><strong>Verify Connection &amp; Send Test Message<\/strong> \u2013 Confirm your Bot Token and channel work, and preview real Slack delivery, before going live.<\/li>\n<li><strong>Activity log<\/strong> \u2013 Review the last 50 send attempts with plugin, form ID, HTTP status, and Slack response details.<\/li>\n<li><strong>Optional @channel mention<\/strong> \u2013 Alert the whole channel on every new lead.<\/li>\n<li><strong>Customisable copy<\/strong> \u2013 Override header, alert, and footer text or use smart defaults based on your site name.<\/li>\n<\/ul>\n\n<h4>Requirements<\/h4>\n\n<ul>\n<li>WordPress 5.8 or later<\/li>\n<li>PHP 7.4 or later<\/li>\n<li>At least one of: Formidable Forms, Contact Form 7, WPForms, Gravity Forms, or Ninja Forms<\/li>\n<li>A Slack workspace with a Bot Token (<code>xoxb-\u2026<\/code>) and target Channel ID<\/li>\n<\/ul>\n\n<h4>External services<\/h4>\n\n<p>This plugin connects to the following third-party services:<\/p>\n\n<p><strong>Slack API<\/strong> (<code>https:\/\/slack.com\/api\/<\/code>)<\/p>\n\n<ul>\n<li>Used to verify credentials, send notifications, and deliver test messages.<\/li>\n<li>Data sent: submitted form field values (as mapped in Settings), channel ID, and formatted message content.<\/li>\n<li><a href=\"https:\/\/slack.com\/legal\">Slack Legal (Terms of Service &amp; Privacy Policy)<\/a><\/li>\n<\/ul>\n\n<p><strong>Google Fonts<\/strong> (admin settings screen only)<\/p>\n\n<ul>\n<li>The admin UI loads the Outfit and Plus Jakarta Sans font families from <code>fonts.googleapis.com<\/code> for styling.<\/li>\n<li><a href=\"https:\/\/policies.google.com\/privacy\">Google Privacy Policy<\/a><\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>rayo-contact-form-notifications-for-slack<\/code> folder to <code>\/wp-content\/plugins\/<\/code>, or install through the WordPress Plugins screen.<\/li>\n<li>Activate the plugin through the <strong>Plugins<\/strong> menu in WordPress.<\/li>\n<li>Make sure at least one supported form plugin is installed and active: Formidable Forms, Contact Form 7, WPForms, Gravity Forms, or Ninja Forms.<\/li>\n<li>In Slack, create an app, add the <code>chat:write<\/code> scope (and <code>channels:read<\/code>\/<code>groups:read<\/code> if you also want channel verification), install the app to your workspace, and copy the Bot User OAuth Token.<\/li>\n<li>Invite the bot to your target channel and copy the Channel ID (right-click the channel \u2192 <strong>View channel details<\/strong> \u2192 copy the Channel ID).<\/li>\n<li>Go to <strong>Slack Automation<\/strong> in the WordPress admin menu.<\/li>\n<li>Enter your Bot Token and (optionally) a Default Channel ID, then click <strong>Save Settings<\/strong>.<\/li>\n<li>Under <strong>Form Mappings<\/strong>, click <strong>Add Mapping<\/strong>, choose the Form Plugin and Form, then add field mappings for the data you want in Slack.<\/li>\n<li>Use <strong>Send Test Message<\/strong> to confirm everything works.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"is%20this%20plugin%20made%20or%20endorsed%20by%20slack%3F\"><h3>Is this plugin made or endorsed by Slack?<\/h3><\/dt>\n<dd><p>No. Rayo Contact Form Notifications for Slack is an independent, third-party integration built by rayoinnovations.com. It is not affiliated with, endorsed by, or sponsored by Slack Technologies, LLC. \"Slack\" is a trademark of Slack Technologies, LLC, used here only to describe compatibility.<\/p><\/dd>\n<dt id=\"does%20this%20plugin%20require%20formidable%20forms%3F\"><h3>Does this plugin require Formidable Forms?<\/h3><\/dt>\n<dd><p>No. Any one of Formidable Forms, Contact Form 7, WPForms, Gravity Forms, or Ninja Forms is enough. Install more than one and you can map forms from each of them at the same time.<\/p><\/dd>\n<dt id=\"where%20do%20i%20find%20my%20slack%20channel%20id%3F\"><h3>Where do I find my Slack Channel ID?<\/h3><\/dt>\n<dd><p>In Slack, open the channel, click its name at the top, and copy the Channel ID shown at the bottom of the <strong>About<\/strong> tab (for example, <code>C0AQVJSOBUH<\/code>).<\/p><\/dd>\n<dt id=\"can%20different%20forms%20notify%20different%20slack%20channels%3F\"><h3>Can different forms notify different Slack channels?<\/h3><\/dt>\n<dd><p>Yes. Set a Default Channel ID for the common case, then on any mapping turn on <strong>Send to a different channel<\/strong> to override it just for that form.<\/p><\/dd>\n<dt id=\"how%20do%20field%20mappings%20work%3F\"><h3>How do field mappings work?<\/h3><\/dt>\n<dd><p>Add a mapping, pick its Form Plugin and Form, then click <strong>Add Field<\/strong> to pick a real field from that form and give it a label to show in Slack. Mark one field's role as <strong>Email<\/strong> to get a \"Reply via Email\" button, and one as <strong>Message<\/strong> to show it as the main message body.<\/p><\/dd>\n<dt id=\"will%20failed%20api%20calls%20be%20logged%3F\"><h3>Will failed API calls be logged?<\/h3><\/dt>\n<dd><p>Yes. The <strong>Activity Log<\/strong> tab stores the last 50 send attempts with timestamp, entry ID, form plugin, form ID, HTTP status, and error details.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20mention%20%40channel%3F\"><h3>Does the plugin mention @channel?<\/h3><\/dt>\n<dd><p>Only if you enable <strong>Mention @channel on every alert<\/strong> in the settings. Leave it off for quieter notifications.<\/p><\/dd>\n<dt id=\"is%20my%20slack%20bot%20token%20stored%20securely%3F\"><h3>Is my Slack Bot Token stored securely?<\/h3><\/dt>\n<dd><p>Yes. The Bot Token is encrypted before being saved to the database and only decrypted in memory when needed to send a message.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<li>Multi-plugin support: Formidable Forms, Contact Form 7, WPForms, Gravity Forms, and Ninja Forms \u2014 only the ones actually active on your site appear as options.<\/li>\n<li>Multiple form \u2192 Slack channel mappings, each with its own Form Plugin, Form, and optional per-mapping channel override.<\/li>\n<li>Default Channel ID with optional per-mapping override.<\/li>\n<li>Dynamic field mapping: pick real fields from the selected form and assign custom Slack labels, with Email \/ Message \/ File roles.<\/li>\n<li>Drag-to-reorder field mappings.<\/li>\n<li>Slack Block Kit messages: header, alert text, structured lead fields, customer message, and a \"Reply via Email\" button, all customisable per mapping.<\/li>\n<li>File-role fields are uploaded to Slack as real inline previews (image\/PDF), in addition to a fallback link.<\/li>\n<li>Bot Token encrypted at rest.<\/li>\n<li>Full admin settings UI with live Slack message preview, Verify Connection, and Send Test Message diagnostics.<\/li>\n<li>Activity log storing recent send attempts with plugin, form ID, HTTP status, and Slack response details.<\/li>\n<li>Optional @channel mention on every alert.<\/li>\n<li>Customisable header, alert, and footer copy with smart defaults based on your site name.<\/li>\n<\/ul>","raw_excerpt":"Send form submissions to Slack as rich Block Kit messages. Works with Formidable, CF7, WPForms, Gravity Forms, and Ninja Forms.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/350531","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=350531"}],"author":[{"embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/rayoinnovations"}],"wp:attachment":[{"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=350531"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=350531"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=350531"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=350531"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=350531"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=350531"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}