

Dashboard with live SMS balance, status checklist, and quick actions
ForthFocus SMS is built for Indian WooCommerce stores that need DLT-ready transactional SMS, order notifications, OTP verification, and operational visibility in one place. It sends order-status notifications to customers and adds phone-number OTP verification to important store touchpoints such as login, registration, cart, and checkout.
It is built for production: instant order-status sends with optional async queue, a custom log table with filtering, search, retry and CSV export, per-template DLT enforcement, real rate-limiting on OTP requests and verifications, segment-aware authoring with live variable-syntax linting, HTTP diagnostics for gateway communication, and a 3-step setup wizard so first-time configuration takes minutes instead of hours.
The plugin currently supports SMSGatewayHub, ForthFocus SMS Gateway, Gupshup, Fast2SMS, and 2Factor. Additional providers (MSG91, Twilio, Kaleyra) are on the roadmap. The architecture is provider-agnostic — the same templates, OTP flows, and logging continue to work as new providers are added.
Most SMS plugins focus only on sending a message or adding a basic OTP form. ForthFocus SMS is focused on the Indian WooCommerce + DLT workflow: every enabled template needs its own DLT Template ID, template syntax is checked before sending, customer OTP flows are rate-limited, gateway responses are logged, balance checks are available inside WordPress, and Diagnostics shows the actual WordPress HTTP request lifecycle for supported gateway communication.
In India, every commercial SMS must use a sender ID and template registered on the DLT (Distributed Ledger Technology) portal of your telecom operator. Sending unregistered content gets rejected at the operator side, often silently. This plugin enforces DLT correctness at every layer:
{order_id) instead of {order_id}, {#var#} placeholders pasted verbatim from the DLT portal) before they cause silent rejections.This plugin connects to the SMS gateway selected by the site owner to send transactional SMS messages and fetch SMS balance information. A gateway account, API key, approved sender ID/Header, Entity ID, and approved DLT templates are required for live SMS delivery.
The plugin currently supports the following gateway endpoints:
https://www.smsgatewayhub.com/api/mt/SendSMS — used when the site owner sends an SMS through SMSGatewayHub, such as an order-status notification, OTP message, or template test. The plugin sends the recipient phone number, rendered message body, sender ID, route, channel, Entity ID, DLT Template ID, and the site’s SMSGatewayHub API key.https://www.smsgatewayhub.com/api/mt/GetBalance — used when the dashboard or gateway settings page fetches the SMSGatewayHub balance. The plugin sends the site’s SMSGatewayHub API key.https://sms.forthfocus.com/api/mt/SendSMS — used when the site owner sends an SMS through ForthFocus SMS Gateway, such as an order-status notification, OTP message, or template test. The plugin sends the recipient phone number, rendered message body, sender ID, route, channel, Entity ID, DLT Template ID, and the site’s ForthFocus SMS Gateway API key.https://sms.forthfocus.com/api/mt/GetBalance — used when the dashboard or gateway settings page fetches the ForthFocus SMS Gateway balance. The plugin sends the site’s ForthFocus SMS Gateway API key.https://enterprise.smsgupshup.com/GatewayAPI/rest — used when the site owner sends an SMS through Gupshup, such as an order-status notification, OTP message, or template test. The plugin sends the recipient phone number, rendered message body, approved sender ID/mask, Gupshup User ID, and Gupshup Password. For Gupshup, sender ID, entity, and DLT template mapping must be configured on the Gupshup account.https://enterprise.smsgupshup.com/apps/apis/accInfo — used when the dashboard or gateway settings page fetches the Gupshup balance. The plugin sends the site’s Gupshup User ID and Password.https://www.fast2sms.com/dev/bulkV2 — used when the site owner sends an SMS through Fast2SMS, such as an order-status notification, OTP message, or template test. The plugin sends the recipient phone number, rendered message body, Fast2SMS Authorization Key, DLT-approved sender ID, Entity ID, DLT Template ID, and the fixed dlt_manual route.https://www.fast2sms.com/dev/wallet — used when the dashboard or gateway settings page fetches the Fast2SMS wallet balance. The plugin sends the site’s Fast2SMS Authorization Key.https://2factor.in/API/R1/ — used when the site owner sends an SMS through 2Factor, such as an order-status notification, plugin-generated OTP message, or template test. The plugin sends the recipient phone number, rendered DLT-approved message body, 2Factor API Key, Sender ID/Header, PE ID, and DLT Template ID through the Transactional SMS API. The plugin does not use 2Factor’s OTP generation or OTP verification APIs.https://2factor.in/API/V1/{API_KEY}/ADDON_SERVICES/BAL/TRANSACTIONAL_SMS — used when the dashboard or gateway settings page fetches the 2Factor Transactional SMS balance. The plugin places the site’s 2Factor API Key in the endpoint path as required by the provider.SMS content and phone numbers are sent to the selected gateway only when the site owner enables the plugin and performs an SMS-related action or when a configured WooCommerce/OTP event triggers an SMS.
Service provider: SMSGatewayHub
Terms and Conditions: https://www.smsgatewayhub.com/terms-and-conditions
Privacy Policy: https://www.smsgatewayhub.com/privacy-policy
API Documentation: https://www.smsgatewayhub.com/free-sms-gateway-developer-api
Service provider: ForthFocus SMS Gateway
Terms and Conditions: https://forthfocus.com/terms-and-conditions/
Privacy Policy: https://forthfocus.com/privacy-policy/
Website: https://forthfocus.com/
Service provider: Gupshup
Website: https://www.gupshup.ai/
Terms and Conditions: https://www.gupshup.ai/terms-and-conditions
Privacy Policy: https://www.gupshup.ai/privacy-policy
Service provider: Fast2SMS
Website: https://www.fast2sms.com/
Terms and Conditions: https://www.fast2sms.com/terms-conditions
API Documentation: https://docs.fast2sms.com/
Service provider: 2Factor
Website: https://2factor.in/
Terms and Privacy: https://2factor.in/v3/tos
API Documentation: https://documenter.getpostman.com/view/301893/TWDamFGh
The plugin works on both classic (shortcode-based) and block-based WooCommerce checkout, but the depth of integration differs:
[woocommerce_checkout] shortcode, used by Storefront, Astra, GeneratePress, Flatsome, URNA, Dokan-style themes, and any site with the WC checkout shortcode) — full integration. The OTP gate renders above the checkout form, the billing phone field is automatically locked to the verified number once verification is complete, and the user uses a “Change phone” link if they need to switch numbers.For the strictest UX and behavior (auto-locked phone field, no possibility of submitting a mismatched number), use the classic checkout. To switch from block-based to classic on a Twenty Twenty-Five site, edit the Checkout page and replace the “Checkout” block with the [woocommerce_checkout] shortcode.
A 3-step setup wizard guides you through:
You can re-run the wizard from the Dashboard at any time, or skip it entirely if you prefer to configure manually.
ForthFocus is a trademark of FORTHFOCUS GROUP.
WordPress, WooCommerce, and Woo are trademarks of their respective owners. This plugin is not affiliated with, endorsed by, sponsored by, or officially associated with the WordPress Foundation, Automattic Inc., WooCommerce, or Woo.
SMSGatewayHub, MSG91, Gupshup, Fast2SMS, 2Factor, Twilio, and Kaleyra are trademarks or brands of their respective owners. This plugin currently integrates with SMSGatewayHub, ForthFocus SMS Gateway, Gupshup, Fast2SMS, and 2Factor. MSG91, Twilio, and Kaleyra are referenced only as examples of additional providers planned for future releases. The plugin is not officially endorsed by or affiliated with third-party gateway brands unless stated through a formal partnership.