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.


    • Recent Topics

    • Why Zoho Contracts Prefers Structured Approvals Over Ad-hoc Approvals

      Approvals are one of the most important stages in a contract’s lifecycle. They determine whether a contract moves forward, gets revised, or needs further discussion. The approval process also defines accountability within the organization. Zoho Contracts
    • Whatsapp Connection Status still "Pending" after migration

      Hello, I migrated my WhatsApp API to Zoho from another provider a day ago. So far the connection status is still “Pending”. There is a problem? How long does it usually take?
    • Kaizen #226: Using ZRC in Client Script

      Hello everyone! Welcome to another week of Kaizen. In today's post, lets see what is ZRC (Zoho Request Client) and how we can use ZRC methods in Client Script to get inputs from a Salesperson and update the Lead status with a single button click. In this
    • How to use Rollup Summary in a Formula Field?

      I created a Rollup Summary (Decimal) field in my module, and it shows values correctly. When I try to reference it in a Formula Field (e.g. ${Deals.Partners_Requested} - ${Deals.Partners_Paid}), I get the error that the field can’t be found. Is it possible
    • How to Filter timewise question to check uploaded one month or two months before in these community question ?

      i want to find the question that is asked some month or before any particular year, so how can i filter it ?
    • Proposal for Creating a Unique "Address" Entity in Zoho FSM

      The "Address" entity is one of the most critical components for a service-oriented company. While homeowners may change and servicing companies may vary, the address itself remains constant. This constancy is essential for subsequent services, as it provides
    • Workflow Down/Bug

      We have a workflow that sends an email to one of our internal departments 10 minutes after a record is created in a custom module. The workflow actually works correctly. However, we have now noticed that on January 8, between 3:55 p.m. and 4:33 p.m.,
    • Service Locations: Designed for Shared Sites and Changing Customers

      Managing service addresses sounds simple—until it isn’t. Large facilities, shared sites, and frequently changing customers can quickly turn address management into an operational bottleneck. This is where Service Locations deliver clarity and control.
    • Can I re-send the Customer Satisfaction Survey after a ticket closure?

      Hello, Some customers does not answer the survey right after closure, is it possible to re-send after a few days or weeks? Best Regards!
    • Account blocked

      Yesterday I got my Zeptomail account blocked due to too many hard bounces. My account is used exclusively for sending transactional emails (eg. your order has been shipped, a form has been filled, etc) and the sudden blocking impacted hundreds of websites
    • Filter contacts based on selected category in Zoho Desk ticket

      Hello community, I’m setting up the Tickets module in Zoho Desk and I need help implementing the following: When a category is selected in a ticket, I want the Contact field to be filtered so that it only displays contacts that are related to that category.
    • Mapping a new Ticket in Zoho Desk to an Account or Deal in Zoho CRM manually

      Is there any way for me to map an existing ticket in Zoho desk to an account or Deal within Zoho CRM? Sometimes people use different email to put in a ticket than the one that we have in the CRM, but it's still the same person. We would like to be able
    • Assign Income to Project Without Invoice

      Hello, Fairly new user here so apologies if there is a really obvious solution here that I am just missing... I have hundreds of small deposits into a bank account that I want to assign to a project but do not want to have to create an invoice every time
    • Tracking Non-Inventory Items

      We have several business locations and currently use zoho inventory to track retail items (sales and purchase orders). We were hoping to use zoho inventory to track our non-inventory items as well (toilet paper, paper towels, etc). I understand that we
    • Profile Page View Customization

      I need to change the fields, sections from the profile view of an emplyoyee.
    • Zoho Desk Android app update: Filter, Sort and Saved filters Enhancements

      Hello everyone! We are excited to introduce the below features on the Android version Zoho Desk mobile app: 1. Filter & Sort support has been introduced for the Contacts and Accounts modules. 2. Sort options is now available in Custom Modules as well.
    • Accessing shared mailboxes through Trident (Windows)

      Hi, I have a created a couple of shared mailboxes. The mailboxes are showing up on the browser based Zoho workplace, but I cannot seem to figure out how to access my shared inboxes through Trident (Windows). Am I missing something or is this feature not
    • Feature Request: Ability to set Default Custom Filters and apply them via URL/Deluge

      I've discovered a significant gap in how Zoho Creator handles Custom Filters for reports, and I'm hoping the Zoho team can address this in a future update. This limitation has been raised before and continues to be requested, but remains unresolved. The
    • Closing the Loop: Why Lookup Asymmetry is Harming Data Integrity in Creator

      TL;DR: Lookup fields allow users to add new related records inline via the "+" icon, but there's no equivalent ability to edit an existing related record without navigating away and losing form context. Adding a native "Edit" icon—with automatic User
    • filtering lookup field options based on information in another module.

      In our CRM system. We have the standard Accounts and Deals modules. We would like to introduce the ability to classify Accounts by Sector. Our desired functionality is to have a global list of all sectors that an Account can select, with the ability to
    • Service op locatie organiseren met Zoho FSM: waar lopen organisaties tegenaan?

      Bij organisaties met service teams op locatie merken we vaak dat de complexiteit niet zozeer in de planning zelf zit, maar in wat er rond die planning gebeurt. Denk aan opvolging na interventies, consistente servicerapporten, en het bijhouden van installaties
    • Introducing Assemblies and Kits in Zoho Inventory

      Hello customers, We’re excited to share a major revamp to Zoho Inventory that brings both clarity and flexibility to your inventory management experience! Presenting Assemblies and Kits We’re thrilled to introduce Assemblies and Kits, which replaces the
    • Does the ability exist to make tax on the customer profile mandatory?

      I am reaching out to inquire about the possibility of making the "Customer Tax" field mandatory when creating a new customer in Zoho. We want to ensure that all customers have their tax information recorded to maintain compliance with our internal processes.
    • email association with CRM

      Why is it 2024 (almost 2025) and Zoho has not figured out how to integrate email with CRM? It is so inconsistent at associating emails within CRM. I am an attorney. I have clients and work with other attorneys. Attorney John Doe is associated with multiple
    • Fix the speed

      It takes ages to load on every step even though my dataset is quite small.
    • Credit Note for Shipped and Fatoora pushed invoices

      We have shipped a Sales Order and created an Invoice. The Invoice is also pushed to Fatoora Now we need to create a credit note for the invoice When we try it, it says we need to create a Sales Return in the Zoho Books, we have already created a Sales
    • FSM - Timesheet entires for Internal Work

      Hi FSM Team, Several of my clients have asked how they can manage internal timesheets within Zoho FSM. Since their technicians already spend most of their day working in FSM, it would be ideal if they could log all working hours directly in the FSM app.
    • Add a way of clearing fields values in Flow actions

      It would be great if there was an option to set a field as Null when creating flows. I had an instance today where I just wanted to clear a long integer field in the CRM based on an action in Projects but I had to write a custom function. It would be
    • Role Management

      I am creating an analytics dashboard for a company that will be utilized by its various departments such as Finance, Marketing, and HR. My goal is to design the dashboard with separate tabs for each department. Additionally, I plan to implement role-based
    • Highlight a candidate who is "off limits"

      Hello: Is there a way to highlight a candidate who is "off limits"?  I would like to have the ability to make certain candidate and / or Client records highlighted in RED or something like that.   This would be used for example when we may have placed a candidate somewhere and we want everyone in our company to quickly and easily see that they are off limits.  The same would apply when we want to put a client or former client off limits so no one recruits out of there. How can this be done? Cheers,
    • Announcing new features in Trident for Windows (v.1.37.5.0)

      Hello Community! Trident for Windows just received a major update, with a range of capabilities that strengthen email security and enhance communication. This update focuses on making your mailbox safer and your overall email experience more reliable.
    • Early Payment Discount customize Text

      Hi, I’m currently using Zoho Books and am trying to customize the standard “Early Payment Discount” message that appears in the PDF invoice template. I’ve reviewed the documentation here: https://www.zoho.com/books/help/invoice/early-payment-discount.html
    • Deprecation of SMS-based multi-factor authentication (MFA) mode

      Overview of SMS-based OTP MFA mode The SMS-based OTP MFA method involves the delivery of a one-time password to a user's mobile phone via SMS. The user receives the OTP on their mobile phone and enters it to sign into their account. SMS-based OTPs offer
    • Zoho Sheet - Desktop App or Offline

      Since Zoho Docs is now available as a desktop app and offline, when is a realistic ETA for Sheet to have the same functionality?I am surprised this was not laucned at the same time as Docs.
    • DKIM Now Mandatory - Changes to Zoho Forms Email Policies

      Hello Zoho Forms Users, This post is to inform you about an important update regarding the authentication of all email domains in your Zoho Forms account. This year, we are doubling down on our commitment to deliver a secure, seamless, and empowering
    • Call description in notes

      When completing a call, we type in the result of the call in the description. However, that does not show up under the notes history on the contact. We want to be able to see all the calls that have taken place for a contact wihtout having to go into
    • Email Address for Contact not Populating

      When I click "Send Mail" from a Contact's page, their email address does not auto populate the "To" field. How do I make this happen?
    • New in CRM: Dynamic filters for lookup fields

      Last modified on Oct 28, 2024: This feature was initially available only through Early Access upon request. It is now available to all users across all data centers, except for the IN DC. Users in the IN DC can temporarily request access using this form
    • Why hybrid project management might be the best fit for you?

      Project management techniques are designed to equip teams with proven methods for easy and efficient project execution. While management teams may have apprehensions about adopting the hybrid method of project management, we’ve compiled the top reasons
    • Allow all Company Users to view all projects, but only owner/admins can change projects

      I was wondering if there was a permission setting I could adjust to allow all our company users to see all projects created. Then, only the project owners and admins with the change permission. Thanks
    • Next Page