{"id":342240,"date":"2026-07-22T19:20:48","date_gmt":"2026-07-22T19:20:48","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/infinitus-leads\/"},"modified":"2026-07-22T19:20:36","modified_gmt":"2026-07-22T19:20:36","slug":"infinitus-leads","status":"publish","type":"plugin","link":"https:\/\/zh-sg.wordpress.org\/plugins\/infinitus-leads\/","author":23534690,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.1.1","stable_tag":"1.1.1","tested":"7.0.2","requires":"6.5","requires_php":"8.2","requires_plugins":null,"header_name":"Infinitus Leads","header_author":"Infinitus Digital","header_description":"Capture and store validated leads before WhatsApp opens, with configurable fields, privacy controls, tracking, and anti-spam.","assets_banners_color":"f8f9ff","last_updated":"2026-07-22 19:20:36","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/infinitusdigital.cl\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":28,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.1.1":{"tag":"1.1.1","author":"infinitusdigital","date":"2026-07-22 19:20:36"}},"upgrade_notice":{"1.1.1":"<p>WordPress.org review update. Existing settings and lead data are preserved.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3619112,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3619112,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3619112,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3619112,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.1.1"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3619112,"resolution":"1","location":"assets","locale":"","width":2850,"height":1458},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3619112,"resolution":"2","location":"assets","locale":"","width":2840,"height":1460},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3619112,"resolution":"3","location":"assets","locale":"","width":2356,"height":1366},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3619112,"resolution":"4","location":"assets","locale":"","width":1590,"height":1372},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3619112,"resolution":"5","location":"assets","locale":"","width":1208,"height":1138},"screenshot-6.png":{"filename":"screenshot-6.png","revision":3619112,"resolution":"6","location":"assets","locale":"","width":1210,"height":1398},"screenshot-7.png":{"filename":"screenshot-7.png","revision":3619112,"resolution":"7","location":"assets","locale":"","width":2162,"height":844}},"screenshots":{"1":"Floating entry point for the pre-chat lead capture workflow.","2":"Configurable qualification form shown before the WhatsApp handoff.","3":"Reusable field library and form builder.","4":"Appearance and responsive preview controls.","5":"Tracking and Google Tag Manager dataLayer settings.","6":"Privacy, retention, anti-spam, and Turnstile settings.","7":"Local lead inbox, filters, details, configurable columns, and CSV export."}},"plugin_section":[],"plugin_tags":[23294,11463,337,14097,3160],"plugin_category":[],"plugin_contributors":[272859],"plugin_business_model":[],"class_list":["post-342240","plugin","type-plugin","status-publish","hentry","plugin_tags-google-tag-manager","plugin_tags-lead-capture","plugin_tags-lead-generation","plugin_tags-lead-management","plugin_tags-whatsapp","plugin_contributors-infinitusdigital","plugin_committers-infinitusdigital"],"banners":{"banner":"https:\/\/ps.w.org\/infinitus-leads\/assets\/banner-772x250.png?rev=3619112","banner_2x":"https:\/\/ps.w.org\/infinitus-leads\/assets\/banner-1544x500.png?rev=3619112","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/infinitus-leads\/assets\/icon-128x128.png?rev=3619112","icon_2x":"https:\/\/ps.w.org\/infinitus-leads\/assets\/icon-256x256.png?rev=3619112","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/infinitus-leads\/assets\/screenshot-1.png?rev=3619112","caption":"Floating entry point for the pre-chat lead capture workflow."},{"src":"https:\/\/ps.w.org\/infinitus-leads\/assets\/screenshot-2.png?rev=3619112","caption":"Configurable qualification form shown before the WhatsApp handoff."},{"src":"https:\/\/ps.w.org\/infinitus-leads\/assets\/screenshot-3.png?rev=3619112","caption":"Reusable field library and form builder."},{"src":"https:\/\/ps.w.org\/infinitus-leads\/assets\/screenshot-4.png?rev=3619112","caption":"Appearance and responsive preview controls."},{"src":"https:\/\/ps.w.org\/infinitus-leads\/assets\/screenshot-5.png?rev=3619112","caption":"Tracking and Google Tag Manager dataLayer settings."},{"src":"https:\/\/ps.w.org\/infinitus-leads\/assets\/screenshot-6.png?rev=3619112","caption":"Privacy, retention, anti-spam, and Turnstile settings."},{"src":"https:\/\/ps.w.org\/infinitus-leads\/assets\/screenshot-7.png?rev=3619112","caption":"Local lead inbox, filters, details, configurable columns, and CSV export."}],"raw_content":"<!--section=description-->\n<p>Infinitus Leads creates a pre-chat lead capture workflow for WordPress sites that use WhatsApp as a sales or support handoff.<\/p>\n\n<p>A visitor completes a configurable form, WordPress validates and stores the lead locally, and only then does the browser open WhatsApp with a message built from the selected fields.<\/p>\n\n<h4>What makes this different<\/h4>\n\n<p>Infinitus Leads is not a social icon collection or a simple click-to-chat button. It addresses the handoff gap between a website and an external messaging application.<\/p>\n\n<p>Because the lead is validated and stored before WhatsApp opens, the site owner keeps a recoverable first-party record even when the visitor closes WhatsApp or does not send the prefilled message. This is useful for sales and marketing teams that need qualification fields, a local lead inbox, CSV export, campaign context, privacy controls, and measurable handoff events without sending lead data to the plugin author.<\/p>\n\n<h4>How the workflow works<\/h4>\n\n<ol>\n<li>The visitor opens the floating lead capture form.<\/li>\n<li>The plugin validates the configured fields and anti-spam checks on the server.<\/li>\n<li>The validated lead is stored in the site's own WordPress database.<\/li>\n<li>An optional privacy-aware dataLayer event is pushed for the site's existing Google Tag Manager setup.<\/li>\n<li>WhatsApp opens with a configurable message assembled from the approved form values.<\/li>\n<\/ol>\n\n<p>The plugin does not claim that the visitor ultimately sends the message inside WhatsApp. It records the validated lead and the initiation of the WhatsApp handoff.<\/p>\n\n<h4>Main features<\/h4>\n\n<ul>\n<li>Configurable floating entry point and responsive pre-chat form.<\/li>\n<li>Reusable field library for qualification, contact, select, checkbox, URL, phone, and message fields.<\/li>\n<li>Per-field controls for required status, local storage, and inclusion in the WhatsApp message.<\/li>\n<li>Editable WhatsApp message template.<\/li>\n<li>Local lead inbox with search, filters, details, configurable columns, bulk deletion, and CSV export.<\/li>\n<li>Source page, referrer, and permitted UTM capture.<\/li>\n<li>Configurable lead-retention period and optional data removal on uninstall.<\/li>\n<li>WordPress personal-data exporter and eraser integration.<\/li>\n<li>Native honeypot, signed form tokens, minimum completion time, deduplication, and rate limiting.<\/li>\n<li>Optional Cloudflare Turnstile, loaded only when the form is opened.<\/li>\n<li>Disabled, basic, or consent-gated enhanced dataLayer events for Google Tag Manager.<\/li>\n<li>Configurable appearance, responsive behavior, keyboard navigation, focus states, and reduced-motion support.<\/li>\n<li>Multisite-aware installation and per-site data storage.<\/li>\n<li>No telemetry or lead transmission to Infinitus Digital.<\/li>\n<\/ul>\n\n<h4>Privacy and data handling<\/h4>\n\n<p>Lead data is stored in a dedicated table in the site's own WordPress database. The stored values depend on the fields enabled by the site administrator and may include form values, source and referrer URLs, permitted UTM parameters, consent status, and handoff status.<\/p>\n\n<p>The plugin does not send telemetry, usage statistics, or lead records to Infinitus Digital.<\/p>\n\n<p>Basic tracking does not include email or phone data. Enhanced tracking is optional and requires both an administrator acknowledgement and visitor consent. When enabled, selected email or phone values exist temporarily in the browser dataLayer so the site's Google Tag Manager configuration can process them.<\/p>\n\n<p>Site owners are responsible for configuring an appropriate privacy notice, consent mechanism, retention period, and legal basis for their jurisdiction.<\/p>\n\n<h4>External services<\/h4>\n\n<p>The plugin can interact with the following external services. None of these integrations sends telemetry to Infinitus Digital.<\/p>\n\n<h3>WhatsApp \/ Meta<\/h3>\n\n<p>After a successful form submission, the visitor's browser can open <code>https:\/\/wa.me\/<\/code> with a prefilled message. The message contains only the form values that the site administrator selected for inclusion. At that point, the visitor leaves the site and WhatsApp or Meta may process data under their own terms and privacy policy.<\/p>\n\n<ul>\n<li>WhatsApp Terms: https:\/\/www.whatsapp.com\/legal\/terms-of-service<\/li>\n<li>WhatsApp Privacy Policy: https:\/\/www.whatsapp.com\/legal\/privacy-policy<\/li>\n<\/ul>\n\n<h3>Cloudflare Turnstile<\/h3>\n\n<p>Cloudflare Turnstile is optional and disabled by default. When the administrator enables it, the browser loads the Turnstile challenge from <code>challenges.cloudflare.com<\/code> only after the visitor opens the form. On submission, WordPress sends the Turnstile response token, the configured secret key, and an idempotency identifier to Cloudflare's Siteverify endpoint. Form field values are not included in that verification request.<\/p>\n\n<ul>\n<li>Turnstile documentation: https:\/\/developers.cloudflare.com\/turnstile\/<\/li>\n<li>Cloudflare Privacy Policy: https:\/\/www.cloudflare.com\/privacypolicy\/<\/li>\n<li>Cloudflare Website Terms: https:\/\/www.cloudflare.com\/website-terms\/<\/li>\n<\/ul>\n\n<h3>Google Tag Manager<\/h3>\n\n<p>The plugin does not install Google Tag Manager and does not contact Google by itself. When tracking is enabled, it pushes a local event into <code>window.dataLayer<\/code>. A Google Tag Manager container already installed by the site owner may read that event and transmit information according to the container's configuration.<\/p>\n\n<p>Enhanced mode can expose selected email or phone values temporarily in the dataLayer only after the configured consent is given. Google Tag Manager should use its official user-provided data variable and handle hashing before transmission.<\/p>\n\n<ul>\n<li>Google Privacy Policy: https:\/\/policies.google.com\/privacy<\/li>\n<li>Google Tag Manager Terms: https:\/\/www.google.com\/analytics\/terms\/tag-manager\/<\/li>\n<\/ul>\n\n<h4>Independence notice<\/h4>\n\n<p>Infinitus Leads is an independent product. It is not affiliated with, sponsored by, or endorsed by WhatsApp LLC, Meta Platforms, Inc., Google LLC, or Cloudflare, Inc. Their names and trademarks belong to their respective owners.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin ZIP from <strong>Plugins &gt; Add New Plugin &gt; Upload Plugin<\/strong>, or copy the <code>infinitus-leads<\/code> directory into <code>\/wp-content\/plugins\/<\/code>.<\/li>\n<li>Activate <strong>Infinitus Leads<\/strong>.<\/li>\n<li>Open <strong>Infinitus Leads &gt; General<\/strong> and enter a WhatsApp number including the country code.<\/li>\n<li>Configure qualification and contact fields under <strong>Infinitus Leads &gt; Form<\/strong>.<\/li>\n<li>Review text and design under <strong>Infinitus Leads &gt; Appearance<\/strong>.<\/li>\n<li>Review dataLayer measurement under <strong>Infinitus Leads &gt; Tracking<\/strong>.<\/li>\n<li>Configure retention, consent, and optional Turnstile under <strong>Infinitus Leads &gt; Privacy and spam<\/strong>.<\/li>\n<li>Test the full form-to-WhatsApp handoff on desktop and mobile before enabling it on a production site.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"how%20is%20this%20different%20from%20a%20normal%20whatsapp%20button%3F\"><h3>How is this different from a normal WhatsApp button?<\/h3><\/dt>\n<dd><p>A normal button sends the visitor directly to WhatsApp and usually leaves no recoverable lead record on the site. Infinitus Leads first validates and stores the configured fields in WordPress, then opens WhatsApp. It also provides a local lead inbox, export, retention, privacy, anti-spam, and dataLayer controls.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20confirm%20that%20the%20whatsapp%20message%20was%20sent%3F\"><h3>Does the plugin confirm that the WhatsApp message was sent?<\/h3><\/dt>\n<dd><p>No. A website cannot reliably confirm what the visitor does after WhatsApp opens. The plugin records a validated lead and the initiation of the WhatsApp handoff.<\/p><\/dd>\n<dt id=\"where%20are%20leads%20stored%3F\"><h3>Where are leads stored?<\/h3><\/dt>\n<dd><p>Leads are stored locally in a dedicated table in the WordPress database. They are not sent to Infinitus Digital.<\/p><\/dd>\n<dt id=\"can%20i%20choose%20which%20fields%20are%20stored%20or%20sent%20to%20whatsapp%3F\"><h3>Can I choose which fields are stored or sent to WhatsApp?<\/h3><\/dt>\n<dd><p>Yes. Each configured field can be required or optional and can be independently included in local storage and in the WhatsApp message.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20load%20external%20scripts%20on%20every%20page%3F\"><h3>Does the plugin load external scripts on every page?<\/h3><\/dt>\n<dd><p>No external script is loaded by default. The public workflow uses local CSS and JavaScript. If Turnstile is enabled, its script is loaded only after the visitor opens the form.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20install%20google%20tag%20manager%3F\"><h3>Does the plugin install Google Tag Manager?<\/h3><\/dt>\n<dd><p>No. It only pushes a configurable event into the dataLayer. The site owner must install and configure Google Tag Manager separately.<\/p><\/dd>\n<dt id=\"is%20personal%20information%20included%20in%20tracking%20events%3F\"><h3>Is personal information included in tracking events?<\/h3><\/dt>\n<dd><p>Not in basic mode. Enhanced mode is optional and requires administrator acknowledgement, a configured consent field, visitor consent, and an active email or phone field.<\/p><\/dd>\n<dt id=\"what%20happens%20to%20data%20when%20the%20plugin%20is%20removed%3F\"><h3>What happens to data when the plugin is removed?<\/h3><\/dt>\n<dd><p>By default, data is preserved. The administrator can explicitly enable permanent data removal under <strong>Infinitus Leads &gt; Privacy and spam<\/strong> before uninstalling the plugin.<\/p><\/dd>\n<dt id=\"does%20it%20support%20wordpress%20privacy%20requests%3F\"><h3>Does it support WordPress privacy requests?<\/h3><\/dt>\n<dd><p>Yes. The plugin registers personal-data exporter and eraser callbacks that locate leads by a protected email hash.<\/p><\/dd>\n<dt id=\"where%20can%20i%20request%20support%20or%20report%20a%20security%20issue%3F\"><h3>Where can I request support or report a security issue?<\/h3><\/dt>\n<dd><p>Contact <code>contacto@infinitusdigital.cl<\/code>. Please do not publish unpatched security details in a public support topic.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.1.1<\/h4>\n\n<ul>\n<li>Removed bundled translation catalogs and the custom translation loader so WordPress.org language packs can manage translations.<\/li>\n<li>Clarified the plugin's specialized pre-chat lead capture workflow and its difference from simple social or click-to-chat buttons.<\/li>\n<li>Updated directory metadata, administration copy, and documentation without changing the plugin slug or stored data.<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Prepared the plugin for its first WordPress.org review.<\/li>\n<li>Renamed the public product and admin menu to Infinitus Leads.<\/li>\n<li>Changed the source language to English and internationalized interface strings.<\/li>\n<li>Added localized defaults for new installations.<\/li>\n<li>Added public documentation for WhatsApp, Cloudflare Turnstile, and Google Tag Manager.<\/li>\n<li>Removed the private Update URI while preserving all existing settings and lead data.<\/li>\n<li>Added legal notices and private security-reporting documentation.<\/li>\n<\/ul>\n\n<h4>1.0.4<\/h4>\n\n<ul>\n<li>Kept the Infinitus admin-menu icon fully opaque in active, inactive, hover, and focus states.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Added strict browser-side and server-side phone validation.<\/li>\n<\/ul>\n\n<p>For the full project history, see <code>changelog.txt<\/code>.<\/p>","raw_excerpt":"Capture validated leads before WhatsApp opens, with local storage, qualification fields, privacy tools, tracking, and anti-spam.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/zh-sg.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/342240","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/zh-sg.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/zh-sg.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/zh-sg.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=342240"}],"author":[{"embeddable":true,"href":"https:\/\/zh-sg.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/infinitusdigital"}],"wp:attachment":[{"href":"https:\/\/zh-sg.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=342240"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/zh-sg.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=342240"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/zh-sg.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=342240"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/zh-sg.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=342240"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/zh-sg.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=342240"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/zh-sg.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=342240"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}