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
Export as MP4 or GIF
Hi, Just wondering if there's a way to export/convert a presentation to an MP4 video file or even a GIF. One use case would be to use the animation functionality to create social media graphics/charts/gifs/videos. Thanks for a great tool... Rgds Jon
Stage Transition Rules prevent moving deals to other pipelines
I have rules in place when moving deals to lost or win to ensure some particular fields are updated to ensure accuracy. However these rules are preventing me from moving deals to other pipelines. I'm having to delete the rules, move deals, then set rules
Can't send email using template. Email address has been blocked error.
Hi. I'm setting up a new Zoho CRM account and doing our first customizations. While testing the email templates to use during blueprint transitions, I always get this error: "Sorry! Email address has been blocked." Any ideas? Thanks. Bruno
unify organisation management
As I am exploring different Zoho products (such as Workplace, CRM, Books, Contracts, Projects), I am noticing that there is no unified and streamlined organisation management. You can define different parameters for the same organisation (e.g. base currency)
Cannot Send Outgoing Mails on TeamInbox Reason:554 5.1.8
Hello, I am receiving this error when trying to send emails from TeamInbox: Error while processing the request! Unable to send message;Reason:554 5.1.8 Email Could not be delivered for policy reasons. Does anyone know how I can solve this issue? Thank
Bring more clarity to your blueprints with color-coded transitions
As your hiring processes evolve, blueprints naturally become more detailed. When multiple transitions connect different stages, it can take extra effort to identify approvals, rejections, reviews, and other actions at a glance. With this enhancement,
MARKED AS SOLVED BUT ISN'T SOLVED - Unable to Send Outgoing Messages in Android Cliq App
Every time when an outgoing message in the android cliq app is sent it will look like it successfully sent, but when you check the message it just has an error exclamation point icon next it and has option to resend or delete the message. When the resend
Canvas and calendar
Is it possible to have a canvas view that shows say a contacts details with the meetings calendar on the same page?
Free webinar: Zoho Sign in Q2 2026 - A quick walkthrough
Hi there, The second quarter of 2026 has flown by, and the Zoho Sign team has been hard at work releasing features to enhance how you send, sign, and manage documents. Join us for our upcoming webinar, where we'll discuss what's new and what's to come.
Zoho Marketing Automation WhatsApp Campaign Import Sync for Zoho Analytics
WhatsApp is a critical channel in modern marketing, yet WhatsApp Campaign metrics from Zoho Marketing Automation currently cannot be natively imported into Zoho Analytics via the default advanced analytics connector. Integrating this into the standard
【Zoho CRM】アップデートのお知らせ:ミラー要素
ユーザーの皆さま、こんにちは。コミュニティグループの中野です。 Zoho CRMに新しいフィールド機能「ミラーの要素」が追加されましたのでご紹介します。 これにより、別タブにある項目の値をリアルタイムで表示できるようになりました。 目次 1. ミラーの要素とは 2. ミラーの要素とルックアップ項目の連動項目の比較 ― どちらをいつ使うべきか 3. 適用範囲と制限事項 1. ミラーの要素とは これまで、別タブにある項目の値を引っ張ってくるには、カスタム関数やワークフローを使った値の更新が必要でした。
Generate payment links to collect your payments from Android
Hello everyone! We're happy to announce that users can now generate payment links from their Bigin mobile app to collect payments from customers. This will help them manage their payments more efficiently, as payment records are linked to the pipeline
Introducing the Image Slider field: Multiple images, one clean carousel
Hey everyone, Some context is best communicated visually. When you are offering a service, a written description rarely does enough work on its own. People want to see what they are signing up for before they book or pay. When you are selling a product
Online PDF Editor
Hello Team, There is a small glitch i found when i was using your online software called "PDF Editor", There is a menu bar on right side comes when we click on 3 dots for any pdf, but that entire menu has no options to choose, that is totally blank, please
How to migrate emails from Amazon Work Mail?
Hi, I've an account with Amazon Work Mail, I'd like to migrate emails from Amazon Work Mail to Zoho Mail. Can you guide me? Regards, Mahendran
IP Address List > Sigma
We have developed a ZohoCRM extension that utilizes API calls to our server from Deluge scripts and Widgets. Our API server has IP restrictions in place. To ensure successful communication, we require a list of IP addresses utilized by Zoho's platform
steps and options to change Domain DNS/Nameservers settings
Please share the options or steps to change Domain DNS/Nameservers settings
Zoho Contacts *Web Interface Does Not Load* (Tested in Firefox, Safari)
The error shown in the console is: The resource from “https://static.zohocdn.com/zmail/zm/newContactsChange11/js/main.js” was blocked due to MIME type (“application/json”) mismatch (X-Content-Type-Options: nosniff). This should be fairly self-explanatory,
Product sorting in Zoho Commerce - how can I influence standard behaviour?
Hello Zoho, I want to sort my products by e.g. name, SKU (Ascending / Descending) or by another attribute. I could neither find any solution in the settings, nor an entry in this help. Can you advice how this would work? Seems the standard sorting is
Journey vs Campaign Confusions
Hi there! I hope you're all doing great! I'm new to the Zoho MA and I'm confused between Journey and Campaigns. I'm not sure if these two work together or not. I hope you can enlighten me. What I'm trying to do is setting up a Newsletter. 1. We have a
Survey questions inside email template
We have a Net Promoter Score survey. It is 3 questions only. When the deal is closed we need to send an email to a customer asking them these 3 questions. Currently, the only option I can find is to give a customer a link to survey. What we need is to
No DINAR (Serbia) in currency list
There is no Serbian Dinar listed in the currency list. Dinar is available in Books, Inventory, CRM, FSM. Please make it available in Desk as well. Without it, the integration with other apps is not possible.
#18 Money in the Bank Doesn't Mean Your Books Are Upto Date
Many businesses have experienced this. A customer transfers the payment. You check your bank account and see the money has arrived. A week later, while reviewing outstanding invoices, you realize the same invoice is still marked "Unpaid." The payment
"Print" option of GET Expense Report API not working
Hello! I have been trying to use the "print" option of the GET Expense Report API but it seems the option does not alter the output. Is there an issue with the API or am I using it wrong? Here's my request code, in Deluge: response = invokeurl [ url :"https://www.zohoapis.com/expense/v1/expensereports/"
Enhance form structure with the Heading field
Hello form builders, A form without structure creates cognitive load. When respondents can see where one section ends and where another begins, they move through the form with less friction and more confidence. This is the reason we have introduced Heading
Canva Integration
Hello! As many marketing departments are streamlining their teams, many have begun utilizing Canva for all design mockups and approvals prior to its integration into Marketing automation software. While Zoho Social has this integration already accomplished,
Zoho Books - Feature Request - Improve Online Payment Badges
Hi Finanace Suite Team, I use Stripe to facilitate online payments and I often have customers who don't notice the online payment option on the invoice. The below example shows how a stripe payment link appears on the invoice. In this example you can
Allow customers to choose meeting venue and meeting duration on booking page
My business primarily involves one-to-one meetings with my clients. Given the hybrid-work world we now find ourselves in, these meetings can take several forms (which I think of as the meeting "venue"): In-person Zoom Phone call I currently handle these
Improved configuration experience for Zia AI features
Hello everyone, Zia, the AI assistant built in to Zoho Creator, powers a range of capabilities—from generating forms and suggesting fields to writing Deluge scripts and running AI agents—that help you build applications faster. Until now, configuring
Cdata - Looker Studio Community Connector Error to Zoho CRM
Hi! Has anyone encountered the error message below when trying to connect to Zoho CRM from Looker Studio, and found a solution? I opened a ticket wih CData but didn't hear back.
Can I add Conditional merge tags on my Templates?
Hi I was wondering if I can use Conditional Mail Merge tags inside my Email templates/Quotes etc within the CRM? In spanish and in our business we use gender and academic degree salutations , ie: Dr., Dra., Sr., Srta., so the beginning of an email / letter
Zoho CRM v2.1 deprecation or sunset plans ?
Hi Team Wanted to know if there is any plan to deprecate v2.1 CRM apis https://www.zoho.com/crm/developer/docs/api/v2.1/ and if yes by when
i cant able to transfer data
i cant able to transfer all data in folders (multiple data) from ONEDRIVE Microsoft to the ZOHO work drive. Each time I can only send 1 file. like 1 photo, 1 audio. It's not very useful for me. Please give me a solution to upload multiple files at a
How many Zoho Sales IQ do I need?
Hello, We are a SME currently moving from Hubspot to Zoho. We are already using Zoho books and CRM, I am wondering how many ZohoSalesIQ account do I need? We mostly need to track our website users, no need for chatbot or anything. I am thinking to buy
Email Password Reset - Vishal & shaik Vali Babu
Hi Team, The below-mentioned employees are unable to log in to their Gmail due to a password error. Kindly look into this on priority vishal.r@jumbotail.com shaik.babu@jumbotail.com
Where can I find the best mail backup tool for Windows?
Later this evening I found Mail Backup Tool in google. Actually I was looking for a solution to download/save emails to my local drive. As I had plenty of important data stored in my email account. So i was not in a mood to take this thing lightly. This made me curious to found any software which can help me to backup my data to hard drive. Then I found the above application which was like a gem. A complete email backup solution for Zoho Mail, Gmail, Yahoo Mail, Office 365 and more than 40+ email
Zoho Desk data sync shows repeated “temporary error” after successful syncs
Hi everyone, we are currently using Zoho Analytics with a data synchronization from Zoho Desk. In the synchronization history, I can see a repeating pattern: the sync runs successfully, but shortly after that, another sync entry fails with the message:
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
Next Page