The best login with phone number in WordPress plugin. Let your users register and login using their mobile number via OTP SMS — no password needed. Free to install, compatible with WooCommerce, and supports 20+ SMS gateways including Firebase, Twilio, Kavenegar, and more.
Why use this OTP Login with Phone Number WordPress plugin?
This plugin creates a login and registration form for WordPress that authenticates users by their phone number using a One-Time Password (OTP) sent via SMS. Instead of remembering a password, users simply enter their phone number and confirm the code — fast, secure, and friction-free.
Using Firebase (free), you can send up to 10,000 OTP SMS per month at no cost. You can also connect any of 20+ supported SMS gateways, or configure your own custom gateway via API.
Fully compatible with WooCommerce — the login form appears automatically on the My Account page, checkout, and registration forms.

Free version
- OTP login and registration with phone number
- Free Firebase integration — 10,000 OTP SMS/month
- WooCommerce login, registration & checkout support
- Email OTP login included
- Custom SMS gateway — connect any provider via API
- Kavenegar gateway (free)
- DrPayamak gateway (free)
- Twilio gateway (free)
- Netgsm gateway — Turkey (free)
- Popup & inline form design
- Country flags & auto country code detection
- Password recovery via phone OTP
- Redirect after login/register to any URL
- Page protection — restrict pages to logged-in users
- Shortcode support — embed form anywhere
- Customizable form text and labels
- OTP code length configurable
- Resend OTP timer
- Terms & conditions checkbox
- Existing user sync (WooCommerce billing phone)
- Store phone with or without country code
- GDPR-compliant
- Multisite network compatible
- Translation-ready — includes Persian (fa_IR)
- Compatible with WPML & Polylang
- Custom CSS support

PRO version
- Everything in Free, plus:
- WhatsApp OTP via UltraMessage
- Telegram OTP bot
- MSG91 — India SMS gateway
- Alibabacloud SMS
- MessageBird — global SMS
- Vonage (Nexmo) — global SMS
- Trustsignal, Taqnyat, Textlocal, 2Factor, FarazSMS, MelliPayamak, SMS.ir
- Advanced style customization panel — colors, logo, fonts, borders, backgrounds
- Custom registration fields — collect extra data on signup
- Default user role assignment
- Google SSO alongside phone login
- Priority support
- Custom gateway development on request
How does OTP login with phone number in WordPress work?
When a user enters their phone number, the plugin checks whether they already exist in the database. Then:
- New user — an OTP code is sent to their phone. After verification they are registered and logged in automatically.
- Existing user without password — OTP is sent again for verification.
- Existing user with password — they can login with their password, or request an OTP instead.
How to install and configure the plugin
- Download the free version from the WordPress plugin directory or install directly from your WordPress admin.
- Activate the plugin. Go to Login Settings in your WordPress admin menu.
- Choose your SMS gateway (Firebase is recommended for international sites — it’s free).
- Configure your gateway credentials.
- Create a page, add the shortcode
, and that’s your login page. - Configure options: enable/disable email login, password login, redirect URL, OTP length, timer, and more.
- Test by visiting the page in a browser where you are not logged in.
Watch: How to install the plugin in WordPress
Frequently Asked Questions
- Does it work with WooCommerce?
Yes. After activation, the OTP login form appears automatically on the WooCommerce My Account page, checkout, and registration forms. - Is the plugin free?
Yes. The core plugin is completely free. The Pro version adds more SMS gateways, advanced style options, and priority support. - Which SMS gateways are free?
Firebase, Kavenegar, DrPayamak, Twilio, Netgsm, and Custom API are all available in the free version. - Can I connect my own SMS gateway?
Yes. Use the Custom Gateway option — enter your API URL, request method, headers, and body in JSON format. Use${code}as the OTP placeholder. - Can I use it for login only, without registration?
Yes. Go to WordPress Settings > General and uncheck “Anyone can register”. - I get “users can not register!” error. What should I do?
Go to WordPress Settings > General > Membership and check “Anyone can register”. - Can users login with both phone and email?
Yes. Enable both options in the plugin settings. - Does it work on multisite?
Yes, multisite is fully supported. - Is it translation-ready?
Yes. Compatible with WPML, Polylang, and standard .po/.mo files. Persian (fa_IR) is included.
Supported SMS Gateways
The plugin integrates with 20+ SMS gateway providers to deliver OTP codes for WordPress login and registration.
| Gateway | Region / Notes | Free / Pro |
|---|---|---|
| Firebase (Google) | International — 10,000 OTP/month free | Free |
| Twilio | International — highly reliable | Free |
| Netgsm | Turkey | Free |
| Kavenegar | Iran — pattern-based | Free |
| DrPayamak | Iran | Free |
| Custom API | Any provider via REST API | Free |
| WhatsApp (UltraMessage) | WhatsApp OTP | Pro |
| Telegram | OTP via Telegram bot | Pro |
| MSG91 | India | Pro |
| Alibabacloud | Asia / International | Pro |
| MessageBird | Global | Pro |
| Vonage (Nexmo) | Global | Pro |
| Trustsignal | International | Pro |
| Taqnyat | GCC / Arabic region | Pro |
| Textlocal | UK / India | Pro |
| 2Factor | India | Pro |
| FarazSMS | Iran | Pro |
| MelliPayamak | Iran | Pro |
| SMS.ir | Iran | Pro |
Don’t see your provider? Use the Custom Gateway option to connect any REST API-based SMS service. See documentation →

kamyar –
its a good plugin with best developer, i used the plugin and its realy fantastic
Hamid reza Alinia (verified owner) –
Thanks😍
محمود –
اضافة رائعة جدا ومجهود محترم من مقدم الخدمة كل الشكر و التوفيق
Roy Cardinale –
I always was interested in this topic and stock still am, thankyou for putting up.
Nathanael Spinney –
Hello there, I found your blog via Google whilst looking for a similar topic, your web site came up, it appears good. I’ve bookmarked it in my google bookmarks.
Shawn Dzierzanowski –
hi, your site is fantastic. I truly do many thanks for operate
میر عبداله موسوی –
متشکر
در تلاشم افزونه را فعال
امیدوارم از افزونه شما بتوانم بهره برداری بکنم
Marceline Grzegorek –
Wow What great information. Thank you for the time you spent on this post.
Edna Hitz –
Outstanding post, you have pointed out some good details , I likewise conceive this s a very good website.
Becki Fleurantin –
As I website owner I think the articles here is rattling superb , thanks for your efforts.
Clorinda Osler –
Great post. I was checking constantly this blog and I am impressed! Extremely useful info particularly the last part I care for such info a lot. I was seeking this certain info for a long time. Thank you and good luck. .Chlebek Dukana
Hyacinth Sera –
I like this site very much so much superb information.
Erfan –
Excellent as always
Pouriya –
Best plugin and necessary for each website👌🏻
Ali –
Good plugin, best developer and fast support. Sie reagieren sehr schnell per Chat und fügen dem Plugin die gewünschten Funktionen hinzu.
Reyna Oelschlaeger –
Greetings! Very useful advice in this particular post! It’s the little changes that will make the most significant changes. Thanks for sharing!