How to use Twilio to send appointment notification and reminder SMS in Zoho Bookings

How to use Twilio to send appointment notification and reminder SMS in Zoho Bookings

Hit no-shows out of the ballpark by combining Zoho Bookings and SMS providers.

SMS notifications help you remind customers of their appointments and reduce no-shows by reaching out where they are.

In this guide, we'll configure an SMS provider called Twilio.

Prerequisites

  • A Twilio Subscription
    • You need at least one number to send messages from. It can be a short code, your personal number, a local number, or anything else. Twilio charges monthly for phone numbers. Check out Twilio's pricing page for more details.
    • Since Twilio uses a pay-as-you-go model, there are no monthly commitments (except the sender number). The minimum recharge value is $20, and you can use it until the credits expire - Learn more about Twilio's pricing model here.

Things to Know Before Using Twilio

  • You can share your Twilio subscription amongst multiple admins (if required).
  • Twilio is responsible for everything except configuring SMS text (You can configure this inside Zoho Bookings).
  • Both single and dual way communication is possible with Twilio
  • Using Twilio, you can send messages across borders.
    • Case 1: When you send messages from a US number to an Indian number, sender IDs might change. It ensures the deliverability of messages.
    • Case 2: SenderIDs don't change when the sender and the recipient numbers belong to the same country.
  • Twilio charges for text messages on a segment basis. (1 segment = 160 Characters). For instance, if you send an SMS with 200 characters, you'll be charged for two SMS credits - Learn more about it here.
  • To find the number of SMS you'll be able to send with your top-up, use this formula:
    • Number of SMS that can be sent = (Top Up Value - Phone Number Price)/ Message Per SMS
    • Let's assume you belong to the US and recharge for $20. You've also opted for a long code that costs $1.16 (with carrier fees), the equation would look like
    • Number of SMS that can be sent* = ($20 - $1.16)/ ($0.0079) = 2200.
    • You'll be able to send approximately 2200+ SMS with this. (If you don't buy additional phone numbers in the US)
    • Note - The calculation is only an approximate estimation of the number of messages that you can send. This is because factors like carrier fees, and per-message rate change often and vary widely across different service providers.
  • Twilio credits are one-off amounts that don't expire until you use them.
  • Your Twilio account will get suspended once your account balance reaches zero. To avoid this, Twilio sends a notification to your email requesting you to refill your funds when the balance hits $5.
  • Another way to prevent your account from hitting zero you can set up an auto-recharge trigger for a minimum of $10. When your balance hits $10, you can automatically set it up to top up your account. Check out this page for setting up automatic payment triggers.
     

A2P 10 DLC Registration (only if you wish to send messages to the US)

Note - This is only necessary if you send messages to the United States. (Regardless of where you send your messages from - inside or outside the US)
  • If you send messages to the US, you should register for A2P 10 DLC. (Application to Person 10 Digit Long Code messaging protocol)
  • A2P 10DLC is a secure way to communicate with businesses and ensures that the messages are relevant to the recipients. We highly advise you to register for A2P 10 DLC Protocol as numbers without it will incur higher fees and even service disruptions from June 1, 2023. This is to comply with US messaging regulations. You can learn more about it here.
  • A2P 10 DLC registration is only possible with a Twilio premium subscription and not for trial accounts.
  • To do this, navigate to Phone Numbers > Manage > Active Numbers > Click on a Number.

  • Under Messaging Configuration, click on 'Go to 10DLC registration.'



Note - You cannot integrate multiple SMS providers to Zoho Bookings simultaneously.



Configuring Twilio with Zoho Bookings

1. Sign in to your Twilio account. (Sign up here if you don't have one)



2. You'll be redirected to the following screen once you've signed up. Check your mail inbox.


3. Your email would look like this. Confirm your account.



4. Twilio asks you to secure your account with a phone number. Enter your number and click on Send verification code/Get code via phone call depending on your choice.



5. Once you've confirmed your phone number you can fill in the onboarding form and click on get started with Twilio.



6. You'll be redirected to the Twilio dashboard.


  • 'My first Twilio account' is the account name of your Twilio SMS account. If you have multiple Twilio SMS accounts you can navigate it from here
  • The Phone numbers tab helps you to
    • Manage all your Phone numbers
    • Buy new Numbers
    • Release a Phone number
  • When you sign up for a Twilio account, you'll get $15.50. You can get a trial number using this to test their configurations before opting for a premium plan.
7. Let's get a phone number from Twilio. Click on 'Get a Twilio Phone Number.'



8. Twilio will assign you a phone number. Now let's configure Twilio with Zoho Bookings.



Note - To get a premium number, navigate to Phone numbers > Manage > Buy a Number
 
Choose which country's number you wish to get, SMS (as capability), and click search. You can click on buy to obtain the number.



9. Scroll to the bottom of Twilio's main dashboard. You'll find three fields here, Auth Token, Account SID, and your Phone number. We'll paste all this data to integrate Zoho Bookings and Twilio.'



10. Now log in to your Zoho Bookings Dashboard. Navigate to Integrations > Others > Twilio. Hover over Twilio and click on Configure.



11. Copy and paste the details from Twilio to the corresponding fields in Zoho Bookings. Once you have pasted the details, click 'Configure.'
 

Note: While pasting the phone number, remove the country calling code. In this case, my phone number was +13203628918. '+1' is the country calling code. Remove it and paste the rest (i.e., 3203628918 without any spaces/symbols in between)



12. Hover over the created Twilio connection and click enable. Reload the page if the connection is still not active. You've successfully integrated Twilio with Zoho Bookings.


Editing Your Twilio Connection

To edit your Twilio connection, hover over the Twilio integration and click on edit. Once you've made the changes, click Configure.



If you wish to remove your Twilio connection, hover over the Twilio integration and click remove.



A pop-up appears asking you to confirm. Click 'Proceed' to delete your Twilio connection.



Note - While Editing or Removing your Twilio connections, if the changes don't reflect immediately, reload the page for the changes to reflect.

Configuring SMS Notifications

To configure SMS notifications for one on one bookings, navigate to services > service notification.



To configure SMS notifications for group/ resource bookings, navigate to settings > workspaces > notifications.


You'll see two tabs here. 'For Staff' and 'For Customers.' Zoho Bookings allows you to send eight different types of SMS under each tab.



You can configure Zoho Bookings to send SMS using Twilio when you change the appointment status to
  • Booked
  • Rescheduled
  • Canceled
  • Marked As Completed
  • Marked As No Show
Alternatively, you can set up to three reminders before your appointment time.



Illustration: Let's send SMS notifications to a customer when an appointment(one-on-one) is booked.

  1. Make sure that the checkbox is enabled corresponding to the booked notification in the customer tab. It ensures that the customer receives an SMS notification when an appointment is booked.


 2. To customize the messages that will be sent, click on customize. You can change the message and insert dynamic variables like meeting info, customer name, meeting date, and more into your outgoing messages. Click 'Save' once you are done with the changes.



The customer receives the following message when an appointment is made.


Note that the message is from the number '59039000' and not my original phone number. This is because the message is sent from a US number to an Indian Number. So the original long code is replaced with this number to ensure seamless deliverability.
 
If the sender and recipient belong to the same country, then the SenderID (i.e., your phone number) doesn't change.
 
There are cases where you might want to block incoming messages. For example, customers might reply to your SMS notifications requesting a reschedule or cancellation. This breaks the flow of Zoho Bookings and introduces unnecessary manual work. If that's the case, check out this document to block all incoming messaging.

SMS Customization Recommendations

  • Since each message can accommodate only 160 characters, we recommend keeping your message crisp. Include vital info like appointment date, time, and business name.
  • Avoid using emojis in your sms. As a single emoji consumes a lot of characters.
  • We recommend you have your entire message length from 160 to 320 characters (i.e., 1 to 2 messages per message) to avoid consuming too many message credits for a single SMS.

Zoho Bookings Plans supporting this feature

Applicable in
Premium

If you want to start a trial of the Zoho Bookings Premium plan, please send an email to support@zohobookings.com including the word 'Twilio' in the subject line.


    Zoho Desk Resources

    • Desk Community Learning Series


    • Digest


    • Functions


    • Meetups


    • Kbase


    • Resources


    • Glossary


    • Desk Marketplace


    • MVP Corner


    • Word of the Day


      Zoho CRM Plus Resources

        Zoho Books Resources


          Zoho Subscriptions Resources

            Zoho Projects Resources


              Zoho Sprints Resources


                Zoho Orchestly Resources


                  Zoho Creator Resources


                    Zoho WorkDrive Resources



                      Zoho Campaigns Resources

                        Zoho CRM Resources

                        • CRM Community Learning Series

                          CRM Community Learning Series


                        • Tips

                          Tips

                        • Functions

                          Functions

                        • Meetups

                          Meetups

                        • Kbase

                          Kbase

                        • Resources

                          Resources

                        • Digest

                          Digest

                        • CRM Marketplace

                          CRM Marketplace

                        • MVP Corner

                          MVP Corner




                          Zoho Writer Writer

                          Get Started. Write Away!

                          Writer is a powerful online word processor, designed for collaborative work.

                            Zoho CRM コンテンツ






                              ご検討中の方

                                • Recent Topics

                                • Select CRM Custom Module in Zoho Creator

                                  I have a custom module added in Zoho CRM that I would like to link in Zoho creator.  When I add the Zoho CRM field it does not show the new module.  Is this possible?  Do i need to change something in CRM to make it accesible in Creator?
                                • Send Whatsapp with API including custom placeholders

                                  Is is possible to initiate a session on whatsapp IM channel with a template that includes params (placeholders) that are passed on the API call? This is very usefull to send a Utility message for a transactional notification including an order number
                                • Increase Round Robin Scheduler Frequency in Zoho Desk

                                  Dear Zoho Desk Team, We hope this message finds you well. We would like to request an enhancement to the Round Robin Scheduler in Zoho Desk to better address ticket assignment efficiency. Current Behavior At present, the Round Robin Scheduler operates
                                • Separate One-Time Mentions from Ongoing Ticket Following in Zoho Desk

                                  Dear Zoho Desk Support Team, We are writing to request an enhancement to the mention functionality within Zoho Desk. Currently, when an agent is mentioned in a ticket, they receive notifications for all subsequent activity on that ticket, similar to being
                                • Mass update Accounts in Zoho Desk

                                  We used the integration feature to bring in all of our accounts from Zoho CRM. While all of the names and links are in place, on the Zoho Desk side the email, phone, website, and address fields are blank. By going into each account I can select "Update
                                • Vivaldi will not open the Zoho Mail app when I click a email link in the browser

                                  I'm running Vivaldi on Arch with the Plasma desktop and have under default applications Zoho Mail set as my default email client. Whenever I click a email link in Vivaldi I get the below when it should be launching Zoho. Any ideas on rectifying this issue?
                                • Digital publisher

                                  Kinetic Digital Publisher provides comprehensive digital publishing services, including eBook creation, formatting, cover design, and marketing. We help authors publish and promote their work across online platforms with ease.
                                • Time Zone Correction with Daylight Savings Time

                                  Hey, I'm writing a series of reports where the source data is synced from an external source which stores the date/time information in GMT, but I want the reports to be in local time. Now, I understand there is the CONVERT_TZ function which allows me
                                • Load form in iframe without header

                                  I am trying to load a form into an iframe without the header, but I am not having any luck. I am using openUrl() to load the iframe with the form URL and zc_Header set to false, e.g. #Form:Add_Case?zc_Header=false but it is still loading the header. Any
                                • Filter embedded report

                                  How to filter embedded report in a page, below code is not working. dateField => startDate & dateField=< endDate The report should print on page containing records from startDate to endDate. params='zc_Header=true&amp;Service_Date__gte=<%=startDate%>&amp;Service_Date__lte=<%=endDate%>'
                                • Creator Simplified #5: Set file upload restrictions in Zoho Creator

                                  Hey Creators, Welcome to the next post in the Creator Simplified series. Today, we’ll explore how to implement file upload restrictions to limit user submissions to specific file types. By implementing an allowed list for file uploads, you can optimize
                                • Field Type: Address, Change District/State to Dropdown with picklist??

                                  Using the Address Field type, is there a way to make the District/State field be a dropdown with a picklist so the users can select rather than type the state name every time? I know this can be done if I use a drowdown field for the State (or entire address information), but that isn't as tidy as using the address field type. I apologize if this is a duplicate. I posted this question the other day, or so I though. Can't find that post.
                                • cutomized fields are not showing up in zoho creator from zoho crm

                                  We have customized fields in zoho crm under accounts module like "Last production upgrade" --> This field is a date. When created a solution in zoho creator i couldn't find any of the customized fields. Would you please help me on this matter? Thanks
                                • How to Add Bulk Data in Zoho Creator Forms Using Deluge Without Exceeding Execution Time Limit

                                  I have a database form with a column named 'Product Name' containing 8000 values in a Zoho Creator form. In another form named 'Returns Data,' I have a column with the same name, 'Product Name.' How do I add these 8000 values to the 'Returns Data' form
                                • Open New Free Zoho Account

                                  Hi Team, Do you guys offer a free email hosting? I do have a domain already. If yes, what is the process to open the new account? Thanks,
                                • 554 5.7.1 : Recipient address rejected: user info@intimspace.de does not exist

                                  554 5.7.1 : Адрес получателя отклонен: пользователь info@intimspace.de не существует I can't send an email to Google at info@intimspace.de. An error comes. I entered everything correctly in DNS https://zohomail.tools/#domainDetails/intimspace.de/ALL
                                • Emails going back unread

                                  Hi all, When in Zoho mail - when I recieve a new mail it puts back all emails read that day back to unread - I then have to go back through and open all emails I have already read! Gets very annoying... Any idea on the bug fix?
                                • Been getting this error, every now and then "Get count limit exceeded, please try again after 3 mins"

                                  it is really annoying.
                                • Constraints on Tasks

                                  We have a use case where we have certain fixed date tasks and need to schedule predecessor tasks around these. Predecessor tasks need to be completed with a lag before the fixed date. We should be able to schedule the start and end date for predecessor
                                • Moving Project Dependencies Not Moving Precedessors

                                  Most of the time we want to base our start dates around an event that is in the middle of the project template. If I set a bar up at the date we want it, it doesn't move the predecessors up. Is there a way to change this? eg. there is no point starting
                                • Can you set task due dates to be "x" days before the milestone?

                                  We have a milestone set as the date of our first event. All of the tasks need to happen in increments prior to the milestone event. Is there a way to configure this without having to set up each task due date? Thanks!
                                • Default ticket template in helpcenter

                                  Hello, I have a web form and a ticket template created. How can I make that my default ticket template? If an user clicks New ticket or create a ticket, I want that template to be the default one. Thank you for the time and info.
                                • Expanded data-capturing capabilities with enhanced tabular sections

                                  We are thrilled to announce an update to Zoho Recruit that brings even more flexibility and customization to your recruiting process. With the addition of 10 new field types to the tabular sections, you now have the power to enhance your tabular sections
                                • Integration of Business Hours in Email Templates

                                  Dear Zoho Desk Team, We would like to propose a feature enhancement to Zoho Desk that would greatly improve the utility of the Business Hours settings and streamline communication with our clients. Feature Request: Integration of Business Hours in Email
                                • Add Owner to deluge-created module record note

                                  Is it possible to include the "owner" aka "creator", of a Note when creating it via delulge? This sets "superadmin" as the Note creator. I need to override it. notemap = Map(); notemap.put("Parent_Id",program_contact_id); notemap.put("Note_Content",program_contact_data.get('Note'));
                                • Blueprint - Field Validation Criteria (During)

                                  When setting validation criteria elsewhere in Zoho, or even workflow criteria etc., there are Is Empty and Isn't Empty options.  Within the Field Validation Criteria within Blueprint, those options aren't available.  Is there a particular reason for this? 
                                • Delete Field that is used in a Zoho Flow connection

                                  I'm trying to delete a Field used in a Webhook created by Zoho Flow with CRM Connection and i get the following alert: When going to the alert i get to the following issue, can't edit it since its been deployed by a pluggin But yes i have here the prompted
                                • Use image on img HTML tag

                                  Hi how could I do to use my image saved in Workdrive to use it in an HTML img tag ? I need to display it on my website without having to use iframes. Regards,
                                • ZOHO Compain emails going to spam after authentication is successful

                                  Hello, I am frustrated right now. I have recently setup the zoho email compaign, The auto responder email went to receipient spam folder. then, I researched a lot and completed authentication (SPF, DKIM) in email deliverability, email relay in zoho crm.
                                • Security Policies

                                  To protect against cyber threats and attacks, organizations need to set up security policies for their employees' accounts. Security policies are rules and regulations for every individual or group using the organization's assets and resources. Enabling
                                • Zoho CRM functions editor is not in the programming language deluge

                                  I am trying to write a function for a button. I helped someone before in deluge and I'm using this new editor I'm not familiar with - I guess it is new. Why is the default code statically typed? The editor will not let me create a variable without a type.
                                • "Age in Days" calculation in Advanced Analytics

                                  Hi Can someone advise how this is calculated? I am getting values on this report which I cannot understand. Thank you
                                • Automatically set quotes to "lost" if deal is set to lost

                                  Hi, Is there a way to automate that if a deal (opportunity) is lost the related quotes are also set to lost? Thanks!
                                • Subdomain

                                  How can i make subdomain in my zoho website
                                • A/R Aging Details shows wrong aging days

                                  In the A/R Summary Report all of the invoices are in the right aging buckets. When I run the A/R Aging Details report I get aged dates of +300 days when they should be in the 0-90 day range.
                                • Global Choice List share ownership

                                  I have created several forms that use one or more Global Choice Lists. These lists have been published to Org. I would like to allow one or more admins to edit the choices in these lists. Any help appreciated. Geoff
                                • Domain Transfer

                                  I have a Godaddy domain, how i can transfer it to Zoha? and how i can move my website to Zoho server? With my best wishes.
                                • Project Templates & Reminders

                                  I am getting projects all set up to work for our company and am running into a problem that I'm hoping is easily fixable. I have created a project template and within that project, there are reminders set on certain tasks. When I create a project from
                                • Kaizen #126 - Circuits in Zoho CRM - Part 1

                                  Hello everyone! Welcome back to another week of Kaizen! Today, we will discuss an exciting topic—Circuits in Zoho CRM. For starters, we will discuss what Circuits are, how beneficial they are for businesses, different views of a Circuit, and the different
                                • Create customized SLAs for your customer base with support plans

                                  Managing customer expectations, prioritizing critical issues, and resolving customer inquiries on time is quite a juggle. Without a clear timelines or defined priorities, a support team may struggle with delays in response, SLA violations, and pending
                                • Next Page