₹0.15/SMS on Business planFree DLT registration helpInternational SMS worldwide
Talk to sales+91 95851 60363 Get started
OTP Verification

OTP SMS for Login and Verification in Your App or Website

Use our OTP SMS for login and verification to confirm sign-ups, secure logins and approve sensitive actions. One API call sends a DLT-approved OTP that reaches DND numbers at any hour, with delivery reports and fallback options.

Free DLT helpNo monthly feeJio · Airtel · Vi · BSNLIndia & international
Customer paying with a smartphone at a card machine
✓✓
DeliveredVM-TRYKAI-S · DLR received
₹
₹0.15 / SMSbilled on delivery
Quick answer

An OTP SMS for login and verification is a short one-time code your system generates and sends to a user's mobile number. The user types it back to prove they own the number. In India it needs a registered header and an approved OTP template, and it reaches DND numbers 24 hours a day.

₹0.15per SMS, Business plan
₹0setup or monthly fee
2–7 daystypical DLT approval

Get pricing & plans

We'll call within working hours with the right plan and check your DLT or sender ID status.

Reaches DND numbers 24x7

OTP templates are exempt from DND filters and time windows.

Android autofill support

Register your app hash in the template so codes fill automatically.

Voice and WhatsApp fallback

Offer a call or WhatsApp code when SMS does not arrive.

Abuse and pumping protection

Rate limits and monitoring help stop fake OTP request floods.

Direct operator connectivity
JioAirtelViBSNLTRAI DLT compliant · 6+ redundant routes

How OTP SMS for login and verification works

Your server creates a random code, stores a hash of it with an expiry time, and calls our API with the user's number and the code as a template variable. We route it to the operator and return a message ID. When the user enters the code, your server checks it against the stored hash and marks the number as verified. OTP SMS for login and verification is typically delivered in a few seconds.

Common uses include sign-up, login, password reset, changing a registered mobile or email, confirming a payout, and verifying a cash on delivery order. Each use should have its own template so the user knows exactly what they are approving.

Template rules for OTP messages

OTP templates have a few fixed requirements under DLT and some good habits worth following.

  • Register the OTP template under the correct category on your DLT portal, with the code as a {#var#} field.
  • State the purpose: login, sign-up or payment of a stated amount.
  • Include the validity period, for example 5 or 10 minutes.
  • Add a warning not to share the code, and never ask users to reply with it.
  • For Android autofill, end the template with your app's 11-character SMS Retriever hash.
Customer paying with a smartphone at a card machine

Security practices for your OTP flow

Use 4 to 6 digit codes generated with a secure random function, and expire them within 10 minutes. Allow only a few wrong attempts before you lock the code. Do not write OTPs to plain-text logs or analytics tools.

Protect the send endpoint. Bots can hit your sign-up form and trigger thousands of OTPs to premium or random numbers, which wastes credits. Limit requests per number, per IP address and per device, add a CAPTCHA after repeated attempts, and watch for sudden spikes in one number series. Our MIS reports make unusual traffic easy to spot.

Choosing the right OTP sender setup

Use one header for all OTPs so users learn to trust it, and keep promotional traffic on a different header. If you run several apps or brands, give each its own OTP template that names the brand, because users who see an unknown name may ignore the code.

For high-volume apps, send OTPs through our HTTPS API with a timeout and a retry on a second route only if the first call fails. Do not resend the same code in a loop. Generate a fresh code on each resend and invalidate the older one.

When to offer voice, WhatsApp or RCS for OTP

Most users receive SMS OTPs without trouble. A few will not, because of weak signal, a full inbox or roaming. Offer a resend after 30 seconds, then a voice OTP call that reads the code aloud. Users who are active on WhatsApp can get an authentication message at ₹0.12 to ₹0.16 on our plans. RCS OTP is also available on Jio, at tiered rates set by the operator. Always keep SMS as the default, because it works on every phone without data.

Measure your OTP success rate as verified logins divided by codes sent. If it drops, check delivery reports by operator and circle first, then check your own app flow.

International

Sending outside India too?

We also send SMS and WhatsApp messages to customers abroad, with help on each country's sender ID and consent rules.

Get started

How it works

Get API keys

Create your account, add credits and generate an API key in the panel.

Register an OTP template

Submit your OTP wording with the code variable, validity and app hash on DLT.

Call the send API

Send the number, template ID and code over HTTPS from your backend.

Add fallback and limits

Set resend timers, voice OTP fallback and per-number rate limits.

FAQ

Frequently asked questions

Do OTP SMS reach DND numbers?

Yes. OTP messages sent through an approved OTP template reach numbers on the DND register, and they are not limited to the 10am to 9pm window. The header and template must be registered on DLT, and the message text must match the approved template exactly apart from the variable values.

How fast is OTP SMS delivery in India?

OTP SMS is typically delivered in a few seconds. Delivery can take longer if the phone is switched off, out of coverage or roaming, in which case the operator retries for a period. Offer a resend option and a voice OTP fallback for users who wait more than 30 to 60 seconds.

How do I make OTPs autofill on Android?

Use Google's SMS Retriever API in your Android app. It needs the SMS to contain an 11-character hash generated from your app's signing key. Include that hash at the end of your DLT OTP template. iPhones suggest the code automatically from the keyboard when the SMS mentions it is a code.

What is OTP SMS pumping and how do I stop it?

SMS pumping is when bots trigger large numbers of OTP requests to numbers they profit from, so you pay for messages nobody needed. Stop it with per-number and per-IP rate limits, CAPTCHA after repeated requests, blocking unexpected number ranges and monitoring daily OTP volume against new sign-ups.

How much does OTP SMS cost?

OTP SMS is billed per delivered SMS: ₹0.20 on Starter up to 10,000 a month, or ₹0.15 on Business up to 1,00,000 a month, plus 18% GST. Higher volumes get Enterprise pricing. WhatsApp authentication messages cost ₹0.12 to ₹0.16 depending on your WhatsApp plan.

Should OTP length be 4 or 6 digits?

Six digits gives a much larger range of possible codes, which makes guessing harder. Four digits is easier to type and acceptable for low-risk actions with strict attempt limits. For payments, account changes and password resets, use six digits with a short expiry and a lock after a few wrong attempts.

Send your first SMS today

From ₹0.15 per delivered SMS, credits valid for a year, and DLT help from a real person.

Chat on WhatsApp