Everything, in one place

127 answers.
No sales call required.

The questions AP & Telangana owners actually ask before letting anything near their customers' phones — including the legal ones nobody likes answering. Those are first.

Two business people across a small table, one asking a question, the other listening.
Straight answers.Where a part is on you, we say so.

Compliance & the law

The questions nobody likes answering

11questions, answered without a sales call. Where an answer is “that part is on you”, we say so.

Is automated AI calling legal in India in 2026?
Yes, within a framework. Promotional and transactional voice calls fall under TRAI's DLT regime: registered sender, registered template where applicable, 140-series origination for promotional traffic, and DND scrubbing before you dial. Consent must satisfy the DPDP Act. Sector regulators — RBI, IRDAI — add their own rules on top. None of that makes AI calling illegal; it makes cold-calling a purchased list illegal, which was already true before AI.
Whose responsibility is DLT registration and DND scrubbing — yours or mine?
Yours, as the entity whose message is being delivered. We provide the controls that let you operate cleanly — blocklists, calling windows, automatic opt-out capture, complete transcripts — but the registration, the consent record and the list itself are yours. Be sceptical of any vendor who claims otherwise.
What are the penalties if I get this wrong?
Per-violation financial penalties, and — the part that actually hurts — disconnection of the originating numbers. TRAI's detection has become considerably more aggressive; enforcement action against tens of thousands of numbers in a single quarter is now normal.
Roughly how many Indian numbers are on DND?
A majority of active mobile numbers carry some DND preference. Plan on the assumption that most of a cold list is unreachable for promotional content, and build your calling around consented enquiries instead. That's also where the conversion is.
Does the DPDP Act change what I can do with call recordings?
It formalises it. You need a lawful basis for the recording, the caller needs to be able to withdraw consent, and you need a real process to honour that withdrawal. That is why recording is off until you turn it on; why every recorded call opens by telling the caller so, in their own language; why you set a retention window after which recordings delete themselves; and why deleting a recording — or the lead it belongs to — erases the audio at our telephony provider, not just the row on your screen.
Do I legally have to disclose that the caller is an AI?
India's IT Rules now require synthetically generated audio to be labelled, and the practical reading for voice calls is that the disclosure belongs in the first utterance. You control the opening line, so write it in. It also happens to work better.
Can I clone another person's voice for my campaigns?
Only with that person's explicit, separate, documented consent. Indian courts have been actively protecting personality and voice rights, and a general company privacy policy does not cover biometric voice data. Cloning a public figure is not a grey area.
What about calling customers who are already my customers?
Transactional and service calls to existing customers sit on a much firmer footing than promotional calls to strangers — reminders, confirmations, renewals, deliveries. This is where the majority of sensible use here lives.
Are there time-of-day restrictions on commercial calls?
Yes — and it's not just a default you can widen. Every bulk campaign and every Instant Lead source is hard-capped to 9:00 AM–9:00 PM in that number's local time zone at the platform level; nothing you configure can dial outside it, even by mistake.
Does NaCaller retry a call nobody picks up?
On campaigns, yes — an optional retry ladder, up to 10 attempts, with a gap you set from 5 minutes to 30 days between tries. Instant Leads deliberately don't retry: a fresh lead that goes unanswered is a one-shot dial, on purpose — redialing someone every minute the moment they don't pick up is how a legitimate business starts looking like a robocaller. If a lead needs a second attempt, run it through a campaign instead, where retries are visible and bounded.
What records should I keep if a customer complains?
Every call carries its full transcript, timestamps, outcome and the captured fields, retained in your account and exportable — and the call audio too, if you have recording switched on. If a conversation is ever disputed, you have the conversation, which is one genuine advantage over a human telecaller's memory. The trade-off is honest: recordings are personal data under the DPDP Act, so they come with disclosure, a retention window and erasure on request.

Straight answers

The questions owners actually ask

10questions, answered without a sales call. Where an answer is “that part is on you”, we say so.

Is AI calling even legal in India?
Yes — with conditions that are yours to meet, not ours to wave away. Promotional calls need DLT registration, a 140-series origination number and scrubbing against the TRAI DND registry; consent has to be DPDP-compliant. NaCaller gives you the tooling — per-number blocklists, campaign call windows, instant opt-out capture and a full transcript of every call — but registration and consent for your own list are your responsibility. Anyone who tells you their platform makes a scraped list legal is selling you a fine.
Will it sound like one of those robotic IVR calls?
Press play on any voice on this page and judge for yourself — those are real agent recordings, not a studio ad. The difference isn't the audio quality, it's the dialect: a Telangana caller hears Telangana Telugu, not textbook Telugu read by a newsreader.
Can the customer interrupt it, or does it just talk over them?
They can interrupt. The agent listens while it speaks and stops when the caller starts — the same way a person does. That barge-in behaviour is the single biggest thing separating a conversation from a recorded message.
What happens when it doesn't know the answer?
It says so, and hands over. You can configure a warm transfer to a human on your team — the caller presses a key or asks for a person, and the call bridges across. The human gets the context, so nobody has to repeat themselves.
Do I have to tell people they're talking to an AI?
You should, and you increasingly must — India's IT Rules now require synthetically generated audio to be labelled. You control the opening line, so put the disclosure in it. We'd rather you did: in our experience the calls that identify themselves get further than the ones that get caught pretending.
My customers speak half Telugu, half English. Will it cope?
That's the normal case here, and it's handled — the same sentence can carry Telugu grammar and English nouns ('CSE seat', 'hostel', 'counselling') without the agent losing the thread. Hyderabad Telugu with Urdu borrowings is a supported dialect, not an edge case.
How long before my first call goes out?
Create an agent, upload a lead sheet, launch. Minutes, not weeks. There's no implementation partner and no onboarding call you have to sit through first — it's self-serve, whatever plan you're on.
Do I need a new phone number?
No — you can start on ours, at no extra charge on any plan. A dedicated number of your own as caller ID is optional and costs ₹399 a month per number, rented from the Numbers screen. If you let a rental lapse it simply stops being used as your caller ID and calls go out on our numbers again. Showing your own existing business number is configurable on paid plans, subject to your telecom paperwork being in order.
What if someone says 'don't call me again'?
The agent recognises opt-out phrasing in English, Hindi and Telugu — including romanised spellings — flags the number the moment it hears it, and stops. It's automatic; nobody has to notice it in a transcript afterwards.
Can it work with my CRM or my website form?
Yes. New enquiries can be called within seconds of the form submission, and outcomes push back out. Webhooks and API access are on the Scale plan; the lead import (CSV/Excel) works on every paid plan.

Money questions

Costs, billing and the fine print

10questions, answered without a sales call. Where an answer is “that part is on you”, we say so.

What exactly counts as a 'minute'?
Connected talk time. A call that rings out and is never answered doesn't consume your included minutes — you're paying for conversations, not attempts.
Is there a setup fee or an onboarding charge?
A one-time ₹1,499 setup fee is bundled into your FIRST paid plan, and never charged again after that — no per-plan-change fee, no annual repeat. The free tier has none: you can start there without giving a card at all.
Is GST included in these prices?
No — the prices shown are exclusive of GST, which is applied as per Indian regulations at checkout. Your invoice carries the GST breakup for input credit.
What happens if I run past my included minutes?
Calling continues and the extra minutes bill at ₹3/minute. You're alerted before you get there — we'd rather warn you than surprise you on the invoice.
Do unused minutes roll over to next month?
No. Included minutes are per billing period and reset when the period does. If you consistently finish the month with minutes to spare, you're on too big a plan — move down.
Can I change plans in the middle of a month?
Yes, and you should when your volume changes. Upgrades take effect immediately; there's no lock-in and no cancellation penalty on any plan.
₹3–4/min sounds higher than the ₹0.40/min I saw advertised.
It is, and the difference is what's inside the minute. Sub-rupee rates are usually the telephony leg alone, billed before speech recognition, the language model, the voice, the recording and the transcript. Our number is the whole call, in one figure, with no per-feature add-ons behind it.
How does this compare to hiring a telecaller?
One telecaller in AP or Telangana costs roughly ₹15,000–25,000 a month and makes perhaps 60–80 connected calls a day, on working days, during working hours. Run the slider on our home page with your own salary figure — the maths is the real Starter rate, not a marketing multiplier.
What payment methods do you take?
UPI, cards and net banking through a secure Indian payment gateway, in INR. Invoices are GST-compliant and issued to your registered business name.
Is there a refund if it doesn't work for us?
Start on the free tier — 10 real minutes, no card — and prove it works on your own customers before you pay anything. That's a better answer than a refund policy, and it's why the free tier exists.

About the voices

Dialects, cloning and what's really recorded

10questions, answered without a sales call. Where an answer is “that part is on you”, we say so.

Are these real recordings or a demo reel?
They're the exact voices your campaigns dial with. Nothing on this page is a studio performance recorded once for marketing — if it sounds good here, it sounds like that on the call.
Why does dialect matter? Isn't 'Telugu' enough?
Because Telangana Telugu and coastal Andhra Telugu differ enough in vocabulary and pronunciation that a caller hears the mismatch in the first sentence — and a caller who hears a mismatch starts wondering who's really calling. Hyderabad urban Telugu carries substantial English and Urdu; Rayalaseema doesn't.
Which dialects do you actually have?
54 Telugu voices today, across Telangana, Hyderabad (Telugu and Dakhni Hindi), coastal Andhra, North Andhra/Vizag, East Godavari, Guntur, Rayalaseema, Nellore, Karimnagar, Palamuru, Srikakulam, plus Gen-Z registers, Hindi and Kannada. The ones on this page are recordings you can play; the rest are in the app's voice gallery.
Can I use my own voice?
Yes, on paid plans. Record about two minutes on your phone and calls go out in your voice. You can also generate localised versions — you, in Rayalaseema — which is the part nobody else offers.
Is voice cloning legal? Do I need consent?
You need the consent of whoever's voice it is, explicitly and separately — a general privacy policy is not enough under the DPDP Act, and personality rights are being actively litigated in India. Clone your own voice, or one you have written permission for. Never clone a public figure or a customer.
Can I delete a cloned voice later?
Yes, and you should be able to — the right to withdraw consent is absolute under the DPDP Act. Deleting the voice removes it from future calls.
Can one campaign use different voices for different districts?
That's the intended way to use this. Segment your list by district and point each segment at the matching voice — same script, right accent.
Male or female — which performs better?
It depends entirely on who you're calling and about what. An older feminine voice tends to do better on household and education calls in this region; a younger masculine voice does better on some B2B calls. Test both on your own list; that's what the free minutes are for.
Can it read out numbers, amounts and dates correctly in Telugu?
Yes — rupee amounts, ranks, percentages, dates and times are spoken the way a Telugu speaker would say them, not spelled out digit by digit.
Can I hear a voice saying my own script before I launch?
Yes. The Voice Studio in your dashboard synthesises any text you paste, in any voice, so you can hear your actual opening line before a single customer does.

By industry

How each business actually uses it

10questions, answered without a sales call. Where an answer is “that part is on you”, we say so.

We're a college. When should the agent call an admission enquiry?
Within a minute of the form. Speed-to-lead is the whole game in admissions — an enquiry called in the first minute is a conversation, the same enquiry called the next morning is an interruption. Set it to fire on the webhook and it never sleeps through one.
Real estate — can it qualify a lead, not just book a call?
Yes. Budget, preferred locality, ready-to-move versus under-construction, loan status — whatever your script asks, captured as structured fields so your sales team only drives out for the ones worth driving out for.
Clinics — can it handle appointment reminders and reschedules?
Reminders, confirmations and no-show recovery are the classic fit. It reaches the patient in their own dialect, which matters more with older patients than any feature on this page.
Is this suitable for loan or EMI collection calls?
For polite reminders, yes, and the full transcript of every call is kept, which is exactly what you want if a conversation is ever questioned. Note that RBI rules on recovery conduct apply to you whether the caller is human or not.
E-commerce — will it cut my COD returns?
Confirming COD orders before dispatch is one of the highest-return uses here, because an unconfirmed COD order is a shipping cost you're likely to eat twice. The agent confirms, and cancellations come back as structured outcomes.
We're an agency running campaigns for clients. Does that work?
Yes — separate campaigns, agents, voices and numbers, with call history kept per campaign. That's the Growth plan and up.
Can it call at a specific time of day only?
Yes, and it should. Every campaign has a local calling window and the dialer won't dial outside it — no 8 am calls to a customer who'll remember it.
What about festivals and regional holidays?
Set the campaign window around them. A Vinayaka Chavithi morning is not when your admission call lands well, and no amount of good Telugu fixes bad timing.
Can it take an order or a booking, not just qualify?
It can capture everything the booking needs and push it to you as structured fields. For anything requiring payment, hand off to a human or send a link mid-call.
How many calls can it make at once?
Enough that your plan's minutes, not the dialer, will be your limit. If you're planning a burst of thousands in one window, tell us the volume and the window before you launch it.

About the demo call

What happens when you press the button

12questions, answered without a sales call. Where an answer is “that part is on you”, we say so.

Is the demo a real call or a recording?
A real call, on the same pipeline our paying customers run. Nothing about it is staged — that's the entire point of offering it.
Why do I have to give a missed call first?
So we know the number is yours. Without that check, anyone could type in someone else's number and have our agent ring a stranger. It takes ten seconds and it's the reason this demo is safe to offer publicly.
Will you use my number for sales calls afterwards?
No. The demo number is used for the demo. If you want to hear from us you can ask, and if you don't, you won't.
Do you keep my number?
Yes, once it's verified — as a record that this number tried the demo, which is also how the three-a-day limit works. It isn't used to call or message you for anything else.
What if my number is on your do-not-call list?
The demo still calls you, once. You've just proved the number is yours and asked for the call, so we treat that as consent for this one call and say so on screen. Your opt-out stays in place for everything else.
How long is the demo call?
About two minutes. Long enough to interrupt it, change the subject, test its Telugu and decide whether it's real.
Can I test it in Hindi or English instead of Telugu?
Yes — pick the language before you request the call. If you're evaluating for a mixed customer base, do all three.
How many demo calls can I make?
Three a day per number. The free trial, once you sign up, has no such limit — it's your ten minutes to spend however you like.
What should I ask it to really test it?
Interrupt it mid-sentence. Change your mind. Ask something slightly off-script. Switch from Telugu to English halfway. Those are the moments where a scripted bot falls apart and a real conversation doesn't.
Can I hear the recording and transcript afterwards?
On a signed-up account, yes — the transcript, sentiment and captured fields are always there, and call recording can be switched on for your account. When it is on, callers are told at the start of the call, recordings are deleted automatically after a retention window you set, and you can erase any single recording from your call history. The public demo is deliberately lighter on data retention.
Does the demo agent know about my business?
No — it's a generic agent. Yours would be configured with your script, your knowledge base, your occasions and your voice, which is why your version will be noticeably better than this one.
Is the demo call free?
Completely. No card, no signup required to try it.

About us

Who we are and how we operate

10questions, answered without a sales call. Where an answer is “that part is on you”, we say so.

Who's behind NaCaller?
Webchilly Infoways, operating out of Visakhapatnam, Andhra Pradesh. We're a small team building for the market we live in rather than adapting something built elsewhere.
Why Telugu-first instead of an all-India product?
Because 'all-India' in practice means English with an accent option. Eighty million Telugu speakers across two of the country's fastest-growing state economies are not a localisation checkbox, and a Rayalaseema customer can tell within one sentence whether you thought about them.
Where is my data stored, and who can see it?
Your call recordings, transcripts and lead data belong to your account, and each account is isolated from every other one. Our team accesses tenant data only when you ask us to for support.
Can I export my data and leave?
Yes. Your leads, call history and transcripts are exportable. A product that holds your data hostage isn't confident about its own retention.
Do you train AI models on my customers' calls?
Consent for a service and consent for model training are legally separate things under the DPDP Act, and we treat them that way. Your calls run your campaigns.
What's your uptime commitment?
A formal 99.9% SLA is part of the Enterprise plan. On the standard plans we operate to the same target without contracting to it — we'd rather not sell you an SLA we haven't put in writing.
What support do I get, and in what language?
Community on free, email on Starter, priority WhatsApp on Growth, a named contact on Scale — answered in Telugu, Hindi or English, whichever you'd rather use.
Are you hiring, or open to partnerships?
Yes to both, particularly agencies and resellers across AP and Telangana. Use the contact form and say which.
Can I get an invoice in my company's name with GST?
Yes — GST-compliant invoices are issued to your registered business name for input credit.
Something went wrong on a live campaign. How fast will you respond?
Faster than the plan promises, in practice. Use WhatsApp for anything live and affecting real customers — that's what it's there for.

For the developer wiring this in

The questions you'd ask before your first commit

18questions, answered without a sales call. Where an answer is “that part is on you”, we say so.

How does missed-call OTP verification actually work?
You POST the number your user typed. We return a request id and a phone number. Your user gives a missed call to that number from the handset they are claiming — they can cut it the moment it rings. The network hands us their caller ID, we match it to your pending request, and your poll (or our webhook) flips to verified. Nothing is ever sent to the phone, which is why nothing can be delayed, filtered or undelivered.
Can I send OTP SMS in India without DLT registration?
Not legally, and not reliably — since 2021 TRAI requires every enterprise sending transactional or OTP SMS to register its entity, its sender header and its templates on a DLT platform, and unregistered traffic gets blocked at the operator gateway. That is the whole reason this product exists. A missed call is not an SMS: there is no header and no template, so there is nothing to register and nothing to get rejected. You can be verifying real numbers today.
How long does DLT registration actually take?
Entity registration is typically 1–3 working days, header approval 1–3 more, and each template 1–7 — so 3–7 working days when your paperwork is clean, and two to six weeks when it is not. Then every change to your message wording starts a fresh template approval. Teams find us on day two of that wait.
How does this compare to MSG91, 2Factor, SMSCountry or Twilio?
Honestly: on raw price per message, direct-route Indian SMS providers beat us — quality transactional SMS lands around ₹0.10–₹0.20, and Twilio around ₹1.50–₹2.00 once forex and markup are in. We do not claim to be the cheapest per unit and you should not believe anyone in this category who does. What we beat them on is the two things that actually cost you money: the days you spend blocked on DLT before you can ship, and the verifications that never complete because the SMS did not arrive. Use us to launch, and to catch the users SMS loses.
Are there other missed-call verification providers in India?
Yes — Cognalys is the best-known, and there are SMS providers that bolt a missed-call fallback onto their stack. We are not going to pretend we invented the mechanism. What we offer is a two-call API with no SDK, credits that are charged only on success and never expire, no monthly platform fee, and an account that also gives you AI voice calling if you ever need it. Compare us on those, not on novelty.
Why do OTP SMS messages fail to arrive in India?
Four common causes, all outside your code. A template that does not byte-match the registered DLT template gets rejected at the gateway. Carrier spam filters flag traffic from headers with poor reputation. Peak-hour routing bottlenecks on Jio, Airtel and Vi delay delivery during festive or UPI surges. And handset-level filtering and DND settings quietly bin the rest. None of these apply to a live inbound call.
Does it improve completion rate, or just cost?
Completion rate, in the places it matters most. In tier-2 and tier-3 markets — which is most of India — voice coverage is reliable where SMS delivery is not, and a user who has to wait 40 seconds for a code abandons the form. A missed call resolves in about three seconds and needs no data, no balance and nothing to read. That is where the number moves.
Is this secure enough for my app?
For signup, login and lead capture, yes — it is proof of possession at the same practical strength as an SMS OTP, and it removes the two ways SMS codes actually leak: a code readable on a lock screen, and a user reading a code aloud to someone impersonating support. There is no code to read. For authorising a payment, a device change or a regulated KYC step, use it as one factor, not the only one — those flows want an explicit confirmed code with an audit trail. We would rather tell you that than sell you a verification you will regret at audit.
What stops someone spoofing the caller ID?
Layered limits rather than a single claim. We only match 10-digit Indian mobile numbers, so the international routes where spoofing is practical do not resolve to a verifiable number. Each verification is bound to one request with a five-minute window, cannot be replayed, and cannot be read across accounts. Attempts are throttled per number and per key. The residual risk is comparable to SMS, which is spoofable at the SS7 layer in ways most teams never think about.
Do I have to poll, or can you send me a webhook?
Either. Polling the status endpoint is one line and fine for a signup screen the user is watching. If you would rather not poll, set an HTTPS callback URL and we POST the moment a number verifies, with an HMAC over the exact body bytes in the X-MissOTP-Signature header so you can prove the call came from us and detect a replay.
What does it cost, and what am I charged for?
Verified numbers only. A request that is started and never called costs you nothing, because an unanswered request costs us no telephony either. Credits are prepaid, they do not expire, and there is no monthly minimum, platform fee or per-seat charge underneath them. Your first 25 verifications and 5 voice calls are free, once per account, and run against the live line, not a sandbox that behaves differently.
Does my user pay for the missed call?
In practice, no. The call is hung up the instant it reaches us, so it stays a missed call. Your user needs no data, no balance, no WhatsApp and no app — it works on the cheapest feature phone in the market.
How do I integrate it with React Native, Flutter, Laravel or Django?
The same way in all four: two HTTP calls from your server. There is no SDK because an SDK would be longer than the integration, and no native module because nothing needs to touch the handset — you are not reading SMS, so you need no SMS-retriever permission, no Android autofill hash and no App Store justification for a permission you would rather not request. Keep the API key server-side and your client only ever sees a number to display and a request id to poll.
Can I keep my existing SMS provider?
You should. The pattern we recommend is missed call first, your existing SMS underneath as the fallback link — one branch in your code. The faster path takes most of the traffic, your SMS spend drops by that share, and users on whom the missed call fails still get verified. Nothing has to be ripped out to try this.
Is there a sandbox or a free trial?
Issuing your first API key includes free verifications with no card, against the live line. There is deliberately no sandbox: a sandbox that always succeeds teaches you nothing about the flow you are shipping, and every OTP integration that broke in production passed in one.
Does it work for landlines or international numbers?
Indian mobile numbers only, today. We reject anything that is not a valid 10-digit Indian mobile at the start call, rather than letting your user sit waiting for a verification that could never arrive. If you need other countries, tell us which and we will say plainly whether we can serve them.
What happens if the user calls from a different number?
Nothing verifies. The match is on caller ID, so a call from any other handset finds no pending request and is hung up. That is the security property rather than a limitation — it is exactly what proves the user holds the number they typed.
What are your uptime and support commitments?
The verification line runs on the same telephony that carries our AI calling product, so it is not a side project we forget to monitor. Support is WhatsApp and email to people who can read the logs, not a ticket queue. We are a small Indian team and we would rather tell you that than imply a 24/7 NOC we do not have.

Miss OTP for developers

Phone verification questions developers ask

12questions, answered without a sales call. Where an answer is “that part is on you”, we say so.

How do I add phone number verification to a Lovable, Bolt, v0 or Replit app?
Use Miss OTP by NaCaller, which takes two HTTP calls and needs no SDK. Your user types their number, and your server sends POST https://api.nacaller.com/api/verify/start with { "phone": "<10-digit mobile>" } and your API key as a Bearer token. The response has a requestId and a callNumber. Your screen then says "Give a missed call to <callNumber>". Your server polls GET https://api.nacaller.com/api/verify/status/<requestId> until verified is true, or waits for our webhook. Keep the key out of browser code. Put both calls in a server-side function, such as a Supabase Edge Function in a Lovable or Bolt project, an API route in a v0 or Next.js app, or the backend of a Replit project.
How do I add phone OTP verification to a Next.js app?
With Miss OTP by NaCaller, add two route handlers and store your key in an environment variable such as NACALLER_KEY. The first, app/api/verify/start/route.ts, forwards the phone number to POST https://api.nacaller.com/api/verify/start and returns requestId and callNumber to the page. The second, app/api/verify/status/[id]/route.ts, calls GET https://api.nacaller.com/api/verify/status/<id>. The page shows the number to ring and checks the status route every two seconds. When it gets verified: true, it marks the number verified in your own users table. The same two server calls work from React Native, Flutter or any mobile app's backend. Nothing runs on the handset, so you need no SMS permissions.
What should I tell Cursor, Claude Code or Copilot to add missed call verification?
You can paste a prompt like this one: "Add phone verification with Miss OTP by NaCaller. Server side only, with the key in NACALLER_KEY. POST https://api.nacaller.com/api/verify/start with JSON { phone } and header Authorization: Bearer <key>. It returns requestId, callNumber, expiresIn and an instruction string. Show the user callNumber and ask them to give a missed call from the number they entered. Poll GET https://api.nacaller.com/api/verify/status/{requestId} every 2 seconds until status is 'verified' or 'expired'. Handle HTTP 400 (not a valid Indian mobile), 402 (out of credits) and 429 (too many attempts)." A pending request lasts five minutes, so show a retry button once status comes back as expired.
How do I verify phone numbers in India without DLT registration?
Don't send an SMS. Verify with a call the user places. Miss OTP by NaCaller asks your user to give a missed call to a number the API returns, then matches the caller ID the telephone network passes to us against your pending request. No message is sent, so there is no sender header, SMS template or DLT entity to register, and you can verify real numbers as soon as you have an API key. DLT rules still apply to any SMS you also send, so you can add SMS later as a fallback once your registration comes through.
Is there an alternative to Firebase phone auth for Indian numbers?
Miss OTP by NaCaller verifies an Indian mobile number with a missed call instead of an SMS code. The user rings the number your app shows, and the API reports the number as verified. It is a verification step, not a full auth system. It tells your server "this user holds this number", and then you create the session or set the flag in your own database, or in the auth system you already use. Because nothing is sent to the phone, there is no SMS to be delayed or filtered, and your app needs no SMS-reading permission. It works only for Indian mobile numbers, so it suits apps whose users are in India.
Is there an alternative to Twilio Verify or MSG91 for OTP in India?
For Indian mobile numbers, Miss OTP by NaCaller verifies with a missed call instead of an SMS code, so you have no DLT registration or template approval to finish before launch. It is a plain REST API: POST /start, then GET /status or a signed webhook. Existing code that sends a number and waits for a verdict maps across in one small change. If some of your users can't place a call, NaCaller Voice OTP uses the same API and key to ring the user and read out a code. You can also keep your current SMS provider as a fallback rather than removing it.
How much does missed call OTP verification cost per number?
Miss OTP by NaCaller costs between ₹0.10 and ₹0.20 per verified number, depending on the prepaid pack. The Starter pack is ₹199 for 1,000 verifications (₹0.20 each), and the Scale pack is ₹9,999 for 1,00,000 (₹0.10 each). You are charged one credit only when a number actually verifies. A request nobody rings, or one that expires, costs nothing. Credits do not expire, there is no monthly fee, and GST is added.
Can a user be tricked into sharing a missed call verification like an OTP code?
Not in the same way. With Miss OTP by NaCaller there is no code, so there is nothing for a scammer to ask the user to read out, forward or type into a fake page. Proof comes from the call itself: the caller ID the telephone network passes to us has to match the number your user entered, within a five-minute window. It is not stronger than every attack. Caller ID can be spoofed on some routes, which is why only 10-digit Indian mobile numbers are accepted, and a SIM-swapped number would pass, just as it passes an SMS OTP. Use it for signup, login and lead checks, and add a second factor for payments or account recovery.
How do I verify the Miss OTP webhook signature?
When a number verifies, Miss OTP by NaCaller sends a POST to the callback URL you set in your dashboard. The JSON body contains event "verification.verified", requestId, phone, reference, verifiedAt and a millisecond timestamp. The X-MissOTP-Signature header is a hex HMAC-SHA256 of the raw request body, keyed with your webhook secret. Compute it over the exact bytes you received, before any JSON parsing, and compare the two with a constant-time function such as crypto.timingSafeEqual in Node. The timestamp is inside the signed body, so you can reject stale deliveries to block replays. Poll the status endpoint if you would rather not expose a webhook URL.
What if my user can't give a missed call?
Offer "Get a call instead". NaCaller Voice OTP uses the same API and key as Miss OTP by NaCaller. Start the verification with method "voice" and we ring the user and read a 6-digit code aloud, twice. The user types it into your app. This covers users who can't place outgoing calls, for example with no outgoing balance, and anyone uncomfortable dialling an unknown number. A good pattern is missed call as the default and the voice call behind a small link, so most verifications take the cheaper, code-free path.
Is there a free phone number verification API I can test in India?
Yes. Miss OTP by NaCaller gives you 25 free verifications and 5 free voice calls per account, with your first API key and no card required. They run on the live verification line with real calls from real phones, so what you test is what ships. There is no sandbox mode. After the free verifications, prepaid packs start at ₹199.
What does the Miss OTP start endpoint return, and what errors can it send?
POST https://api.nacaller.com/api/verify/start to Miss OTP by NaCaller returns requestId, phone (normalised to 10 digits), callNumber, status "pending", expiresAt, expiresIn (seconds) and a ready-made instruction sentence you can show the user. It accepts an optional reference string, up to 120 characters, that comes back in status responses and webhooks. Errors: 401 for a missing or invalid key, 400 for anything other than a 10-digit Indian mobile starting 6–9, 402 when your credits have run out, and 429 when one number has been started too often (five attempts in ten minutes) or your key sends too many requests. GET /status/{requestId} returns status as "pending", "verified" or "expired", plus verified, verifiedAt and expiresAt.

Voice OTP

Questions about OTP by phone call

11questions, answered without a sales call. Where an answer is “that part is on you”, we say so.

What is voice OTP and how does it work?
With voice OTP, the code is delivered by a phone call instead of an SMS. With NaCaller Voice OTP, your server starts a verification with method "voice". We call the user's Indian mobile number and read a 6-digit code aloud, twice. The user types the code into your app, and your server sends it to the check endpoint to confirm it. The code is valid for 10 minutes and allows up to 5 attempts. The call carries only the code, with no marketing and no menu.
How do I add a "Get a call instead" OTP fallback to my app?
NaCaller Voice OTP is the second method in the Miss OTP API, with the same API key, credits dashboard and webhook. Your default path starts a verification as usual and asks the user to give a missed call. Under it, add a "Get a call instead" link that starts a verification for the same number with method "voice", then shows a 6-digit input. When the user submits the code, your server sends it to the check endpoint and treats a success as verified. It is one extra branch in your code, and users who can place a call never see it.
How much does a voice OTP call cost in India?
NaCaller Voice OTP costs between ₹0.55 and ₹0.70 per answered call, depending on the prepaid pack. The Voice 500 pack is ₹349 for 500 calls (₹0.70 each), and the Voice 50,000 pack is ₹27,499 for 50,000 calls (₹0.55 each). The price is per answered call, not per minute. GST is added.
Am I charged if the user doesn't answer the voice OTP call?
No. NaCaller Voice OTP charges only for calls the user answers. A call that rings out, is declined, or reaches a switched-off phone costs you nothing, because the unanswered call costs us nothing either. You can safely offer a retry without paying for the attempts that never connected.
Which languages does voice OTP support?
NaCaller Voice OTP reads the code in English, Hindi or Telugu. The call carries only a short line and the digits, spoken slowly and read twice, so a user can write them down or type them as they listen. If you need another Indian language, tell us which one.
How long is the voice OTP code, and how long is it valid?
NaCaller Voice OTP reads a 6-digit numeric code, twice on the same call. The verification is valid for 10 minutes from when your server starts it, and the user gets up to 5 attempts to type it correctly before the verification has to be restarted. Your server checks the code through the API, so the code never has to be stored or compared in your own code.
Can banks, NBFCs or other regulated companies use voice OTP?
Not NaCaller Voice OTP, not yet. Entities regulated by RBI, SEBI or IRDAI, such as banks, NBFCs, brokers and insurers, have to place their service and transactional calls, including OTP calls, from TRAI's 1600-series numbers. NaCaller Voice OTP does not call from a 1600-series number today, so it is not suitable for those companies. Unregulated businesses such as marketplaces, delivery, edtech, SaaS and D2C apps can use it.
Do voice OTP calls break TRAI or DND rules?
A NaCaller Voice OTP call is placed because the user asked for it on your screen, and it speaks only the verification code, with no offer, promotion or menu. That makes it a transactional call rather than a promotional one, and DND preferences are aimed at promotional calls. Keep it that way: trigger a call only from a user action such as tapping "Get a call instead", and never use the verification call to carry marketing. Promotional calling has separate rules.
Should I use missed call verification or voice OTP?
Use both, in that order. A missed call with Miss OTP by NaCaller has no code for the user to type or be tricked into sharing, and it costs less per verification. NaCaller Voice OTP covers users who can't place an outgoing call or would rather receive one. Voice OTP costs ₹0.55–₹0.70 per answered call, against ₹0.10–₹0.20 per verified number for a missed call, so making missed call the default keeps most verifications on the cheaper path. Both run on the same API key and webhook.
Can I try voice OTP for free?
Yes. NaCaller Voice OTP includes 5 free answered calls per account, so you can hear the call on your own phone and wire up the code check before buying a pack. These are real calls on the live line, not a simulator. After that, packs start at ₹349 for 500 calls.
Is voice OTP more secure than SMS OTP?
About the same, and it is better to be honest about why. NaCaller Voice OTP still delivers a code, so like any OTP a user can be talked into reading it out to a scammer. It avoids some SMS weaknesses: nothing shows on the lock screen, and nothing sits in an inbox that other apps can read. It is not protected against a SIM-swapped number, and neither is SMS. For the lowest phishing risk, make the missed call the default, because that method has no code at all. Keep voice as the fallback, and add a second factor for payments or account recovery.

Plumbing questions

What connects, what doesn't, and what it costs you to find out

13questions, answered without a sales call. Where an answer is “that part is on you”, we say so.

What do I actually have to build?
One HTTP POST. Your account carries a private webhook URL; send it JSON with a phone number — plus a name and a source if you have them — and you are integrated. There is no SDK, no plugin, no OAuth dance and nothing to install on your website. If your form tool can call a URL, you have already finished.
Do you have a Zapier app I can search for?
No — and you don't need one. Every automation tool has a plain “Webhooks” action that posts JSON to a URL you paste in, and that is what Zapier, Pabbly Connect and Make all use here. It is one step at the end of a Zap, not an app to install or approve.
Can it call my Facebook and Instagram lead ads?
Yes, through an automation tool. Zapier (or Pabbly, or Make) already reads Meta and Instagram Lead Ads; you add our webhook as the final step and the enquiry gets a phone call instead of a place in a spreadsheet. Be clear about what that means: we hold no Meta credentials and are not listed in their app directory, so the connection is only as alive as the automation tool you set it up in.
Which CRMs do you support?
Any CRM that can fire an outbound webhook on a new lead, and any CRM an automation tool can watch. There is no one-click Salesforce or Zoho connector on our side, and we would rather say that plainly than put their logos on this page. If your CRM can do neither of those two things, this integration is not for you today.
How fast does the call actually go out?
While they are still at the screen. The lead is written to your list and the call is queued the moment the request lands — there is no batch job that runs overnight and no list for somebody to work through in the morning. That is the entire point: the person who filled your form has not moved on yet.
What if a lead arrives at two in the morning?
It is saved and queued, not dropped. Every lead source carries a calling window — a start hour, an end hour and your timezone — and a lead that arrives outside those hours is scheduled for the start of the next window instead. The response tells you so, with the reason “queued” and the exact time it will be dialled, so your own logs show what happened rather than going quiet.
How do I know whether the call went out?
The response says so. You get back the lead id and a called flag, and when that flag is false it comes with a reason — the webhook is switched off, no agent has been chosen, or the lead arrived outside your calling window. No silent successes.
What if the same person is submitted twice?
They stay one lead. A repeat submission of a number already on your list updates that lead rather than creating a duplicate, so a customer who fills two forms does not end up on two call lists — and your history for that number stays in one place.
Is the webhook URL a security risk?
Treat it exactly like a password, because it is one: the token in that URL is the only credential, so anyone holding the URL can push leads into your account and queue calls. Don't paste it into a public repo or a shared doc. If it does leak, issue a new URL from your dashboard — the old one stops working immediately.
Can somebody flood it and burn my minutes?
Each URL is rate limited to 30 requests a minute; anything beyond that is rejected outright. Your calling window and your plan's minutes are the other two brakes — and the switch that turns the whole thing off is one click.
What is TalkingWP and is it part of NaCaller?
It is our own website chat and voice assistant, so it connects properly rather than through a middleman. Authorise it once and the leads, appointments, conversations and sites it captures mirror into NaCaller tagged by website. The access is read-only — we cannot delete anything on that side — and disconnecting removes the synced copies from here.
Can I send a whole list this way?
You can, but don't. The webhook is built for one lead the second it appears; a list of two thousand belongs in a CSV or Excel import running as a campaign, where retries, calling windows and pacing are handled for you. Use the webhook for speed, the import for volume.
Which plan do I need for this?
Instant lead calling is set up from the Integrations screen inside your account, and the free tier's 10 minutes are enough to watch a real form submission turn into a real call before you pay anything. Broader API access and outbound webhooks are listed on the Scale plan on our pricing page.
Call meStart free