Setting Up Online Bookings on Client Portal
This article will show you how to set up online bookings on your Client Portal.
Managing Online Bookings in 3 Steps
1. Go to User Menu > Account Settings > Schedule > Client Portal > Access and Settings, and enable the 'Accept Online Bookings' option.
2. While still on this page, locate the Online Bookings section and activate the 'Allow Group Bookings' option to support class bookings.
3. To manage individual client access, open the client’s profile, select Admin > Manage, and use the 'Allow New Appointments' > 'Client can book appointments on the portal' setting to control whether the client can book online.
- To access the online booking settings page, navigate to User Menu > Account Settings > Schedule > Client Portal > Access and Settings.
- On this page, scroll to the Online Bookings section and go through each setting. You can work on those before you enabled your client portal for clients accessing online bookings.
- For more instructions on enabling your client portal and accepting online bookings, refer to this detailed article: Getting Started With Your Client Portal

In this article:
- Clients Can Book With Any Practitioner
- Require Clients to Register/Login First
- Allow Group Bookings
- Group Booking Label
- Show Service Price
- Request Payment When Booking
- Earliest Time Clients Can Book
- Limit How Far Clients Can Book
- Minimum Gap Between Bookings
- Cancelation policy
- Default Flag Applied to Bookings
- Display Start Times Every
- Booking Terms and Conditions
- FAQs
Clients Can Book With Any Practitioner
If enabled, clients can book with all practitioners with availability. If not enabled, clients can only book and see availability with their primary or assigned practitioners.
-
Note: In accounts where clients can only book with their assigned practitioners, contacts will see both their own and the client’s assigned practitioners - making it easier to ensure the right person is booked with the right practitioner.
Require Clients to Register/Log In First
If enabled, clients must log in or register to access the portal. If new client registrations are not allowed, this setting will be enabled by default to only allow existing clients to access the portal.
Allow Group Bookings
If enabled, clients will see the option to book into groups that have not yet met their maximum number of participants.
Group Booking Label
Not every practice calls group sessions "classes". You can change the wording clients see for group bookings to match what you offer. In your group-appointment settings on this page, use the Group Booking Label dropdown to choose one of:
- Class (default)
- Course
- Group
- Workshop
Select the label that best describes your services and click Save — your Client Portal updates immediately. Hover over the tooltip icon next to the setting to see how the label is used.
Your chosen label appears across the whole client booking experience:
- Portal home page: the card title becomes "Book a {your label}", with a matching description (for example, "View available time slots and book a workshop.").
- Booking flow: the page header reflects your chosen label at each step.
- Booking confirmation: the group title shows your selected label.
- Booked appointment details: your label appears on the appointment summary.
Show Service Price
If enabled, clients will see service prices when viewing the list of services to book. This setting is enforced when payments are optional or required.
Request Payment When Booking
It is possible to set up credit card payments via the Client Portal when clients book individual sessions or book a class:
You have the option to have the payment of the associated individual or group service
- Disabled which means there will be no option to pay for a service online via the Client Portal.
- Required which means clients cannot book without paying upfront.
- Optional which means the credit card details are prompted but it is not compulsory to book an appointment.
Payments will only be taken if the practitioner for the appointment is linked to Stripe, or if the account has a business Stripe account connected.
✔️ Practices are also able to pass the Stripe processing fees to clients when they pay for their invoices online. See the detailed guide here.
Earliest Time Clients Can Book
Select the earliest interval in which a client can book an appointment from the current time.
This setting determines how soon clients can access your available appointment times. For example, if you select 'three days ahead,' clients will be unable to view or book appointments within the next three days. If today is Monday, your availability will become visible to clients starting from Thursday of the same week.
Limit How Far Clients Can Book
This setting allows you to control how far in advance clients can view and book your available appointment times. For example, setting this limit to ‘3 months ahead’ means clients can only see and book appointments within the next three months. If today is January 1, availability will be visible to clients through to March 31 of the same year—dates beyond that will not appear as bookable options.
Minimum Gap Between Bookings
Sets the buffer that is enforced around existing client appointments booked through the portal. This setting does not create a fixed cycle for all visible start times on an empty calendar.
To understand how this setting works, first check how your available start times are created:
- The Client Portal starts with the practitioner's availability, service duration, and any value selected in Display Start Times Every.
- If Display Start Times Every is left as Select, the portal uses the selected service duration as the start-time interval. For example, a 50-minute service can show available starts every 50 minutes when the calendar is otherwise empty.
- If an appointment already exists, Zanda removes the appointment time plus the configured minimum gap before and after that appointment from the available times shown to clients.
For example, if a 50-minute client appointment is booked at 9 AM and Minimum Gap Between Bookings is set to 20 minutes, the Client Portal will protect the time from 8:40 AM to 10:10 AM around that appointment. The next available time depends on the remaining practitioner availability and the Display Start Times Every setting.
🚨 Important Note
The gap between appointments does not apply to Personal Appointments. If you have a time slot blocked by a Personal Appointment, the Client Appointment will be booked straight after it without the configured time gap buffer.
Cancellation Policy
- You can choose to allow clients to cancel their appointments through the Client Portal, or you can restrict this option using the cancellation policy settings. You also have the flexibility to define how many days in advance a cancellation is permitted—clients will only be able to cancel within this window. Outside of the allowed time frame, clients will receive a notification instructing them to contact your practice directly to request a cancellation.
- If the 'Cancellation Policy' is set to 'No Cancellations Via Portal', clients will not see the 'Cancel Appointment' button next to their appointment.
🚨 Important Note
- If cancellations are allowed via the portal and there are no payments associated with the cancelled appointment, the generated invoice will be deleted.
- If a payment is associated with the appointment, the invoice and payment will remain active. In this case, you will need to unallocate the payment and delete the invoice manually if required.
Reschedule Policy
Select the policy for allowing clients to reschedule their appointments online via the Client Portal. You can choose a cut-off time (e.g., 6 hours before the appointment) up to which clients can change their booking times. See Allow Clients to Reschedule Appointments via the Client Portal for detailed instructions.
Default Flag Applied to Bookings
Select a flag to be applied by default to every booking made via the portal. Useful for viewing and reporting on the source of bookings in the calendar.
Display Start Times Every
Define the minute interval in which appointment times are offered to clients. Determined by the availability and existing appointments.
With this setting, you can define the start times of available appointments from the first available time slot.
If you leave this setting as Select, the Client Portal uses the selected service duration as the start-time interval. If you want clients to choose from fixed start times, choose an interval such as 60 minutes.
For example, your availability starts at 9 AM, your appointments last for 50 minutes, and you select the 60-minute interval in Display Start Times Every setting.
- When no appointments are booked yet, the available times will display as 9 AM, 10 AM, 11 AM and so on.
- When the first 50-minute appointment is booked, the client portal will display availability for this day as 9:50 AM, 10:50 AM, 11:50 AM and so on. If you still wish every appointment to start on the hour, add a 10-min gap between client appointments.
Booking Terms and Conditions
Any sensitive policies or conditions regarding booking/payments can be displayed here. Clients need to click the text " terms and conditions of use" in order for this to show and be read before clicking Book Now. The character limit for this field is 1900 characters, if your text exceeds this limit you are able to enter a hyperlink to link to a separate page.
FAQs
❓ Can I rename the Book Class button on the Client Portal?
Yes, you can use one of the available label names from the dropdown on the Account Settings > Schedule > Cient Portal > Access and Settings page. The options to select are: class, course, group and workshop.
❓ Can I set a different booking gap for each practitioner?
No. The Minimum Gap Between Bookings setting is managed in your Client Portal online booking settings and applies to the online booking slots offered through the portal. To adjust when a specific practitioner can be booked online, go to that practitioner's availability and turn Online Bookings on or off for the relevant timeslots.
❓ Can prospective clients book a phone or telehealth appointment, complete an intake form, and provide card details before their first session?
Yes. Set up Phone and Telehealth Video Call locations, create the services you want new clients to book, assign those services under Client Portal > Available Services, and make sure the practitioner's availability has Online Bookings enabled for the relevant times. After the client selects a service, practitioner, and time, Zanda confirms the booking when the client completes the booking flow, or when any required portal payment is completed.
Zanda does not hold the booking confirmation until an intake form is completed. For intake follow-up, send the intake form through a Client Portal notification, a New Client automation, or a manual message, then use an Incomplete Forms automation to remind clients who still need to complete it. To collect card details without charging at booking, add the Credit Card (Stripe) linked profile field to the intake form. The submitted card details are stored through Stripe for future charges.
❓ When a client registers in the portal for the first time, which 'calendar contact' is the notification sent to?
- If a client registers on the portal without making a booking, the new client is assigned a primary practitioner. The primary practitioner for the account is set up User Menu > Account Settings > Team > Practitioners > Select the desired practitioner > Settings > Enable "Default for New Clients". The primary practitioner for an individual client can be changed any time by going to the client's profile and navigating to Admin > Manage.
- If after registration, the new client books an appointment with a different practitioner, the appointment practitioner will be set up as the client's Primary Practitioner automatically. The new appointment booked notification will be sent to the appointment practitioner.
❓ Why are my 50-minute services showing every 50 minutes when I set a 20-minute minimum gap?
This is expected when Display Start Times Every is left as Select and there are no existing appointments blocking the day. The portal uses the selected service duration to create the visible start times, so a 50-minute service can appear at 50-minute intervals.
The Minimum Gap Between Bookings setting is applied around appointments that are already in the calendar. Once a client appointment is booked, Zanda protects the booked appointment time plus the minimum gap before and after that appointment. To show clients fixed hourly start times, set Display Start Times Every to 60 minutes and keep Minimum Gap Between Bookings set to the buffer you need between booked client appointments.
❓ What should I check if a client sees "The selected practitioner is not available for this client"?
This message usually means the portal is limiting the client to their primary or assigned practitioners, and the practitioner they selected is not currently linked to that client. Work through these checks:
- Go to User Menu > Account Settings > Schedule > Client Portal > Access and Settings and review Clients Can Book With Any Practitioner. If this setting is not enabled, clients can only book with their primary or assigned practitioners.
- Open the client profile, then go to Admin > Manage and confirm the correct Primary Practitioner is assigned.
- In the same Admin > Manage area, confirm Allow New Appointments > Client can book appointments on the portal is enabled for that client.
- Confirm the practitioner has portal availability for the selected service, location, and time. For setup steps, see Setting Up Available Services and Times on Client Portal.
- If the message continues after these checks, send Zanda Support the affected client, practitioner, service, location, date, time, and the exact message the client saw so the booking attempt can be investigated.
❓ What should I check if a client receives a booking SMS with no appointment date or time?
Start with the New Appointment Booking notification in your Client Portal settings. The client SMS template should include appointment merge fields so the booking details can populate correctly.
To troubleshoot the message:
- Go to User Menu > Account Settings > Schedule > Client Portal > Notifications.
- Open the New Appointment Booking section.
- In the Client row, confirm the SMS notification is enabled and the correct SMS template is selected.
- Select Edit Template and confirm the template includes appointment merge fields such as {AppointmentDate}, {AppointmentStartTime}, {AppointmentServiceName}, or {AppointmentLocationName}.
- Save the template, then select Save Changes on the Notifications page.
- Test the setup with a test client profile and a new portal booking.
If the client received a booking confirmation but the appointment is not visible in the calendar, search the client's profile and the calendar first, then check the Deleted Appointments report. If the appointment still cannot be found, contact Zanda Support with the affected client, approximate booking date and time, a screenshot of the SMS, and whether the booking was made through the Client Portal.
❓ What should I check if a client sees "The selected practitioner is not available for this client"?
This message usually means the portal is limiting the client to their primary or assigned practitioners, and the practitioner they selected is not currently linked to that client. Work through these checks:
- Go to User Menu > Account Settings > Schedule > Client Portal > Access and Settings and review Clients Can Book With Any Practitioner. If this setting is not enabled, clients can only book with their primary or assigned practitioners.
- Open the client profile, then go to Admin > Manage and confirm the correct Primary Practitioner is assigned.
- In the same Admin > Manage area, confirm Allow New Appointments > Client can book appointments on the portal is enabled for that client.
- Confirm the practitioner has portal availability for the selected service, location, and time. For setup steps, see Setting Up Available Services and Times on Client Portal.
- If the message continues after these checks, send Zanda Support the affected client, practitioner, service, location, date, time, and the exact message the client saw so the booking attempt can be investigated.
❓ What should I check if a client receives a booking SMS with no appointment date or time?
Start with the New Appointment Booking notification in your Client Portal settings. The client SMS template should include appointment merge fields so the booking details can populate correctly.
To troubleshoot the message:
- Go to User Menu > Account Settings > Schedule > Client Portal > Notifications.
- Open the New Appointment Booking section.
- In the Client row, confirm the SMS notification is enabled and the correct SMS template is selected.
- Select Edit Template and confirm the template includes appointment merge fields such as {AppointmentDate}, {AppointmentStartTime}, {AppointmentServiceName}, or {AppointmentLocationName}.
- Save the template, then select Save Changes on the Notifications page.
- Test the setup with a test client profile and a new portal booking.
If the client received a booking confirmation but the appointment is not visible in the calendar, search the client's profile and the calendar first, then check the Deleted Appointments report. If the appointment still cannot be found, contact Zanda Support with the affected client, approximate booking date and time, a screenshot of the SMS, and whether the booking was made through the Client Portal.
❓ Can I offer multiple locations with the same availability for online bookings?
Yes, you can. When the available spot is booked in one Location, the other locations are blocked out on the appointment practitioner calendar, to prevent double-booking.
💡 For home visit services, see Setting Up Available Services and Times on Client Portal for guidance on using locations, services, practitioner availability, and payment settings together.
❓ Can I let existing clients book appointments but prevent new clients from booking until we give them permission?
At this time, it isn't possible to restrict new clients from booking appointments through the Client Portal while allowing only existing clients to do so. The current functionality allows any client—new or existing—to book an appointment once they are logged in to the portal.
Workaround Solution:
A possible workaround is to create a dummy practitioner profile that acts as a placeholder for new clients:
- Create a dummy practitioner profile (e.g., "New Client - Pending Review") and set it as the default for new clients, with no availability or services enabled for that profile.
- Navigate to User Menu > Account Settings > Schedule > Client Portal > Online Bookings and disable the option 'Clients can book with any practitioner'. This prevents new clients from booking with other practitioners.
- Once your team has triaged a new client's file, update the Primary Practitioner (under Client Profile > Admin > Manage) to the practitioner who will be caring for them. This will allow the client to book appointments with their assigned practitioner.
Important: Adding a practitioner profile might increase your subscription price. We understand this isn't an ideal workaround, but we wanted to share it in case it helps until the ability to restrict new-client bookings becomes available.
Troubleshooting inconsistent or unexplained portal communication
If a client reports receiving an email that seems to reference a booking that doesn’t exist, references an empty appointment time, or is just generally unexplained, the first thing to check is the portal notification settings.
Go to User Menu > Account Settings > Client Portal > Notifications and review the notifications that are set to be sent whenever a client performs one of the actions listed. Ensure that there are no misplaced or incorrect templates used in any sections (ie. an appointment reminder template for when a new client registers).