Back to Blog
Integration Guides

How to Integrate Twilio with Acuity Scheduling: Step-by-Step Guide

Wire Twilio into Acuity to send branded SMS appointment confirmations, reminders, and cancellation notices that match your business tone.

DA
Danial A
Senior Twilio Consultant, Telphi Consulting
June 22, 2026
7 min read
Twilio
Integration
Scheduling
How to Integrate Twilio with Acuity Scheduling: Step-by-Step Guide

Acuity Scheduling and Twilio integrate through Acuity Webhooks and the Twilio Messages API to send fully branded SMS appointment confirmations, customized reminders, and cancellation notices using message content and timing that your business defines rather than Acuity's built-in notification templates. This integration is used by wellness practitioners, salon owners, tutors, and service businesses that use Acuity for appointment booking and want SMS notifications that reflect their brand voice rather than generic platform messages. The connection uses Acuity's webhook system to deliver appointment event payloads to your middleware, which extracts the client phone number and dispatches Twilio SMS with business-specific content.

What You Need Before You Start

Obtain your Acuity API credentials by logging into your Acuity account, navigating to Integrations, then API, and copying the User ID and API Key displayed on that page, which are used as Basic authentication credentials for all Acuity API calls in the format where the User ID is the username and the API Key is the password. Configure Acuity webhooks by navigating to Integrations, then Webhooks in your Acuity admin, entering your middleware endpoint URL, and selecting the events Appointment Scheduled, Appointment Canceled, Appointment Rescheduled, and Appointment Changed to receive the full appointment lifecycle. From Twilio, collect your Account SID, Auth Token, and an SMS-capable phone number registered for A2P 10DLC, and confirm that your Acuity appointment intake forms collect a phone number from clients by adding a Phone field under Forms and Intake Forms in the Acuity admin. Add the phone field as required on appointment booking forms so that every booked appointment has a client phone available for SMS dispatch.

Step-by-Step Integration Guide

When an Acuity appointment scheduled webhook fires, your middleware receives a JSON payload containing the appointment id, datetime, type, firstName, lastName, email, phone, and any intake form answers. Extract the phone field directly from the top-level appointment payload, which Acuity populates from the booking form's phone field, and normalize it to E.164 format before any Twilio dispatch. Dispatch a Twilio SMS confirmation by calling POST https://api.twilio.com/2010-04-01/Accounts/{AccountSid}/Messages.json with Basic authentication, To set to the normalized phone, From set to your Twilio number, and Body composed from the client's firstName, the appointment type field, and the datetime field formatted as a human-readable date and time string using a date library such as moment.js or date-fns. Schedule reminder SMS by storing the appointment datetime and phone in your database at booking time, then running a scheduled job that queries for appointments starting in 24 hours and in 1 hour, dispatching customized Twilio reminder SMS at each interval with the appointment type, location from the calendar field, and a cancellation link constructed from your Acuity booking URL followed by the appointment id.

Common Issues and How to Fix Them

The Acuity webhook phone field is empty when the client booking form was completed without filling in the phone field, which can happen when the phone field is marked optional or when clients book via an embedded Acuity form that predates the phone field addition. Add a secondary lookup by calling GET https://acuityscheduling.com/api/v1/appointments/{appointmentId} with Basic auth to fetch the full appointment including intake form responses, then search the forms array for a field with the name Phone or Mobile to extract the phone if it was captured in a custom intake field rather than the standard phone field. Acuity webhook deliveries do not include HMAC signature verification natively on all plan levels, making your endpoint vulnerable to spoofed requests that trigger unauthorized SMS. Add a secret token to your webhook URL as a query parameter such as ?secret={randomToken} in the Acuity webhook configuration and validate that parameter in your middleware before processing any payload. Acuity rescheduled appointment webhooks fire twice in quick succession: once for the original appointment cancellation and once for the new appointment creation, which can cause your middleware to send both a cancellation SMS and a new booking SMS to the client within seconds. Detect rescheduled events by checking whether the webhook payload contains a rescheduled field set to true and in that case send only a rescheduling confirmation SMS rather than separate cancel and book messages.

How to Get More from This Integration

Build a post-appointment follow-up SMS by storing the appointment end time in your database and running a scheduled job that fires a Twilio thank-you SMS 30 minutes after the appointment end time, including a review link or rebooking link specific to the appointment type, improving client retention and review collection without any manual effort. Add a late cancellation penalty notice by detecting appointment cancellations within 24 hours of the scheduled time in the Acuity canceled webhook handler, comparing the cancellation timestamp to the appointment datetime, and dispatching a Twilio SMS to the client noting your late cancellation policy along with any applicable fee, keeping the tone professional and policy-consistent. Create an appointment preparation SMS sequence by dispatching the first reminder 48 hours before the appointment with general preparation instructions, a second reminder 2 hours before with the exact location or video link, and a third 15-minute reminder for clients who have a history of lateness tracked in a custom field in your database. Integrate Twilio with Acuity's package feature by calling GET https://acuityscheduling.com/api/v1/clients/{clientId}/packages with Basic auth after each appointment and dispatching a Twilio SMS to clients who have used their final package session, prompting them to repurchase before they lose access.

Conclusion

Acuity Scheduling and Twilio together give service businesses full control over their SMS appointment communication with branded messages, custom timing, and complete business logic that Acuity's built-in notifications cannot match. Reach out to Telphi Consulting to build and customize this integration for your Acuity booking workflow.

Share this article:
0 views

Ready to Transform Your Business Communications?

Get a free consultation with our VoIP experts and discover how we can help you save costs, improve efficiency, and scale your business.

Comments (0)

Join the discussion and share your thoughts (AI-moderated for quality)

Protected by AI moderation

Be the first to comment

No comments yet. Share your thoughts below.