Linux 软件免费装
Banner图

kwtSMS: OTP & SMS Notifications

开发者 kwtsms
更新时间 2026年11月12日 03:46
PHP版本: 7.4 及以上
WordPress版本: 7.1
版权: GPL-2.0-or-later
版权网址: 版权信息

标签

login otp woocommerce authentication sms

下载

3.6.0 3.6.1 3.5.2 3.6.2 3.6.3

详情介绍:

kwtSMS replaces or supplements WordPress passwords with SMS one-time codes, sends WooCommerce order updates automatically, and lets you verify phone numbers on any contact form. Built on the kwtSMS SMS gateway. Built for Arabic-speaking markets (Kuwait, Saudi Arabia, UAE, Bahrain, Qatar, Oman) with full RTL admin support and bilingual SMS templates in English and Arabic. Authentication WooCommerce Integration Contact Form Integrations Each integration supports two modes: Notification (send a confirmation SMS on submit) and OTP Gate (block submission until the phone number is verified): Security External Services This plugin connects to the following external services: 1. kwtSMS API (required): sends all SMS messages. kwtsms.com | Terms | Privacy Requests to kwtSMS carry the integration name and version (no personal data) so kwtSMS can see which integrations are in use. 2. ipapi.co (optional): detects visitor country for dial-code pre-selection. ipapi.co | Terms | Privacy 3. IPHub (optional): proxy/VPN detection on OTP requests. iphub.info | Terms | Privacy 4. Google reCAPTCHA v3 (optional): bot protection on OTP forms. google.com/recaptcha | Terms | Privacy 5. Cloudflare Turnstile (optional): alternative bot protection. cloudflare.com/turnstile | Terms | Privacy Admin Test Mode Enable Test Mode in the Gateway settings to test without receiving real SMS messages. Messages are queued on the kwtSMS server but never delivered to the phone. Credits are still deducted. To recover them, log in to your kwtSMS account dashboard and delete the queued messages. The OTP code is visible under kwtSMS > Logs > Debug Log so you can complete flows during development. Languages Ships with English (default) and Arabic translations. The plugin admin UI and all user-facing strings are fully translatable.

安装:

Method 1: WordPress Plugin Directory
  1. In your WordPress admin, go to Plugins > Add New Plugin.
  2. Search for kwtSMS.
  3. Click Install Now next to "kwtSMS: OTP & SMS Notifications".
  4. Click Activate.
  5. Proceed to the configuration steps below.
Method 2: Upload via WordPress Admin
  1. Download the plugin zip file from the GitHub releases page.
  2. In your WordPress admin, go to Plugins > Add New Plugin.
  3. Click the Upload Plugin button at the top of the page.
  4. Click Choose File, select the downloaded wp-kwtsms-x.x.x.zip file, and click Install Now.
  5. Click Activate Plugin.
  6. Proceed to the configuration steps below.
Method 3: Manual FTP / SFTP Upload
  1. Download the plugin zip file from the GitHub releases page.
  2. Unzip the file on your computer. You will get a folder named wp-kwtsms.
  3. Upload the wp-kwtsms folder to /wp-content/plugins/ on your server using an FTP or SFTP client (FileZilla, Cyberduck, etc.).
  4. In your WordPress admin, go to Plugins > Installed Plugins.
  5. Find kwtSMS: OTP & SMS Notifications and click Activate.
  6. Proceed to the configuration steps below.
Configuration (all methods) After activating the plugin:
  1. Go to kwtSMS > Gateway in the WordPress admin menu.
  2. Enter your kwtSMS API Username and API Password (find these in your kwtSMS account under Account > API Settings, not your login password).
  3. Click Login to verify credentials. The plugin calls the kwtSMS API and populates the Sender ID dropdown.
  4. Select your Sender ID from the dropdown and click Save Settings.
  5. Go to kwtSMS > General and select your OTP mode: 2FA (password + SMS code), Passwordless (phone number + SMS code only), or Both (let each user choose).
  6. Go to kwtSMS > Templates to customize your SMS messages in English and Arabic.
WooCommerce Order Notifications Go to kwtSMS > Integrations > WooCommerce and enable the order status notifications you want. Each status has its own English and Arabic SMS template.

屏幕截图:

  • SMS Templates in Arabic (RTL): bilingual template editor with live character counter and SMS page indicator.
  • Two-Step Verification screen: OTP entry step shown after successful password login (2FA mode).
  • Passwordless login: phone number entry with country code selector, no password required.
  • Password reset via OTP: SMS verification step that replaces the default email reset link.
  • WooCommerce integration: per-status SMS templates and checkout OTP gate configuration.
  • Integrations overview: WooCommerce, Contact Form 7, WPForms, and Ninja Forms.
  • SMS Logs: full send history with date, Sender ID, message preview, phone, type, status, and API response.

升级注意事项:

3.6.3 Bug fixes. New login settings; your current login behaviour is kept. 3.6.2 Bug fixes. 3.6.1 The On-Hold order SMS text was updated. Check kwtSMS > WooCommerce if you changed that text yourself. 3.6.0 Checkout phone verification now works with the WooCommerce Checkout block; a separate checkout SMS template was added. 3.0.0 Initial release. No upgrade required.

常见问题:

Do I need a kwtSMS account?

Yes. You need an active kwtSMS account with API access. Sign up at kwtsms.com. API credentials (username and password) are entered in the Gateway settings page.

What is the difference between Test Mode and Live Mode?

In Test Mode (enabled in Gateway Settings), messages are queued on the kwtSMS server but never delivered to the recipient's phone. Credits are still deducted. To recover them, log in to your kwtSMS account dashboard and delete the queued messages from the outbox. The OTP code is visible under kwtSMS > Logs > Debug Log so you can complete authentication flows during development without a real phone. In Live Mode, the SMS is delivered to the recipient's phone and credits are deducted. Always develop with Test Mode on, then disable it before going live.

Does the plugin work without WooCommerce?

Yes. WooCommerce is fully optional. All login, password reset, and contact form features work on any WordPress site.

How do I unlock an admin who is locked out due to OTP?

Add this line to your wp-config.php: define( 'KWTSMS_OTP_DISABLED', true ); This bypasses all OTP checks and restores the standard WordPress login. Remove the line once you have regained access.

My SMS status shows OK but the recipient did not receive the message. What happened?

Check the Sending Queue at kwtsms.com. If your message is stuck there, it was accepted by the API but not dispatched. Common causes are emoji in the message, hidden characters from copy-pasting (from Word, PDF, or rich editors), or spam filter triggers. Delete the stuck message from the queue to recover your credits. Also verify that Test Mode is off in Gateway Settings: in test mode, messages are queued but never delivered to the handset.

What is a Sender ID and why should I not use the shared KWT-SMS sender?

A Sender ID is the name that appears as the sender on the recipient's phone (for example, MY-APP instead of a random number). KWT-SMS is a shared test sender. It causes delivery delays and is blocked on Virgin Kuwait. Register a private Sender ID through your kwtSMS account. For OTP and authentication messages, you need a Transactional Sender ID, which bypasses DND (Do Not Disturb) filtering on Zain and Ooredoo. Promotional Sender IDs are filtered, meaning OTP messages can silently fail while credits are still deducted.

I am getting an authentication error when I save my credentials. What should I check?

The plugin requires your API username and API password, not your account mobile number or your login password. Log in to kwtsms.com, go to Account > API settings, and verify your API credentials. Credentials are case-sensitive. Make sure there are no extra spaces when copying and pasting.

Can I send SMS to numbers outside Kuwait?

International sending is disabled by default on kwtSMS accounts. Log in to your kwtSMS account and activate coverage for the countries you need. Visit the kwtSMS dashboard to view and manage your active country coverage. Note that enabling international coverage increases exposure to automated abuse, so rate limiting is strongly recommended before enabling it.

更新日志:

3.6.3 3.6.2 3.6.1 3.6.0 3.5.2 3.5.1 3.3.3 3.3.2 3.3.1 3.3.0 3.2.0 3.1.7 3.1.6 3.1.5 3.1.4 3.1.3 3.1.2 3.1.1 3.0.4 3.0.3 3.0.2 3.0.1 3.0.0