{"id":284138,"date":"2026-04-01T11:18:30","date_gmt":"2026-04-01T11:18:30","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/happilee-forms-connector\/"},"modified":"2026-05-12T19:23:40","modified_gmt":"2026-05-12T19:23:40","slug":"happilee-forms-connector","status":"publish","type":"plugin","link":"https:\/\/mri.wordpress.org\/plugins\/happilee-forms-connector\/","author":23449935,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.0.7","stable_tag":"1.0.7","tested":"6.9.4","requires":"5.0","requires_php":"7.4","requires_plugins":null,"header_name":"Happilee Forms Connector","header_author":"Neoito","header_description":"Connect your WordPress forms to Happilee API seamlessly","assets_banners_color":"bae4d1","last_updated":"2026-05-12 19:23:40","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/happilee.io\/pricing","header_plugin_uri":"https:\/\/happilee.io","header_author_uri":"https:\/\/neoito.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":227,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.3":{"tag":"1.0.3","author":"happilee","date":"2026-04-01 11:19:56"},"1.0.4":{"tag":"1.0.4","author":"happilee","date":"2026-04-01 12:04:27"},"1.0.5":{"tag":"1.0.5","author":"happilee","date":"2026-04-02 09:13:45"},"1.0.6":{"tag":"1.0.6","author":"happilee","date":"2026-04-06 09:14:23"},"1.0.7":{"tag":"1.0.7","author":"happilee","date":"2026-05-12 19:23:40"}},"upgrade_notice":{"1.0.5":"<p>Bug fix update. Resolves form field listing issue with form_id type mismatch. Upgrade recommended for all users.<\/p>","1.0.0":"<p>Initial release of Happilee Forms Connector. Connect your WordPress forms to Happilee WhatsApp chatbot platform with secure API integration.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3496482,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3496482,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3496482,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3496482,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.3","1.0.4","1.0.5","1.0.6","1.0.7"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3530316,"resolution":"1","location":"assets","locale":"","width":1280,"height":800},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3530316,"resolution":"2","location":"assets","locale":"","width":1280,"height":800},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3530316,"resolution":"3","location":"assets","locale":"","width":1280,"height":800},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3530316,"resolution":"4","location":"assets","locale":"","width":1280,"height":800},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3530316,"resolution":"5","location":"assets","locale":"","width":1280,"height":800},"screenshot-6.png":{"filename":"screenshot-6.png","revision":3530325,"resolution":"6","location":"assets","locale":"","width":1280,"height":800},"screenshot-7.png":{"filename":"screenshot-7.png","revision":3530325,"resolution":"7","location":"assets","locale":"","width":1280,"height":800}},"screenshots":{"1":"Plugin settings page with API configuration","2":"List of available forms","3":"Hook selection and field-mapping interface","4":"Integration with Contact Form 7","5":"Template listing from the Happilee Dashboard","6":"Template preview","7":"Template field mapping with preview"},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[89213,2364,358,259196,3160],"plugin_category":[],"plugin_contributors":[259197],"plugin_business_model":[],"class_list":["post-284138","plugin","type-plugin","status-publish","hentry","plugin_tags-api-integration","plugin_tags-chatbot","plugin_tags-contact-form","plugin_tags-happilee","plugin_tags-whatsapp","plugin_contributors-happilee","plugin_committers-happilee"],"banners":{"banner":"https:\/\/ps.w.org\/happilee-forms-connector\/assets\/banner-772x250.png?rev=3496482","banner_2x":"https:\/\/ps.w.org\/happilee-forms-connector\/assets\/banner-1544x500.png?rev=3496482","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/happilee-forms-connector\/assets\/icon-128x128.png?rev=3496482","icon_2x":"https:\/\/ps.w.org\/happilee-forms-connector\/assets\/icon-256x256.png?rev=3496482","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/happilee-forms-connector\/assets\/screenshot-1.png?rev=3530316","caption":"Plugin settings page with API configuration"},{"src":"https:\/\/ps.w.org\/happilee-forms-connector\/assets\/screenshot-2.png?rev=3530316","caption":"List of available forms"},{"src":"https:\/\/ps.w.org\/happilee-forms-connector\/assets\/screenshot-3.png?rev=3530316","caption":"Hook selection and field-mapping interface"},{"src":"https:\/\/ps.w.org\/happilee-forms-connector\/assets\/screenshot-4.png?rev=3530316","caption":"Integration with Contact Form 7"},{"src":"https:\/\/ps.w.org\/happilee-forms-connector\/assets\/screenshot-5.png?rev=3530316","caption":"Template listing from the Happilee Dashboard"},{"src":"https:\/\/ps.w.org\/happilee-forms-connector\/assets\/screenshot-6.png?rev=3530325","caption":"Template preview"},{"src":"https:\/\/ps.w.org\/happilee-forms-connector\/assets\/screenshot-7.png?rev=3530325","caption":"Template field mapping with preview"}],"raw_content":"<!--section=description-->\n<p>Happilee Forms Connector seamlessly integrates your WordPress contact forms with the Happilee WhatsApp chatbot platform. As a Meta Business Partner, Happilee provides powerful WhatsApp business solutions, and this plugin bridges your form submissions directly to the Happilee API.<\/p>\n\n<p><strong>Supported Form Plugins:<\/strong><\/p>\n\n<ul>\n<li>Contact Form 7 (CF7)<\/li>\n<li>WPForms<\/li>\n<li>Ninja Forms<\/li>\n<li>Forminator<\/li>\n<\/ul>\n\n<p><strong>Key Features:<\/strong><\/p>\n\n<ul>\n<li>Easy API connection setup with Happilee platform<\/li>\n<li>Automatic form submission sync to WhatsApp<\/li>\n<li>Support for multiple popular WordPress form plugins<\/li>\n<li>Secure API authentication with encrypted storage<\/li>\n<li>Real-time data transmission<\/li>\n<li>Simple configuration interface<\/li>\n<li>WhatsApp template message support with dynamic parameter mapping<\/li>\n<\/ul>\n\n<p><strong>About Happilee:<\/strong><\/p>\n\n<p>Happilee is a Meta Business Partner providing WhatsApp chatbot services that help businesses automate customer communication, lead generation, and support through WhatsApp Business API.<\/p>\n\n<p><strong>How It Works:<\/strong><\/p>\n\n<ol>\n<li>Install and activate the plugin<\/li>\n<li>Configure your Happilee API credentials<\/li>\n<li>Select which forms to connect and map the contact fields<\/li>\n<li>Choose a WhatsApp message template from your Happilee account<\/li>\n<li>Map the template's dynamic parameters (e.g. {{customer_name}}) to your form fields<\/li>\n<li>Form submissions automatically sync to Happilee and trigger the selected WhatsApp template message<\/li>\n<\/ol>\n\n<h3>External Services<\/h3>\n\n<p>This plugin connects to the following external services:<\/p>\n\n<p><strong>1. Happilee API (happilee.io)<\/strong><\/p>\n\n<p>This plugin communicates with the Happilee WhatsApp chatbot platform API to:<\/p>\n\n<ul>\n<li>Validate your API key and retrieve your project details \u2014 sent once when you save your API credentials in the settings page.<\/li>\n<li>Forward form submission data \u2014 sent every time a visitor submits a connected WordPress form.<\/li>\n<li>Fetch available WhatsApp templates \u2014 sent once when you configure a form connection.<\/li>\n<li>Send WhatsApp template messages \u2014 sent every time a connected form is submitted with a template selected.<\/li>\n<\/ul>\n\n<p>Data sent to Happilee includes: your API key (for authentication) and submitted form field values (e.g., First Name, Last Name, Mobile, Country Code, Birthday, and Tags).<\/p>\n\n<p>Data is transmitted to the following Happilee API endpoints:\n* <code>https:\/\/api.happilee.io\/api\/v1\/getProjectDetails<\/code> \u2014 API key validation\n* <code>https:\/\/api.happilee.io\/api\/v1\/createContact<\/code> \u2014 form submission forwarding\n* <code>https:\/\/api.happilee.io\/api\/v1\/getTemplateMessages<\/code> \u2014 fetching available WhatsApp templates\n* <code>https:\/\/api.happilee.io\/api\/v1\/sendMessage<\/code> \u2014 sending WhatsApp template messages on form submission<\/p>\n\n<p>This service is provided by Happilee (a Meta Business Partner):\n* Website: https:\/\/happilee.io\n* Terms of Service: https:\/\/happilee.io\/terms-of-use\/\n* Privacy Policy: https:\/\/happilee.io\/privacy-policy\/<\/p>\n\n<p>No data is sent to Happilee unless a valid API key has been configured and at least one form has been enabled in the plugin settings.<\/p>\n\n<p><strong>2. ipapi.co \u2014 Country code lookup<\/strong><\/p>\n\n<p>When a form is submitted and no country calling code has been mapped to a field, the plugin automatically detects the visitor's country calling code by sending the visitor's IP address to ipapi.co.<\/p>\n\n<p>Data sent: the visitor's IP address.\nWhen: automatically on every form submission where a country code field is not already populated by the form.\nWhy: to resolve the correct international phone dialling prefix (e.g. <code>+44<\/code>, <code>+91<\/code>) before forwarding the submission to Happilee.<\/p>\n\n<p>The request is made to:\n    https:\/\/ipapi.co\/{visitor_ip}\/country_calling_code\/<\/p>\n\n<p>This service is provided by ipapi.co:\n* Website: https:\/\/ipapi.co\n* Terms of Service: https:\/\/ipapi.co\/terms\/\n* Privacy Policy: https:\/\/ipapi.co\/privacy\/<\/p>\n\n<h3>Additional Information<\/h3>\n\n<p><strong>Support:<\/strong>\nFor plugin support, visit https:\/\/happilee.io\/contact-us\/<\/p>\n\n<p>For Happilee platform support and API documentation, visit your Happilee dashboard.<\/p>\n\n<p><strong>Privacy:<\/strong>\nThis plugin transmits form submission data to the Happilee API. Please review Happilee's privacy policy and ensure compliance with your local data protection regulations (GDPR, CCPA, etc.).<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin files to the <code>\/wp-content\/plugins\/happilee-forms-connector<\/code> directory, or install the plugin through the WordPress plugins screen directly.<\/li>\n<li>Activate the plugin through the 'Plugins' screen in WordPress.<\/li>\n<li>Navigate to Settings \u2192 Happilee Forms Connector to configure the plugin.<\/li>\n<li>In the API Configuration section, enter your Happilee API key (available from your Happilee dashboard).<\/li>\n<li>Save your settings and test the connection.<\/li>\n<\/ol>\n\n<p><strong>Requirements:<\/strong><\/p>\n\n<ul>\n<li>Active Happilee account (sign up at https:\/\/happilee.io)<\/li>\n<li>Happilee API key<\/li>\n<li>One or more supported form plugins installed (CF7, WPForms, Ninja Forms, or Forminator)<\/li>\n<\/ul>\n\n<!--section=faq-->\n<dl>\n<dt id=\"what%20is%20happilee%3F\"><h3>What is Happilee?<\/h3><\/dt>\n<dd><p>Happilee is a Meta Business Partner that provides WhatsApp chatbot services for businesses to automate customer communication through WhatsApp Business API.<\/p><\/dd>\n<dt id=\"which%20form%20plugins%20are%20supported%3F\"><h3>Which form plugins are supported?<\/h3><\/dt>\n<dd><p>Currently, the plugin supports Contact Form 7, WPForms, Ninja Forms, and Forminator.<\/p><\/dd>\n<dt id=\"do%20i%20need%20a%20happilee%20account%3F\"><h3>Do I need a Happilee account?<\/h3><\/dt>\n<dd><p>Yes, you need an active Happilee account and API key. Visit https:\/\/happilee.io to create an account.<\/p><\/dd>\n<dt id=\"where%20do%20i%20find%20my%20happilee%20api%20key%3F\"><h3>Where do I find my Happilee API key?<\/h3><\/dt>\n<dd><p>Log in to your Happilee dashboard and navigate to Project \u2192 Settings \u2192 Integrations to find your API key.<\/p><\/dd>\n<dt id=\"is%20the%20data%20transmission%20secure%3F\"><h3>Is the data transmission secure?<\/h3><\/dt>\n<dd><p>Yes, all data is transmitted securely via HTTPS. API keys are encrypted using AES-256-CBC encryption before being stored in the database.<\/p><\/dd>\n<dt id=\"can%20i%20connect%20multiple%20forms%3F\"><h3>Can I connect multiple forms?<\/h3><\/dt>\n<dd><p>Yes, you can connect as many forms as you need from any of the supported form plugins.<\/p><\/dd>\n<dt id=\"does%20this%20work%20with%20custom%20forms%3F\"><h3>Does this work with custom forms?<\/h3><\/dt>\n<dd><p>Currently, the plugin supports the four major form plugins listed. Custom form support may be added in future updates.<\/p><\/dd>\n<dt id=\"what%20data%20is%20sent%20to%20happilee%3F\"><h3>What data is sent to Happilee?<\/h3><\/dt>\n<dd><p>The plugin sends selected form fields such as First Name, Last Name, Country Code, Birth Day, Mobile, and Tags. All data is sent based on the settings configured in the backend. For example, if only First Name and Mobile are selected in the backend settings, then only those fields will be sent to the Happilee API endpoint. Please note that the Mobile field is mandatory for the Happilee backend.<\/p><\/dd>\n<dt id=\"how%20do%20i%20verify%20the%20plugin%20is%20working%3F\"><h3>How do I verify the plugin is working?<\/h3><\/dt>\n<dd><p>After configuring your API key and connecting a form, submit a test form. You should see the submission data in your Happilee dashboard.<\/p><\/dd>\n<dt id=\"can%20i%20send%20whatsapp%20template%20messages%20when%20a%20form%20is%20submitted%3F\"><h3>Can I send WhatsApp template messages when a form is submitted?<\/h3><\/dt>\n<dd><p>Yes. After connecting a form, you can select a WhatsApp message template from your Happilee account and map its dynamic parameters (such as {{customer_name}} or {{order_id}}) to the corresponding form fields. When the form is submitted, the plugin automatically sends the template message to the contact's phone number with the mapped values filled in.<\/p><\/dd>\n<dt id=\"what%20are%20template%20parameters%3F\"><h3>What are template parameters?<\/h3><\/dt>\n<dd><p>Template parameters are dynamic placeholders in your WhatsApp message template, written as {{param_name}}. For example, a delivery template might contain {{pickup_time}} and {{customer_address}}. The plugin lets you map each placeholder to a specific form field so the correct submitted value is inserted when the message is sent.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20a%20template%20has%20no%20parameters%3F\"><h3>What happens if a template has no parameters?<\/h3><\/dt>\n<dd><p>Templates without dynamic parameters are fully supported. The plugin will send the template message as-is without requiring any field mapping.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.7<\/h4>\n\n<ul>\n<li>Added WhatsApp template message sending on form submission<\/li>\n<li>Added template selection interface with search and pagination<\/li>\n<li>Added template parameter mapping to form fields<\/li>\n<li>Added live WhatsApp-style message preview in template settings<\/li>\n<li>Added support for templates with no dynamic parameters<\/li>\n<li>Added deduplication guard across all supported form plugins<\/li>\n<li>Improved param mapping to use original form field names for accurate value resolution<\/li>\n<\/ul>\n\n<h4>1.0.6<\/h4>\n\n<ul>\n<li>Removed README.md from distributed plugin package<\/li>\n<\/ul>\n\n<h4>1.0.5<\/h4>\n\n<ul>\n<li>Fixed issue with form_id type mismatch<\/li>\n<li>Improved validation for form_type<\/li>\n<\/ul>\n\n<h4>1.0.4<\/h4>\n\n<ul>\n<li>Removed src\/ source folder from distributed plugin package<\/li>\n<\/ul>\n\n<h4>1.0.3<\/h4>\n\n<ul>\n<li>Removed demo mode, demo API key, and webhook.site endpoint<\/li>\n<li>Updated readme.txt to remove all demo references and webhook.site External Service disclosure<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Fixed broken Terms of Service and Privacy Policy URLs in External Services section<\/li>\n<li>Added automatic database table creation on plugins_loaded to prevent missing table errors after migration or manual updates<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Added REST API parameter validation with sanitize_callback and validate_callback for all endpoints<\/li>\n<li>Fixed missing wp_unslash() on $_POST access in Forminator submission handler<\/li>\n<li>Fixed redundant double-sanitization of form field values<\/li>\n<li>Added External Services disclosure section<\/li>\n<li>Corrected database option cleanup on uninstall (encryption key and db version options now removed)<\/li>\n<li>Removed development source files from distributed zip<\/li>\n<li>Updated Tested up to: 6.9<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<li>Support for Contact Form 7<\/li>\n<li>Support for WPForms<\/li>\n<li>Support for Ninja Forms<\/li>\n<li>Support for Forminator<\/li>\n<li>Happilee API integration with secure encrypted storage<\/li>\n<li>Settings page for API configuration<\/li>\n<li>Form field mapping interface<\/li>\n<li>Real-time form data transmission<\/li>\n<\/ul>","raw_excerpt":"Connect WordPress contact forms to Happilee WhatsApp chatbot platform via API integration.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/mri.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/284138","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mri.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/mri.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/mri.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=284138"}],"author":[{"embeddable":true,"href":"https:\/\/mri.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/happilee"}],"wp:attachment":[{"href":"https:\/\/mri.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=284138"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/mri.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=284138"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/mri.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=284138"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/mri.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=284138"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/mri.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=284138"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/mri.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=284138"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}