{"id":362050,"date":"2026-09-02T09:53:18","date_gmt":"2026-09-02T09:53:18","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/sms-otp-auth\/"},"modified":"2026-09-02T09:52:54","modified_gmt":"2026-09-02T09:52:54","slug":"snwebtech-sms-otp-authentication","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/snwebtech-sms-otp-authentication\/","author":23558529,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.4","stable_tag":"1.0.4","tested":"7.1","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"SnWebTech SMS OTP Authentication","header_author":"SnWebTech SMS Developer Team","header_description":"OTP-based WordPress registration and login integrated with SnWebTech SMS Gateway Pro Bulk SMS.","assets_banners_color":"02153a","last_updated":"2026-09-02 09:52:54","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":42,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.4":{"tag":"1.0.4","author":"shoubhik","date":"2026-09-02 09:52:54","revision":3677664}},"upgrade_notice":{"1.0.0":"<p>Initial release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3680198,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3680198,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3680198,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3680198,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.4"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[710,602,9210,603,711],"plugin_category":[38,41,58],"plugin_contributors":[278843],"plugin_business_model":[],"class_list":["post-362050","plugin","type-plugin","status-publish","hentry","plugin_tags-authentication","plugin_tags-login","plugin_tags-otp","plugin_tags-registration","plugin_tags-sms","plugin_category-authentication","plugin_category-communication","plugin_category-user-management","plugin_contributors-shoubhik","plugin_committers-shoubhik"],"banners":{"banner":"https:\/\/ps.w.org\/snwebtech-sms-otp-authentication\/assets\/banner-772x250.png?rev=3680198","banner_2x":"https:\/\/ps.w.org\/snwebtech-sms-otp-authentication\/assets\/banner-1544x500.png?rev=3680198","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/snwebtech-sms-otp-authentication\/assets\/icon-128x128.png?rev=3680198","icon_2x":"https:\/\/ps.w.org\/snwebtech-sms-otp-authentication\/assets\/icon-256x256.png?rev=3680198","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>SnWebTech SMS OTP Authentication lets users register and log in to a WordPress site using a One-Time Password (OTP) sent to their mobile number.<\/p>\n\n<p>The plugin integrates with the <strong>SnWebTech SMS Gateway Pro Bulk SMS<\/strong> external SMS service at https:\/\/snbulksms.in. An active account and API credentials from the service are required to send OTP messages.<\/p>\n\n<p>The plugin does not include a license activation system or paywall. The WordPress.org version provides its included functionality without requiring a license key.<\/p>\n\n<p><strong>Features<\/strong>\n* OTP registration using a shortcode\n* OTP login using a shortcode\n* Integration with SnWebTech SMS Gateway Pro Bulk SMS\n* Configurable API key, Sender ID, Entity ID, DLT Template ID, and SMS type\n* Configurable OTP expiry, length, and message template\n* Admin tools for sending a test OTP and checking gateway balance\n* OTPs are hashed before storage\n* Maximum verification attempts and OTP expiration\n* Fully translatable<\/p>\n\n<p><strong>Shortcodes<\/strong>\n* <code>[swsmsotp_register]<\/code> \u2014 Place on your registration page\n* <code>[swsmsotp_login]<\/code> \u2014 Place on your login page<\/p>\n\n<h3>External Services<\/h3>\n\n<p>This plugin connects to <strong>SnWebTech SMS Gateway Pro Bulk SMS<\/strong>, an external SMS service operated by SnWebTech.<\/p>\n\n<p>Service website: https:\/\/snbulksms.in<\/p>\n\n<p>The service is required for sending OTP messages. When a visitor requests an OTP, the plugin sends the recipient's mobile number, OTP message content, sender information, DLT template information, and the configured API credentials to the service's API endpoint. The plugin also connects to the service when an administrator uses the gateway balance check or test SMS tools.<\/p>\n\n<p>The plugin uses these service endpoints:\n* <code>https:\/\/snbulksms.in\/api\/send.php<\/code> \u2014 sends OTP\/test SMS messages.\n* <code>https:\/\/snbulksms.in\/api\/balance.php<\/code> \u2014 checks the account balance when requested by an administrator.<\/p>\n\n<p>Please review the service provider's own terms and privacy information before using the service.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>snwebtech-sms-otp-authentication<\/code> folder to <code>\/wp-content\/plugins\/<\/code>, or install the plugin from the WordPress Plugins screen.<\/li>\n<li>Activate the plugin through the <strong>Plugins<\/strong> menu in WordPress.<\/li>\n<li>Go to <strong>Settings &gt; SnWebTech SMS OTP Authentication<\/strong>.<\/li>\n<li>Enter your SnWebTech SMS Gateway Pro Bulk SMS API credentials and DLT information.<\/li>\n<li>Create a registration page and add <code>[swsmsotp_register]<\/code>.<\/li>\n<li>Create a login page and add <code>[swsmsotp_login]<\/code>.<\/li>\n<li>Use the <strong>Test Tools<\/strong> in the settings page to verify the SMS gateway connection.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"where%20do%20i%20get%20the%20api%20key%3F\"><h3>Where do I get the API key?<\/h3><\/dt>\n<dd><p>Create or use an account with SnWebTech SMS Gateway Pro Bulk SMS and obtain the API credentials provided by the service.<\/p><\/dd>\n<dt id=\"what%20mobile%20numbers%20are%20supported%3F\"><h3>What mobile numbers are supported?<\/h3><\/dt>\n<dd><p>The plugin accepts Indian mobile numbers with 10 digits starting with 6-9.<\/p><\/dd>\n<dt id=\"can%20i%20customize%20the%20otp%20message%3F\"><h3>Can I customize the OTP message?<\/h3><\/dt>\n<dd><p>Yes. Go to <strong>Settings &gt; SnWebTech SMS OTP Authentication<\/strong> and edit the OTP Message Template. Use <code>{OTP}<\/code> for the OTP code and <code>{EXPIRY}<\/code> for the expiry period. The message should match your DLT-approved template.<\/p><\/dd>\n<dt id=\"is%20the%20otp%20stored%20securely%3F\"><h3>Is the OTP stored securely?<\/h3><\/dt>\n<dd><p>OTPs are hashed using WordPress's password hashing functionality before they are stored. Plain OTP values are not stored in the database.<\/p><\/dd>\n<dt id=\"does%20this%20plugin%20require%20a%20license%20key%3F\"><h3>Does this plugin require a license key?<\/h3><\/dt>\n<dd><p>No. This WordPress.org version does not use license activation or a paywall.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.4<\/h4>\n\n<ul>\n<li>Updated plugin metadata and code-quality compatibility for WordPress.org review.<\/li>\n<li>Removed the non-essential Author URI metadata.<\/li>\n<li>Updated plugin version metadata to 1.0.4.<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Updated code-quality checks for WordPress.org review.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<\/ul>","raw_excerpt":"OTP-based WordPress registration and login integrated with SnWebTech SMS Gateway Pro Bulk SMS.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/362050","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=362050"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/shoubhik"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=362050"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=362050"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=362050"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=362050"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=362050"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=362050"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}