English
Receiving Zoho SMS Codes for Testing and Business Accounts
To receive a Zoho verification code, order a number for the zoho service in the right country from OTP Route's OTP Gateway, enter it on the Zoho screen, and read the code in the dashboard or collect it by webhook or API polling, from $0.20 per code. Each activation stays open for 20 minutes and is refunded automatically if no SMS arrives.
The situation: a Zoho screen is asking for a mobile number
Teams meet this step in a few predictable ways. An integration developer needs a fresh Zoho account to test an OAuth connection against CRM, Books or Desk. An agency sets up Zoho Mail and Zoho One for a client and does not want an employee's personal phone tied to the admin login. A QA lead has to prove that the sign-up flow behaves the same for a user in Dubai as for one in Sydney. In each case the blocker is the same text message, and the person who needs it rarely has a SIM from the right country in hand.
OTP Route turns that message into something your tooling can request, wait for and read.
Where does Zoho rely on phone verification?
Zoho commonly asks for a mobile number when a new account is created, and it can use SMS as a second factor at sign-in alongside its authenticator app. A verified number is also used for account recovery when a password is lost. Exactly when a code is requested depends on the product, the region of the account and the security settings an administrator has chosen, so build tests that tolerate the prompt appearing or not.
Picking the country for a Zoho number
The zoho service is currently routed in 198 countries. Match the number to the market of the account you are creating or testing, because country affects the dialling code Zoho expects, the language of the message and sometimes which regional data center the account lands in.
Frequently chosen routes include India, the United States, the United Kingdom, the United Arab Emirates, Australia and Germany. Others on the list are Canada, Brazil, Mexico, Singapore, Saudi Arabia, South Africa, the Netherlands, Spain, France, Japan, Indonesia, Malaysia and Kenya. Availability changes through the day, so read it from GET /api/v1/countries when the run starts.
Wiring the Zoho verification code API into your tests
Calls go to https://otproute.com/api/v1 with a Bearer key from the Developer console.
- Fetch the price with
GET /api/v1/prices?country=<id>&service=zoho. - Create the activation:
POST /api/v1/activationswith{"service": "zoho", "country": "<id>"}. - Have your browser automation type the returned number into the Zoho form and request the code.
- Wait for the
activation.sms_receivedevent, keyed on the activation id, at your webhook endpoint.
Two habits make the handler reliable. First, check X-OTPRoute-Signature by computing an HMAC-SHA256 over "<t>.<raw body>" with the endpoint secret, and reject stale timestamps. Second, make the handler idempotent: record the activation id and ignore a repeat delivery, so the code is never submitted twice. If your test runner cannot receive inbound traffic, poll GET /api/v1/activations/{id} instead and stay below 300 requests per minute. The webhook capture guide shows both patterns.
Doing it by hand in the dashboard
For one-off setups, open the OTP Gateway, pick Zoho, choose the country, check the displayed price and confirm. Copy the number into Zoho, press the button that sends the code, and keep the activation open. The code appears on screen when it lands. You have 20 minutes; if nothing comes, or you cancel, the full amount returns to your wallet.
Why a Zoho OTP may not arrive
A missing code usually has an ordinary cause:
- Zoho may decline virtual numbers for some regions or account types. That is its decision, and it is the reason refunds are automatic.
- The route for that country may be congested at that moment. Retry later or with another country that fits the test.
- Repeated requests from one browser session can be rate limited by Zoho itself, so space out attempts.
- Ordering new activations in a tight loop does not help and eats into your API budget.
Let the window expire before concluding that a route has failed.
When a Dedicated Number is the better choice
A one-time activation is right for creating and testing accounts. It is the wrong tool for an admin login that will challenge you for SMS again next month, because that number will not be yours later. For that case, a Dedicated Number from $1.95/month gives you a US or Canadian line you keep while it renews, with inbound SMS in the dashboard and forwarded to your webhook. Dedicated lines are offered only in those two countries. Read more on virtual numbers.
Using Zoho numbers responsibly
Follow Zoho's terms. Create one account per real person or business, and use OTP Route to test and operate your own legitimate products and client accounts, never to mass-produce sign-ups. OTP Route is not affiliated with Zoho, whose name is a trademark of its owner, and the Acceptable Use Policy applies to every activation. Agencies managing several clients can read the agencies solution page.
Frequently asked questions
How do I receive a Zoho OTP through an API?
Create an activation with service id zoho and your chosen country, then read the code from the activation.sms_received webhook or by polling the activation.
Can I use a virtual number for Zoho SMS verification for testing?
Often yes, but Zoho may refuse virtual numbers in some cases. If no code arrives within 20 minutes, the charge is refunded.
How much does a Zoho phone number for one code cost?
From $0.20 per code. The live price per country is returned by the prices endpoint and shown in the dashboard.
Which country should I choose for a Zoho test account?
Choose the country of the user or market you are testing, so the dialling code and message language match the real case.
Can I keep the same number for future Zoho logins?
Not with a one-time activation. A US or Canadian Dedicated Number is the option for an account that must verify again later.
Can I test the flow without spending wallet funds?
Yes. A development account can be switched to sandbox on request, which returns simulated numbers and codes. See the docs for details.
Service names are trademarks of their respective owners. OTP Route is not affiliated with them. Use numbers lawfully, follow each service's terms and our Acceptable Use Policy.