Hi Everyone!
Verifying customer information is critical in business to filter out junk data and spammers. Whether it’s lead generation, appointment booking, or any other operation, ensuring quality data is essential for driving meaningful outcomes. A verified mobile number stands out as a dependable source of high-quality data. When automating processes with chatbots, you can enhance data quality by adding mobile number verification through OTP (One-Time Password)
We’ve developed a
plug script that verifies customer mobile numbers using OTP (One-Time Password) integrated with
Twilio. You can add this to your
Codeless bot builder to make your bot smarter, your processes smoother, and your data more reliable.
Overview of verifying the mobile number with OTP:
We need two Plugs:
- Plug 1 - Generate & send OTP to the mobile number:
- Plug 2 - Verify the OTP
Plug 1- Generate & send OTP to the mobile number:
- Open SalesIQ, navigate to Settings > Developers > Plugs > Add.
- Give a name, description for the plug. Select the Platform as Scripts, and click on Create Plug.
- The first step in building the plug is defining the parameters. Click on the parameters on top and declare the following.
Input Parameter
- Name : phone | Type : Phone
Output Parameter
- Name : status | Type : String
- Name : otp | Type : Number
Copy the code below and paste it into your plug builder. Then, make the following changes
- In line #8, replace your account_sid (Navigate to the Twilio > Select your account > Account info > copy the Account SID)
- In line #12, the auth token (Navigate to the Twilio > Select your account > Account info > copy the Live/Test credential)
- In line #19, replace your Twilio phone number.
- response = Map();
- phone = session.get("phone").get("value").remove(" ");
- //Generate OTP
- otp = randomNumber(1000,9999);
- //Message body
- body = "Your OTP for Zylker is " + otp;
- //Navigate to your Twilio profile > Account > API Keys & Tokens > copy the Account SID
- account_sid = "ACa988e5ee589d4c827439d1";
- url = "https://api.twilio.com/2010-04-01/Accounts/" + account_sid + "/Messages.json";
- //To get auth token, Navigate to your Twilio profile > Account > API Keys & Tokens > copy the Account SID and Auth token.
- //auth = "<Account SID>:<Auth token>"
- auth = account_sid + ":e67e8be6805u8jc717cbd6a6a0";
- auth_encoded = zoho.encryption.base64Encode(auth);
- headers = Map();
- headers.put("Authorization","Basic " + auth_encoded);
- params = Map();
- params.put("To",phone);
- //Replace your Twilio number
- params.put("From","+14173879299");
- params.put("Body",body);
- response = postUrl(url,params,headers);
- status = response.get("status");
- if(status == "delivery_unknown" || status == "undelivered" || status == "failed")
- {
- sms = "failed";
- }
- else
- {
- sms = "success";
- }
- info response;
- response.put("status",sms);
- response.put("otp",otp);
- return response;
Then, click Save, preview the plug, and Publish it.
Plug 2 - Verify the OTP
- Open SalesIQ, navigate to Settings > Developers > Plugs > Add.
- Give a name, description for the plug. Select the Platform as Scripts, and click on Create Plug.
- Click on parameters and declear the following.
Input Parameter
- Name : systemotp | Type : Number
- Name : visitorotp | Type : Number
Output Parameter
- Name : otpstatus | Type : String
Copy the code below and paste it into your plug builder
- response = Map();
- systemotp = session.get("systemotp").get("value");
- visitorotp = session.get("visitorotp").get("value");
- if(systemotp == visitorotp)
- {
- otp_status = "OTP verification successful";
- }
- response = Map();
- response.put("otpstatus",otp_status);
- return response;
Then, click Save, preview the plug and Publish it.
Note : Only published Plugs will be listed in Codeless Bot Builder.
How to add Plugs to the Codeless bot builder?
Collect the Visitor's Phone Number
- Use the Phone Card to get the visitor's phone number.
Generate and Send OTP
- Configure Plug 1 to generate and send a unique OTP to the visitor:
- Under Action Cards, select the Plugs Card and choose Plug 1.
- Choose Phone as the input (context variable).
- Get the OTP and its status as outputs, saving them in the bot context as system_otp and otp_status, respectively.
- Click Save to store the configuration.
Check OTP Delivery Status
- Add a Criteria Router Card to verify if the OTP was successfully sent:
- In the Plug Success Flow, add a Criteria Router Card.
- Create a rule: For a flow OTP sending failed flow by setting the context variable otp_status returning "failed" (OTP failed).
- The Not Matched Flow represents successful OTP delivery to the visitor.
Handle OTP Input from Visitor
- In the Not Matched Flow of the Criteria Router:
- Use a Visitor Fields Card to collect the OTP entered by the visitor.
- Save the visitor's input in a context variable (visitor_otp).
Verify OTP
- Use Plug 2 to compare the generated OTP (system_otp) and the visitor-provided OTP (visitor_otp):
- Provide both OTPs as inputs to Plug 2.
- Assign a variable to save the verification result.
Next Steps Based on OTP Verification
- If OTP verification succeeds: Proceed with the next flow.
- If OTP verification fails: Prompt the visitor to re-enter the OTP and repeat the verification process using the button card.
I hope this was helpful. Please feel free to comment if you have any questions. I'll be happy to help you.
Best regards
Sasidar | Zoho SalesIQ
Recent Topics
Zoho ERP | Product updates | June 2026
Hello users, We launched Zoho ERP on January 23, and since then, our goal has been to help businesses streamline and manage their operations with greater efficiency, flexibility, and control. Since the launch, we've continued to enhance the platform every
Integration problem between zoho crm and zoho forms for an update in zcrm, with two mapped custom fields
Hello everyone, I need to correct an existing integration between Zoho CRM and Zoho Forms: the use case is that a user needs to send an email to a contact, who will click on a button in this email, redirecting to a Zoho Forms. The contact can update or
Marketing Tip #40: Build trust by adding a contact option on every page
Customers are more likely to buy when they know help is easy to reach. A visible contact option like chat, email, or a contact form, reassures shoppers that there’s a real team behind the store and that support is available if they need it. This is especially
WhatsApp Campaign not appearing in Zoho Marketing Automation data import
I'm setting up data import from Zoho Marketing Automation into Zoho Analytics, but WhatsApp is missing from the available modules. I can see Journeys, Email Campaigns, SMS Campaigns, Users, Lists, and Leads but no WhatsApp Campaign option.
Ticket Status Colors
Hi everyone, In Zoho Desk, I’m trying to assign colors to my Ticket Status values, but I do not see any option in the admin panel to do this. Right now, they all show as plain black text. Where can I change the color for each Ticket Status? Or is this
【無料/オンライン】7/22開催|Zoho ワークアウト|ユーザー同士で学び合うオンラインもくもく会
ユーザーの皆さま、こんにちは。 コミュニティグループの中野です。 7月開催の「Zoho ワークアウト」のご案内です。 本イベントは、Zohoユーザー同士で交流しながら、 設定・検証・運用改善を進めるオンラインの「もくもく会」です。 「設定を進めたいけれど、一人だと手が止まってしまう」 「他社がどう活用しているのか知りたい」 「同じ課題を抱える仲間と話したい」 そんな方にぴったりのイベントです。 ▶︎ 参加登録はこちら(無料 ) URL:https://us02web.zoom.us/meeting/register/t7lA28wlQceRW6sZpeFEhQ
ScreenPop > Ticket integration?
I'd like a way for my agents to operate this way: 1) Incoming call activates a ScreenPop. 2) If phone number matches a number in the database and any tickets exist for that company, show those ticket references (links) in the ScreenPop, allowing the agent
Deleting unwanted ticket replies
Hello, In a Zoho Desk Ticket thread, sometimes one of the recipients has auto-reply activated. This creates a new message in the Ticket thread that not only pollutes the thread, but most importantly cannot be replied properly because usually auto-reply e-mails don't do "reply all", so the other recipients are not included. I want to delete such a message in the Ticket thread. I searched the help of Zoho Desk, but only found a way to mark as Spam (https://help.zoho.com/portal/kb/articles/marking-support-tickets-as-spam)
Creating packages according to actual shipping processes
Hi community. I would like to ask a question to see if there's a better method or workflow for the creation of packages in Zoho Inventory. There is a little confusion in some of Zoho's language relating to the use of term Packing Slip when connected to
i cant renew my domain bfftube.cloudns.cc
i cant renew my domain bfftube.cloudns.cc because its a free subdomain from cloudns and you cant renew it its always active can some fix this becasue again there is no way to renew it becasue its free subdomain and again its always active
Add conditional statements to insert or not clause or text according to dynamic CRM fields
Hello, I would like to contsruct my contracts dynamically with conditional statements (IF, ELSE, etc) For example, according to specific CRM dynamic fields, I want to insert or not some clauses or text Would it be possible to add that feature? Best
Client Script actions on related list change
Hey all! We have our calls automatically logging into our deals module through some custom functions. Looks like by default, the calls are related to the contact and not the deal. We have made some workflow rules and functions to have the calls automatically
Migrating my Yahoo Mail to Zoho
Hi. I'm new to Zoho, having come over from the blighted Yahoo. I've signed up for the free webmail but I notice there's no web-based migration in this version. Would I be able to upgrade as an individual, in order to be able to migrate my emails from Yahoo. There's well over a decade of emails, so I'd probably appreciate the extra space too. TIA
Application-Level Save copy of sent emails
It would be really helpful to be able to turn on/off the Save copy of sent emails at a per application level, so some applications can save in the sent folder and others don't.
Cookies Consent Management in Webforms
Hello Everyone! We are excited to introduce Cookie Consent Management for webforms. Read on to learn more. Webforms are online forms embedded on websites that allow users to submit data and create records in Zoho CRM. These forms utilize cookies to track
Urgent Escalation Request - Severe Performance Issues and Errors in Zoho Desk
Hi, I am experiencing a serious issue with my Zoho Desk account. Since Sunday, we have been encountering error messages such as "Unable to process your request" when attempting to open new tickets or update information in existing tickets. In addition
Sortie de Zoho TABLE ??
Bonjour, Depuis bientôt 2 ans l'application zoho table est sortie en dehors de l'UE ? Depuis un an elle est annoncée en Europe Mais en vrai, c'est pour quand exactement ??
Suggestion: A Next-Generation Video Platform for the Zoho Ecosystem
Dear Zoho Team, I hope you are doing well. I would like to share an idea that I believe could become a major addition to the Zoho ecosystem. Just as Google has YouTube, I believe Zoho could build its own video-sharing platform. It could offer familiar
Can't Figure out Books and level 2 payment data
Hello, I am having trouble figuring out how to collect level 2 payment data as required by my payment gateway. Last month it cost us almost $5000 in fees because of this. We are invoicing our clients with books and they pay through the link in that email
Invoice template with sales tax totals
Hi everyone, I am trying to edit my invoice template so that only the total sales tax collected for my tax group shows up. Right now, under by sub total, each individual tax shows up and that takes up a lot of unnessary space, so I just want the one
Why is the ability Customize Calls module so limited?
Why can't I add additional sections? why can't I add other field types than the very limited subset that zoho allows? Why can I only add fields to the outbound/inbound call sections and not to the Call Information section?
Getting an error when trying to use the Zoho Desk Resources with our Zobot chat
Hello, When I try to set our Zobot AI Card Training to Zoho Desk resources I get an error when testing it and it bypasses the bot completely. When I try to switch it to the Zoho SalesIQ resources option in there it will list some articles but not give
Kaizen 249: Build an AI Room Recommendation Assistant with CRM Widgets, Catalyst, and Zia Agent
Welcome to another week of Kaizen! This Kaizen post is inspired in part by Zoho CRM’s hospitality use-case article, which presents a broader AI-powered CRM approach for guest personalization and hotel operations. That use case spans additional scenarios
Issue with Zoho Assist Unattendend Agents Showing Offline
Hello! I noticed that a large number of my unattended devices began showing as Offline earlier this morning (around 745am Mountain time). I checked the Zoho Assist status page but it's not showing any outages. The issue seems to be randomly occurring
Access millions of Unsplash photos directly from the Theme Builder
Hello form builders, We're excited to introduce a new enhancement to the Zoho Forms Theme Builder. You can now browse and apply millions of high-quality images from Unsplash without leaving the Theme Builder. There's no need to download images, switch
Increase the Field Instructions Character Limit
Hi, I would like to be able to write longer instructions, today I have to then add a Description field which is then not close to the field like the Instructions are, so doesnt look correct. Thanks Dan
Automate agreement workflows with Zoho Sign and Zoho MCP
Hi everyone, We're excited to announce support for Zoho Sign in Zoho MCP. With Zoho Sign's MCP server, you can connect Zoho Sign to Claude, Cursor, Windsurf, GitHub Copilot, or any MCP client of your choice and handle your entire signing workflow using
Microsoft Teams now available as an online meeting provider
Hello everyone, We're pleased to announce that Zoho CRM now supports Microsoft Teams as an online meeting provider—alongside the other providers already available. Admins can enable Microsoft Teams directly from the Preferences tab under the Meetings
Digest Juin - Un résumé de ce qui s'est passé le mois dernier sur Community
Bonjour chers utilisateurs, Alors que l'été vient d'arriver profitez-en pour découvrir les échanges les plus enrichissants de notre Communauté. Astuces pratiques, nouveautés produits, conseils d'experts et bonnes pratiques : voici un aperçu des sujets
Caso de éxito: cómo GarantíaYa redujo un 30% su tiempo operativo gracias al ecosistema Zoho
"Zoho no solo sostiene nuestros procesos: los define. Cada particularidad de nuestro negocio está modelada dentro del sistema." Nicolás Natiello Mallo, Director de Tecnología en GarantíaYa GarantíaYa, empresa especializada en garantías de alquiler con
[idea] when attaching a zoho show presentation to an email, allow choosing format
There are 2 constraints when trying to attach a zoho show presentation directly into a message in zoho mail as an ATTACHMENT: 1. the file must have download permission 2. it is exported as a PPT However, there are times when it is important for me sending
Analysing Zoho Campaigns Automation Workflows in Zoho Analytics
Hello, We have started to use the Automation - Workflows functionality within Zoho Campaigns to nurture our Zoho CRM Leads. For example: When a new Lead meeting certain criteria is created in Zoho CRM, it is added to a Segment within Zoho Campaigns. Upon
Shared Mailbox: Collaborate and manage team emails efficiently in Zoho Mail
Shared Mailbox: Collaborate and manage team emails efficiently in Zoho Mail When multiple teams share responsibility for a common email address, like support@org.com, info@org.com, or billing@org.com, managing replies individually leads to duplication,
Admin unable to view "Seen By" / post viewer list for posts they didn't author
Hi Connect team, We're trying to measure engagement on Zoho Connect (specifically who is viewing posts) as part of an internal analytics exercise. I've found that the per-post "Seen By" export (via exportStreamUniqueUsers.do) only works for posts I personally
Introducing the Employee Portal for internal job posting
Employee referrals and internal applications are one of the most trusted hiring channels. But in many organizations, employees only hear about openings through messages, word of mouth, or after the role has already been open for a while. When employees
What's new in Zoho Social - Q2 recap
Hello everyone, We’ve rolled out a bunch of updates in Q2, and we’re excited to walk you through them. Here’s a quick look at everything we released in April, May, and June to help you manage your social media presence more effectively. Threads updates
Data Discrepancy Between Zoho Chart
Hi, I am doing the CRM lead analytics using the Standard Funnel chart. I notice the total summary given by the standard funnel chart does not match with my bar chart or line chart using the same criteria. Its even not matching with my data in the leads
Announcing new features in Trident for Windows (v.1.42.5.0)
Hello Community! This release includes a collection of enhancements and feature updates aimed at making your email experience smoother. Let’s dive into what’s new! Forward emails as attachments. Previously, you could forward emails as an attachment only
Admin Logging in as another User
How can a Super Admin login as another user. For example, I have a sales rep that is having issues with their Accounts and I want to view their Zoho Account with out having to do a GTM and sharing screens. Latest Update (27th April 2026): With the early
Sending to multiple people but only require one signature
Does Zoho Sign have the functionality to send a document to multiple people and only requiring one individual to sign? DocuSign has Signing Groups that lets you send documents to a group of people, where any member of that group can open and act on the
Next Page