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
Adding Images to a Quote in Zoho CRM
We are currently preparing to use Quotes in Zoho CRM and we are building out our Quote templates. We came across an issue of not being to add Images of the products to the Quote - specifically in the body of the Quote templates. This is a problem,
Choose Component for User Filter
This filter in the Choose Component for User Filter would be better if had an Order or Group by function. Also, the Specify the default filter values: is very confusing and limiting.
Preventing auto-redirect to Parent Record on Save...
Our users often create records from the related list on th left side of the screen. They click the blue "plus" button to create the record. This is handy, but for some modules, or situations, they would like to remain on the record AFTER clicking "Save",
Uplifted homepage experience
Editions: All editions. Availability update: 17th February 2026: All editions in the CA and SA DC | JP DC (Free, Standard and Professional editions) 23 February 2026: JP (All Editions) | AU, CN (Free, Standard, Professional editions) 27 February 2026:
Zoho Desk - Event Calendar View
Hi Desk team, Are there any plans to introduce a calendar or timeline view for Events in Zoho Desk? It would be very helpful if we could see Events visually in a calendar and/or timeline. This is very helpful when desk side support activities need to
Re-Apply SLA When Ticket Reopened from Closed Status?
If you have an SLA applied, timers are deactivated when going to "On Hold" status type and reactivated when going back to an Open status type. What we discovered is when a customer replies to a closed case and it reopens, the SLA is not applied and timers
Option to Delete Chats in IM
Currently, there is no option to delete any chats in IM, regardless of their source.
Is it possible to make tags "required"
We would like to be able to make the tag field a requirement for agents before they can close a ticket. This would help with monthly reporting, where a lot of tickets end up with no tag, causing manual work to go back and add the correct tag for each
Showing the map along with mileage expense
When you use the GPS to track mileage, it shows you the map of the actual path travelled. It would be very useful and practical to save that map with the mileage expense, so that when the report is created, it provides a map of each mileage expense associated
ID:2406331
Hello, I have sent the form (ID:2406331) but no answer after two days. This is a paid subscription, I am not allowed to use the eighth paid slot of 50GB email space anymore, only 7 are being used. Is anyone going to help me please so I can use the eighth
CRM x WorkDrive: File storage for new CRM signups is now powered by WorkDrive
Availability Editions: All DCs: All Release plan: Released for new signups in all DCs. It will be enabled for existing users in a phased manner in the upcoming months. Help documentation: Documents in Zoho CRM Manage folders in Documents tab Manage files
Approval Workflow for Purchase Orders Abrir
The requirement is , that all purchase orders greater than or equal to 5000 go through an approval process from certain people, but within books I only see that the approvers can be by levels or any approver but we cannot enter a rule like these. Can
I would like to know wich person viewed the file
I have a franchise and my Operative Manual is in WorkdriveI, the user can´t download but despite I know How many views the file had, I would like to know wich person viewed the file Is it possible? thank you
Transaction Rule Matching
Q1. Is there a method to have the Transaction Rules applied across multiple Bank Accounts? Q2. To match "contains" text in Transaction Rules, is a wildcard or regular expression required? Is it case sensitive? Would searching for "issue" in the following
Notebook on Mac: Fuzzy fonts in list view
Hi, I am running Notebook on Mac OS 26. Generally it works fine, and the font display in the notes themselves is crisp. However, in the notes list (left of the open note) the font of the note titles as well as first lines is noticeable fuzzy. Attached
Trigger workflows from SLA escalations in Zoho Desk?
Hey everyone, I’m currently working with SLA escalation rules in Zoho Desk and ran into a limitation that I’m hoping someone here has solved more elegantly. As far as I can tell, SLA escalations only support fairly limited actions (like changing the ticket
Zoho CRM Email Templates 100% Width No Background How?
Hi, On the Zoho CRM Email Templates in setup > customization > templates > new templates > I choose blank template, but still it puts in a gray background and a max width for the email. I just want to make an email that looks like an email I would send from gmail that has no background or max width. How do you do this?
ZOHO CRM Quote Export / Quote Report
How can I either Export my quote list, or create a Report that shows all quotes AND includes the NOTES field in a column. I attempted to Run a Report which includes ALL FIELDS, however it does not include the Notes Field (but oddly does include the fields
Introducing Radio Buttons and Numeric Range Sliders in Zoho CRM
Release update: 1. 2 March 2026: Currently out for CN, JP, AU and CA DCs (Free and standard editions). For other DCs, this will be released by mid-March. 2. 26 March 2026: CA, SA, AU, JP, CN DCs - Free, Standard, Professional, Enterprise, Ultimate, CRM
All new Address Field in Zoho CRM: maintain structured and accurate address inputs
Availability Update: 29 September 2025: It's currently available for all new sign-ups and for existing Zoho CRM orgs which are in the Professional edition exclusively for IN DC users. 2 March 2026: Available to users in all DCs except US and EU DC. 24
Adding a Mark Up
Can you use the discount column to be a mar up column on estimates and invoices?
URGENT. Recovering email without eArchive
Hello, I have deleted some email from my trash but do not have eArchive. Is it possible to recovery without this? many thanks!
Subscription Statuses - Dunning
How are other companies handling the scenario when customers don't pay and dunning takes over? Our issue is that in my situations, we want our customers to be able to catch up their late payments and continue their subscription after the dunning process
Logo Doesnt appear on email
Hi, 1. PROBLEM: mails sent to customer from zoho invoice ( Estimates and incoices etc.) Logo doesnt appaer on email. 2. SUGGESTION: there must be an option to select from google fonts if we want specific font to the pdf templates. thanks
How to see Statement Details Shown in Unclassified Transactions in All Transactions?
All, The list of Unclassified Transactions show the Statement Details and Descriptions. What is the method to see that column in the All Transactions list? -Thanks!
Non-Avalara Tax Automation wtih Zoho Books
We are paying a ridiculous amount for Avalara. Our team wants to make a change, but they're the only software fully integrated with Zoho. We also don't have the bandwidth to do this manually, so we do need some sort of automated software solution. We
Migrating to the new outgoing webhook model in Zoho Connect
Dear User, Outgoing webhooks configured across the Zoho Connect Integrations page, Zoho Flow, and Zapier will stop working after May 31, 2026. This is due to an upcoming upgrade to our outgoing webhook flow. This update is mandatory only for networks
Create formula calculations in Assemblies for scaling quantities
Something we have been encountering with our composite items is dealing with scaling of quantity of one or more items within the composite assembly relative to the number of complete units being sold. I.e. running the equation 2(n-1) on one of the assembly
Lastest update
The latest update to notepad has completely trashed all my notes. If I go to view it it just opens up a screen with a box with dotted lines around it for me to add something I can import saved nodes but you can't view them at all. Anybody else having
Tip #67- Exploring technician console: Disable Input Devices- 'Insider Insights'
Hello Zoho Assist Community! Picture this: you are in the middle of a critical remote session, carefully configuring a system or running an important update, and the customer accidentally clicks somewhere or types something that undoes your progress.
What matters more in Zoho implementations: tools or system architecture?
I recently worked on a full-stack migration for a catering equipment business using Zoho One with Shopify, and it raised a few interesting observations. The setup included migrating a large product catalog (around 9,700+ SKUs), integrating multiple supplier
Facturation électronique 2026 - obligation dès le 1er septembre 2026
Bonjour, Je me permets de réagir à divers posts publiés ici et là concernant le projet de E-Invoicing, dans le cadre de la facturation électronique prévue très prochainement. Dans le cadre du passage à la facturation électronique pour les entreprises,
[Webinar] Solving business challenges: One tool for documents, forms, PDFs, e-signatures, and more
Hi Zoho Writer users, Most businesses rely on multiple tools, such as a word processor, form builder, e-signature provider, and PDF editor, for their document workflows. Managing multiple subscriptions, switching between tools, and moving data across
Deposit on invoice
I'm trying to figure out how to customize an Estimate to include a Deposit/Retainer Invoice line within the Estimate. I tried creating my own custom field called "Deposit" where I manually inputted the deposit amount, which was nice. However, my employer
Zoho NOTEBOOK: What are file size restrictions?
I understand that Zoho NOTEBOOK is a free product, and what it offers is great. But I'm wondering what the file size restrictions are. When I record an audio note in Zoho Notebook, what is the maximum length of recording time/audio file size? When I wish to upload MP4 video, what is the maximum video size I can upload per Zoho Notebook restriction? Moreover, does Zoho Notebook use its own storage structure, or can I upgrade my storage for Zoho Notebook to add larger file attachments, videos and audio
Concern Regarding Stock Validation in Inventory Management
Hi Zoho Team, We would like to highlight a concern regarding stock validation in the inventory system. As per standard inventory management practices, if the stock level is zero, the system should not allow users to create a shipment, packing slip, or
Automation Series #2: SLA vs Supervisor Rule in Zoho Desk
SLA vs Supervisor Rule: Keeping tickets on track in Zoho Desk This post is part of the "Desk Automation Series," Chapter 1. Through this series, we will help you choose the right automation type in Zoho Desk by comparing commonly confused automations
Zoho Recruit - Email Relay
Good day, Has anyone succeeded in setting up an email relay for Office 365? If I add the details from https://support.microsoft.com/en-us/office/pop-imap-and-smtp-settings-8361e398-8af4-4e97-b147-6c6c4ac95353, I get the connection error. Regards, Eka
Better use of contacts
Zoho inventory has the ability to add multiple contacts to customers. However Zoho inventory doesn't currently provide a way to link a contact to objects like sales orders. This means that while you can tell what company has placed a sales order you can't
Notebook AI limits
Hi folks, Working with the AI transcription tools in Notebook, on the Mac App, which I find quite handy, but the one thing I am struggling with is the inability to either edit or copy the results of the transcript: I can't click in any of the boxes, and
Next Page