{"id":282758,"date":"2026-02-21T06:20:15","date_gmt":"2026-02-21T06:20:15","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/authyo-otp-for-met-form\/"},"modified":"2026-10-26T08:10:38","modified_gmt":"2026-10-26T08:10:38","slug":"authyo-otp-for-met-form","status":"publish","type":"plugin","link":"https:\/\/br.wordpress.org\/plugins\/authyo-otp-for-met-form\/","author":23299154,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.8","stable_tag":"1.0.8","tested":"7.1.3","requires":"6.2","requires_php":"7.4","requires_plugins":null,"header_name":"Authyo OTP for Met Form","header_author":"Authyo","header_description":"Integrates Authyo OTP Verification (Email, SMS, WhatsApp, Voice) into MetForm forms.","assets_banners_color":"fafcfd","last_updated":"2026-10-26 08:10:38","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/authyo.io","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":862,"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":"konceptwise","date":"2026-02-21 06:20:51","revision":3466258},"1.0.1":{"tag":"1.0.1","author":"konceptwise","date":"2026-02-21 11:58:30","revision":3466377},"1.0.2":{"tag":"1.0.2","author":"konceptwise","date":"2026-02-24 09:39:10","revision":3468453},"1.0.3":{"tag":"1.0.3","author":"konceptwise","date":"2026-06-01 06:20:02","revision":3556224},"1.0.4":{"tag":"1.0.4","author":"konceptwise","date":"2026-06-03 11:14:14","revision":3559266},"1.0.5":{"tag":"1.0.5","author":"konceptwise","date":"2026-07-08 07:21:47","revision":3599879},"1.0.6":{"tag":"1.0.6","author":"konceptwise","date":"2026-08-06 09:39:59","revision":3636388},"1.0.7":{"tag":"1.0.7","author":"konceptwise","date":"2026-08-08 04:54:43","revision":3638442},"1.0.8":{"tag":"1.0.8","author":"konceptwise","date":"2026-10-26 08:10:38","revision":3765793}},"upgrade_notice":{"1.0.8":"<p>OTP is now enabled per form under Authyo OTP for Met Form &gt; Forms. Forms that already use the Authyo Email \/ Phone widgets are switched on automatically, so existing sites keep verifying. The App ID is no longer needed.<\/p>","1.0.6":"<p>Performance improvements. Recommended update for all users.<\/p>","1.0.5":"<p>Performance improvements. Recommended update for all users.<\/p>","1.0.4":"<p>Adds skip verification, country dropdown configuration, and default country selection. Recommended update for all users.<\/p>","1.0.3":"<p>Adds fallback OTP delivery methods for phone verification.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3466259,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3466259,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3485348,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3485348,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0","1.0.1","1.0.2","1.0.3","1.0.4","1.0.5","1.0.6","1.0.7","1.0.8"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[18971,222398,9210,140529,3160],"plugin_category":[41],"plugin_contributors":[247673],"plugin_business_model":[],"class_list":["post-282758","plugin","type-plugin","status-publish","hentry","plugin_tags-email-verification","plugin_tags-metform","plugin_tags-otp","plugin_tags-sms-verification","plugin_tags-whatsapp","plugin_category-communication","plugin_contributors-konceptwise","plugin_committers-konceptwise"],"banners":{"banner":"https:\/\/ps.w.org\/authyo-otp-for-met-form\/assets\/banner-772x250.png?rev=3485348","banner_2x":"https:\/\/ps.w.org\/authyo-otp-for-met-form\/assets\/banner-1544x500.png?rev=3485348","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/authyo-otp-for-met-form\/assets\/icon-128x128.png?rev=3466259","icon_2x":"https:\/\/ps.w.org\/authyo-otp-for-met-form\/assets\/icon-256x256.png?rev=3466259","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Authyo OTP for MetForm lets you add One-Time Password (OTP) verification to any MetForm form in seconds. Protect your forms from spam and fake submissions by verifying real email addresses and phone numbers before the form is submitted.<\/p>\n\n<h4>Why Use OTP Verification?<\/h4>\n\n<ul>\n<li><strong>Reduce spam and fake leads<\/strong> - only verified users can submit forms.<\/li>\n<li><strong>Improve data quality<\/strong> - ensure the email and phone number entered are real and accessible.<\/li>\n<li><strong>Build trust<\/strong> - visitors know their information is being handled securely.<\/li>\n<\/ul>\n\n<h4>How It Works<\/h4>\n\n<ol>\n<li>Install the plugin and enter your Authyo Client ID and Client Secret.<\/li>\n<li>Build your MetForm as usual with the standard <strong>Email<\/strong> and\/or <strong>Telephone<\/strong> widgets.<\/li>\n<li>Open <strong>Authyo OTP for Met Form &gt; Forms<\/strong> in the WordPress admin menu and switch on <strong>Enable OTP<\/strong> for that form.<\/li>\n<\/ol>\n\n<p>The plugin detects the Email and Telephone fields automatically and adds the OTP flow to them. You control verification per form, and can switch Email or Phone verification off individually.<\/p>\n\n<h4>Supported Verification Channels<\/h4>\n\n<ul>\n<li><strong>Email<\/strong> - OTP delivered to the visitor's email inbox.<\/li>\n<li><strong>SMS<\/strong> - OTP delivered via text message to the visitor's phone.<\/li>\n<li><strong>WhatsApp<\/strong> - OTP delivered via WhatsApp message.<\/li>\n<li><strong>Voice Call<\/strong> - OTP delivered via automated voice call (currently available in India).<\/li>\n<\/ul>\n\n<h4>Key Features<\/h4>\n\n<ul>\n<li><strong>Multi-Channel Verification:<\/strong> Deliver OTPs via SMS, WhatsApp, Voice Call, or Email.<\/li>\n<li><strong>Simple Per-Form Setup:<\/strong> Switch on <strong>Enable OTP<\/strong> for each form under the Authyo OTP menu &gt; Forms. The standard MetForm Email and Telephone fields are detected automatically, in forms built with MetForm's own Form Builder or with Elementor - no special widget required.<\/li>\n<li><strong>Visitor Choice:<\/strong> Optionally allow visitors to choose their preferred verification method.<\/li>\n<li><strong>Fallback Methods:<\/strong> If the primary method doesn't work, visitors can try an alternative channel (e.g., switch from SMS to WhatsApp).<\/li>\n<li><strong>Skip Verification:<\/strong> Optionally allow visitors to skip OTP for specific channels.<\/li>\n<li><strong>Country Dropdown:<\/strong> Configurable country selector with All Countries, Selected Only, or Single Country modes.<\/li>\n<li><strong>Failsafe Behavior:<\/strong> If the Authyo API cannot deliver OTP messages due to insufficient balance, the plugin automatically allows form submission to prevent lead loss.<\/li>\n<li><strong>Customizable Security:<\/strong> Configure OTP length (4-6 digits), expiry time (1-10 minutes), resend cooldowns, and max resend attempts.<\/li>\n<li><strong>Lead Management:<\/strong> Every MetForm submission (on any form, with or without OTP) is saved as a lead. View them with their verification status (Verified, Skipped, Unverified) directly in WordPress admin.<\/li>\n<\/ul>\n\n<p><strong>Important Note:<\/strong> OTP verification requires valid Authyo API credentials and sufficient wallet balance. When unavailable, form submissions will proceed without OTP verification to prevent lead loss.<\/p>\n\n<p><strong>Disclaimer:<\/strong> This plugin is an independent third-party integration for MetForm. It is not affiliated with, endorsed by, or officially supported by MetForm.<\/p>\n\n<h3>Video Tutorial<\/h3>\n\n<p><strong>Video Tutorial How to Use Authyo OTP for MetForm<\/strong><\/p>\n\n<p>https:\/\/www.youtube.com\/watch?v=KG0DoqDGL2k<\/p>\n\n<p>Watch the video above for a step-by-step walkthrough of setting up Authyo OTP with MetForm.<\/p>\n\n<h3>Company Information<\/h3>\n\n<p>This plugin is developed and maintained by Konceptwise Digital Media Pvt. Ltd.<\/p>\n\n<p>Authyo is a service owned and operated by Konceptwise Digital Media Pvt. Ltd. and is used by this plugin solely for one-time password (OTP) generation and verification. Details about data usage and applicable privacy and terms policies are provided in the section below.<\/p>\n\n<h3>External Services<\/h3>\n\n<p>This plugin connects to the following external services:<\/p>\n\n<h4>Authyo OTP API<\/h4>\n\n<p>Used to send and verify One-Time Passwords (OTP).<\/p>\n\n<ul>\n<li><strong>Service URL:<\/strong> <a href=\"https:\/\/authyo.io\">https:\/\/authyo.io<\/a><\/li>\n<li><strong>API Endpoints:<\/strong>\n\n<ul>\n<li><code>https:\/\/app.authyo.io\/api\/v1\/auth\/sendotp<\/code> - sends OTP to the visitor's email or phone.<\/li>\n<li><code>https:\/\/app.authyo.io\/api\/v1\/auth\/verifyotp<\/code> - verifies the OTP entered by the visitor.<\/li>\n<li><code>https:\/\/app.authyo.io\/api\/v1\/user\/getcountrylist<\/code> - fetches the list of supported countries for the phone dropdown.<\/li>\n<\/ul><\/li>\n<li><strong>Data Sent:<\/strong> Phone numbers and email addresses entered into the OTP verification forms are sent to Authyo servers to dispatch verification codes.<\/li>\n<li><strong>When:<\/strong> During form submission when OTP verification is active.<\/li>\n<\/ul>\n\n<h4>Authyo Webhook<\/h4>\n\n<p>Used for Customer Support, deactivation feedback, settings-save notification and optional email subscription.<\/p>\n\n<ul>\n<li><strong>Endpoint:<\/strong> <code>https:\/\/app.authyo.io\/api\/v1\/user\/WordpressWebhook<\/code><\/li>\n<li><strong>Data Sent:<\/strong>\n\n<ul>\n<li>On settings save (when an admin saves the plugin settings or completes the setup wizard): plugin version, the URL of the settings page, Client ID (non-blocking, fire-and-forget).<\/li>\n<li>On plugin deactivation: optional feedback reason and details, plugin version, admin page URL, Client ID.<\/li>\n<li>On email subscription (opt-in only): admin email address, site URL, plugin version, WordPress version, PHP version, Client ID.<\/li>\n<li>On the Support tab \"Send a Help Request\" form (only when an admin submits it): the topic, message and contact email typed into the form, site URL, plugin version, WordPress version, PHP version, Client ID.<\/li>\n<\/ul><\/li>\n<li><strong>When:<\/strong> When an admin saves settings, gives deactivation feedback, subscribes by email, or sends a support request. Nothing is sent from the visitor side of your site to this endpoint.<\/li>\n<li><p><strong>Note:<\/strong> Settings-save, deactivation and subscription requests are non-blocking. The support request waits for the response (up to 15 seconds) so the admin can see whether it was delivered.<\/p><\/li>\n<li><p><strong>Privacy Policy:<\/strong> <a href=\"https:\/\/authyo.io\/privacy-policy\">Authyo Privacy Policy<\/a><\/p><\/li>\n<li><strong>Terms of Service:<\/strong> <a href=\"https:\/\/authyo.io\/terms-service\/\">Authyo Terms of Service<\/a><\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin files to the <code>\/wp-content\/plugins\/authyo-otp-for-met-form<\/code> directory, or install the plugin through the WordPress plugins screen.<\/li>\n<li>Activate the plugin through the 'Plugins' screen in WordPress. MetForm must be installed and active.<\/li>\n<li>Go to the <strong>Authyo OTP for Met Form<\/strong> menu in the WordPress admin sidebar and enter your API credentials (Client ID, Client Secret) from your <a href=\"https:\/\/app.authyo.io\">Authyo dashboard<\/a>.<\/li>\n<li>Configure your preferred verification channels and OTP defaults under the <strong>Verification Methods<\/strong> tab.<\/li>\n<li>Open the <strong>Forms<\/strong> tab and switch on <strong>Enable OTP<\/strong> for each MetForm you want to protect. The plugin automatically detects the Email and Telephone fields in the form.<\/li>\n<li>That's it - OTP verification is now active on those forms. Standard MetForm Email \/ Telephone widgets work; no special widget is required.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20require%20metform%3F\"><h3>Does this require MetForm?<\/h3><\/dt>\n<dd><p>Yes, this plugin is an addon for MetForm. MetForm must be installed and active for this plugin to work.<\/p><\/dd>\n<dt id=\"do%20i%20need%20an%20authyo%20account%3F\"><h3>Do I need an Authyo account?<\/h3><\/dt>\n<dd><p>Yes, you need an account at <a href=\"https:\/\/authyo.io\">Authyo.io<\/a> to obtain your API credentials (Client ID, Client Secret).<\/p><\/dd>\n<dt id=\"what%20happens%20if%20my%20authyo%20wallet%20balance%20runs%20out%3F\"><h3>What happens if my Authyo wallet balance runs out?<\/h3><\/dt>\n<dd><p>The plugin has a built-in failsafe. If the Authyo API cannot send an OTP due to insufficient balance, the form submission will proceed without OTP verification. This ensures you never lose leads due to a billing issue.<\/p><\/dd>\n<dt id=\"can%20i%20use%20both%20email%20and%20phone%20otp%20on%20the%20same%20form%3F\"><h3>Can I use both email and phone OTP on the same form?<\/h3><\/dt>\n<dd><p>Yes. If a form contains both an Email and a Telephone field, both are verified. You can turn either one off per form from the <strong>Forms<\/strong> tab.<\/p><\/dd>\n<dt id=\"which%20countries%20are%20supported%20for%20sms%20and%20whatsapp%3F\"><h3>Which countries are supported for SMS and WhatsApp?<\/h3><\/dt>\n<dd><p>The country list is fetched from the Authyo API and includes 200+ countries. You can configure the country dropdown to show all countries, a selected subset, or lock it to a single country.<\/p><\/dd>\n<dt id=\"how%20do%20i%20set%20up%20otp%20on%20a%20form%3F\"><h3>How do I set up OTP on a form?<\/h3><\/dt>\n<dd><p>Go to <strong>Authyo OTP for Met Form &gt; Forms<\/strong> in the WordPress admin menu and switch on <strong>Enable OTP<\/strong> for the form. The plugin detects the form's Email and Telephone fields automatically. The legacy <strong>Authyo Email<\/strong> \/ <strong>Authyo Phone<\/strong> widgets are still supported and are detected the same way.<\/p><\/dd>\n<dt id=\"can%20visitors%20skip%20otp%20verification%3F\"><h3>Can visitors skip OTP verification?<\/h3><\/dt>\n<dd><p>Only if you enable it. Under <strong>Verification Methods &gt; Optional Verification<\/strong>, you can allow visitors to skip email OTP, phone OTP, or both. By default, verification is mandatory.<\/p><\/dd>\n<dt id=\"is%20user%20data%20stored%20locally%3F\"><h3>Is user data stored locally?<\/h3><\/dt>\n<dd><p>OTP codes are never stored locally; temporary session data is managed via WordPress transients and expires automatically. Every MetForm submission on your site (including the fields the visitor filled, their verification status and IP address) is saved to a local table so you can review it under the <strong>Met Form Entries<\/strong> tab. Entries stay until you delete them there. Deleting the plugin from the Plugins screen removes this table and its entries.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.8<\/h4>\n\n<ul>\n<li>New: Per-form OTP toggle under Authyo OTP for Met Form &gt; Forms. Enable or disable verification for each MetForm, with separate Email \/ Phone switches.<\/li>\n<li>New: Automatic field detection. Standard MetForm Email and Telephone widgets are now verified - no special Authyo widget required.<\/li>\n<li>Changed: App ID is no longer needed. Only Client ID and Client Secret are used.<\/li>\n<li>Fixed: Server-side verification check now runs on MetForm's validation hook; previously it was not enforced on submit.<\/li>\n<li>Security: Verified field names are resolved on the server instead of being trusted from the browser.<\/li>\n<\/ul>\n\n<h4>1.0.7<\/h4>\n\n<ul>\n<li>Performance improvements.<\/li>\n<\/ul>\n\n<h4>1.0.6<\/h4>\n\n<ul>\n<li>Performance improvements.<\/li>\n<\/ul>\n\n<h4>1.0.5<\/h4>\n\n<ul>\n<li>Performance improvements.<\/li>\n<\/ul>\n\n<h4>1.0.4<\/h4>\n\n<ul>\n<li>New Feature: Skip Verification toggles per channel (Email \/ Phone) - admin can allow visitors to bypass OTP for selected channels.<\/li>\n<li>New Feature: Country Dropdown Configuration - choose between All Countries, Selected Only (with searchable grid + tags), or Single Country (auto-select &amp; lock dropdown).<\/li>\n<li>New Feature: Default Country pre-selection for All \/ Selected modes.<\/li>\n<li>UI Improvement: Modern card-based picker for country display modes with live search and tag chips.<\/li>\n<li>Fix: Search icon overlap with placeholder text in the country picker.<\/li>\n<\/ul>\n\n<h4>1.0.3<\/h4>\n\n<ul>\n<li>New Feature: Added fallback OTP delivery methods (WhatsApp, SMS, Voice Call) for phone verification.<\/li>\n<li>UI Improvement: Added a countdown-based fallback option for alternative methods.<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Performance improvements.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>New Feature: MetForm form entry management.<\/li>\n<li>Performance improvement: Optimized entry storage and dynamic columns retrieval.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<\/ul>","raw_excerpt":"Add OTP verification to MetForm - verify emails and phone numbers via SMS, WhatsApp, Voice Call, and Email using Authyo.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/282758","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=282758"}],"author":[{"embeddable":true,"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/konceptwise"}],"wp:attachment":[{"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=282758"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=282758"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=282758"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=282758"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=282758"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=282758"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}