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

    • Automation#18: Automatically Fetch Values from Contacts to the Tickets Module

      Hello Everyone, Welcome to this week's edition, where you can seamlessly sync fields from the Contacts to the Tickets module. For efficient business operations, it's crucial to have details mapped across different modules. Zylker Secure offers antivirus
    • Charge multiple invoices

      We use auto-charge/recurring invoicing for 100's of clients. If we create a single manual invoice we can charge it to the credit card for these clients with the CC added to their recurring invoices. If a client has multiple outstanding invoices, is there a way to make one charge for all of the invoices instead of a separate charge to the cc for each invoice?
    • Handling/tracking escalation management in Zoho

      Hi all, I am working on finding a tool to register and track our escalation management process. Specifically, this is about client escalations, typically related to project delivery issues. The idea is that we could have some sort of form with core questions
    • 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
    • Setting up property management in Zoho Books

      Hi, I run a property management business that manages property complexes. There are multiple owners, some owning more than one property on the same complex. My role is to manage the fees they pay for maintenance of common areas, such as the swimming pool
    • How to prevent users from switching price lists in an order?

      Hi, I have Zoho Finance integrated with Zoho CRM. My team will be placing orders through the CRM using the Finance module. When creating a new customer I will assign it a price list, I don't want the sales rep to switch to a different Price List, other
    • Mollie Connect in Zoho Books

      Have noticed that Zoho Books is missing the most popular payment provider in Europe: Mollie. Knowing that Mollie has a solid Java SDK, why is this not yet implemented in Zoho Books for European customers?  More info: https://docs.mollie.com/oauth/ov
    • Unable to change Lookup field from Multi Select to Single Select

      I am trying to change a Lookup field in my Zoho Creator form from Multi Select to Single Select, but I am unable to find any option to do this.
    • Simple Callback Notifications Needed

      My team are terrible at remembering their CRM callbacks, often due to how long in the future they are set for. Is there a way i can set an e-mail notification for when a callback is due? For example we set it for 9am one day and five minutes before they
    • Personal Data (RODO), Cookies / Trackers - ePrivacy

      I have noticed several issues that should be addressed on the customer support page. Zoho Desk provides the support portal, but it currently lacks the following options: A GDPR and personal data processing consent checkbox before logging in, located in
    • How to set a multi-lookup field as mandatory?

    • Allow Multiple Scheduled Appointments with Zoho Support

      Dear Zoho Team, I hope you're doing well. First, thank you for introducing the option to schedule support calls via the Zoho CRM booking link. This has been a fantastic enhancement, eliminating the need for back-and-forth coordination when scheduling
    • Audit Log for Zoho One Admin Panel

      Dear Zoho One Team, We would like to request the addition of an Audit Log feature in the Zoho One Admin Panel. This log should provide visibility into any changes made within the Zoho One admin panel and directory, including but not limited to: Adding,
    • Personalize your booking pages with Custom CSS

      Greetings from the Zoho Bookings team! We’re introducing Custom CSS for Zoho Bookings, designed to give you complete control over the look and feel of your booking pages. With this new feature, you can upload your own CSS file to customize colors, fonts,
    • Bug: OAuth 2.0 State Parameter fails with Pipe Delimiters (RFC 6749 Non-Compliance)

      I've discovered a bug in how Zoho's API Console handles the OAuth 2.0 authorization flow when the state parameter contains pipe characters (|), and I'm hoping the Zoho team can address this in a future update. The Issue Zoho's OAuth 2.0 implementation
    • Custom Function to increment a value by one

      Hi, I'm trying to find a solution to set up a counter on CRM records that tracks how many times certain actions have taken place. As a specific example: We have a field on Deals called "Times Close Updated". This starts at 0 on record creation. I'd like
    • Customer address in Zoho Bookings

      Hello,  Is it possible to add customer address information to the Zoho bookings appointment screen? Or have it pull that information automatically from the CRM? We are wanting to use this as a field management software but it is difficult to pull the address from multiple sources when it would be ideal to have a clickable address on the appointment screen that opens up the user's maps.  It would also be advantageous for the "list view" to show appointment times instead of just duration and booking
    • Access token generate from the refresh token not working for API

      Dear Sir/Madam, When I use my refresh token to obtain new access_token, that token return INVALID_TOKEN when the same API is called. I made sure that my api site is correct and match the auth web site. However the original access_token work fine.
    • why does my campaign move back to draft?

      Every time I try to send my email campaign, it reverts back to Draft status.. this has happened three times in a row..how do i find out what the problem is? Thanks
    • Service and Parts Line Item Limitations

      Hi FSM Team, We work with clients who deliver large-scale field service projects. In many cases, a single work order can contain 200+ service and parts line items. Currently, Zoho FSM limits work orders to 30 service and parts line items. While this works
    • 【Zoho CRM】やりとりの要約機能リリースのお知らせ

      ユーザーの皆さま、こんにちは。コミュニティチームの藤澤です。 今回は「Zoho CRM アップデート情報」の中から、新機能のやりとり要約機能をご紹介します。 Zoho CRMのやりとりの要約は、Ziaが生成する機能で、データに関連付けられた最近のやりとりを簡潔にまとめて提供します。 メール、通話、ミーティング、メモなどを1つの明確な要約にまとめ、重要なポイント、過去の話し合いの要点、結果、次のステップを表示することで、日常的な課題に対処します。 Ziaの強みは、単なる要約にとどまらず、内容の解釈も行える点です。やりとりの要約では、顧客との会話に潜む遅延、フォローアップ漏れ、約束、期限、感情、意図を特定します。
    • Recent post analytics not very useful

      Hi, I'm enjoying some aspects of the Zoho Social. like being able to schedule posts to multiple channels. However, the recent posts analytics is disappointing. For example, I put up a reel on Instagram and Facebook yesterday. Instagram insights shows
    • What happens to the files created by user, whose account is deleted.

      Hello, I created a folder in the My folders names "Quote" I shared the same with my colleague. She created some files and folders in that folder over the period of 1 and half year. Now she left company, and I deleted her account from Zoho. What happens
    • Internal Error When Accessing Team Inbox.

      All our users are seeing this error in teaminbox. Because its a critical tool kindly resolve this issue ASAP.
    • Sharing URLs and direct access

      Hello, I am storing my team's email signature images on Workdrive. I am creating a public image download share and adding “?directDownload=true” so that the image can be accessed without the Workdrive interface. A few questions: 1) Can we generate friendly
    • Zoho Mail Android app update: Calendar enhancements

      Hello everyone! In the most recent version of the Zoho Mail Android app update, we have introduced various new enhancements for the calendar module. Let's explore what's new. Drag and drop events to update the date and time We have enhanced the calendar
    • Enhance Delay Configuration in Zoho Flow

      Dear Zoho Flow Support Team, We are writing to request an improvement to the delay configuration process within Zoho Flow. Currently, users are required to manually enter the exact delay duration (e.g., "2 days") in the delay block. This can be time-consuming
    • Contratação ProdutivosX

      Bem-vindo(a) ao processo de contratação da ProdutivosX. Este formulário tem como objetivo coletar informações essenciais para análise de perfil profissional, alinhamento de competências e possível integração ao equipamento ProdutivosX. A ProdutivosX é
    • Enhance Sign CRM integration

      Hello all, I'm working on a custom Deluge script to enhance the integration between Zoho CRM and Sign by using a writer merge template for additional flexibility. I want to replicate the post-sign document integration that exists between CRM and Sign
    • Unified WhatsApp Number Management in Zoho Desk and SalesIQ

      Dear Zoho Desk Support Team, We are currently utilizing both Zoho Desk and Zoho SalesIQ for our customer support operations. While both platforms offer WhatsApp integration, we are facing challenges due to the requirement of separate WhatsApp numbers
    • Problem using Zoho Desk API

      Goodmorning, I am trying to use the Zoho Desk API to create a dashboard in Grafana, but I am having a problem. Following the instructions in the API documentation, I created the API Console application (server-based application). Then I created the string
    • Email Field Validation Incorrectly Rejects RFC-Compliant Addresses (Forward Slashes)

      I've encountered a validation issue with Zoho Creator's Email field that rejects RFC-compliant email addresses containing forward slashes, and I'm hoping the Zoho team can address this in a future update. The Issue When entering an email address containing
    • Plug Sample #15 - Enable Human-Like, Contextual Interactions in SalesIQ with Zia Agents

      Zia Agents are conversational AI assistants designed to understand user intent and respond intelligently, helping businesses automate conversations and offer personalized support at scale. While Zia Agents are yet to be publicly released, access is currently
    • Best way to schedule bill payments to vendors

      I've integrated Forte so that I can convert POs to bills and make payments to my vendors all through Books. Is there a way to schedule the bill payments as some of my vendors are net 30, net 60 and even net 90 days. If I can't get this to work, I'll have
    • Seamless Round-Trip Navigation for Related Blocks (Detail View)

      As highlighted previously in this post (and here, here, here, and here), we still lack a fundamental capability for seamless navigation in Related Blocks. The popup that appears when adding a related record doesn't exist for viewing/editing existing records,
    • Social Profile Logo Format

      Hello, I'm using Zoho Sites and am attempting to add a couple of social media accounts to my profile that aren't included in the default platforms that are available. What format is the logo required to be in? I have tried .png and .jpg with no success.
    • How to create Sepa Direct Debit XML file: solution and code

      Even though Books provides a payment integration for Stripe and Gocardless (in Europe) there are customers that want to use the Sepa services of their own bank. Mainly because Stripe and Gocardless are quite expensive. In that case they would need a Sepa
    • Traditional Spreadsheet vs Zoho Tables

      Hello everyone, This article explains the differences between Spreadsheet applications and no-code databases, such as Zoho Tables. While both tools belong to the "grid" family, the core difference lies in their purpose. A spreadsheet (such as Zoho Sheet,
    • RFQ MODEL

      A Request for quotation model is used for Purchase Inquiries to multiple vendors. The Item is Created and then selected to send it to various vendors , once the Prices are received , a comparative chart is made for the user. this will help Zoho books
    • Delegate Access - Mobile iOS/iPad

      We’re over the moon that delegate access is now available in Zoho Mail as we were nearly ready to switch platforms because of it! Is there a timeline on when delegate mailboxes will be accessible from the iOS and iPad OS applications? Thanks, Jake
    • Next Page