Tutorials index

How to create an online booking system for a therapist

Click play to watch the video tutorial or follow the steps below.

This tutorial uses a massage therapist’s appointment schedule as an example for setting up an online resource schedule. It can be applied to different needs, such as for booking meeting rooms, photography sessions or driving lessons. You can use these guidelines for bookings made by one person at a time.

If you require group events like classes, the capacity schedule tutorial is a better option. If you want your clients to choose from a list of services, take a look at the service schedule tutorial.

Booking a one-on-one appointment

The resource schedule allows people to book one-on-one time with a person, an item or a specific space.

This tutorial demonstrates the following:

  • using the appointment schedule as a simple appointment booking tool
  • offering several appointment types and lengths in a drop-down menu
  • collecting payment with each appointment

You can view the end result on the therapist’s demo page.

Setting up the schedule in 5 easy steps

Once you have set up a new account, the most efficient way of setting up your appointment schedule is by using a build-and-test cycle:

Setting up a basic schedule using the New Schedule WizardStep

Before you begin

In order to follow the steps in this tutorial, you need to have an account. It’s free and all you need is a valid email address. After you’ve created an account log in to reach your Dashboard.

Select the appropriate schedule type

Click New Schedule in the menu on the right side of your Dashboard. You will be directed to the New Schedule Wizard. You will first need to choose whether you want to create a Resource, Capacity or Service schedule.

This is an important choice to make at the outset, because the only way to change it is to start again with a new schedule.

Select the Resource schedule, which allows people to book one-on-one time with a person, item or specific space. It is ideal for a massage therapist who cannot have two appointments that overlap.

Determine who can make changes to the schedule

For this tutorial’s purpose let’s select the option: Log in to make changes which requires clients to sign up to your appointment schedule to make a booking.

Select one or more resources

A massage therapist is the only resource that can be booked, so the first option, One: A single resource, person, object or location is best for this type of schedule. If you have more than one person or item that can be booked, you will be able to list them under the second option for multiple resources.

Name your schedule

The title you give to your appointment schedule in combination with your account name forms the URL that your clients will see when they use your schedule. You can always change it (as well as your account name) later but note that if you do so, the schedule’s web address will change accordingly. Type in the schedule’s title, for example “Therapist” and click Next.

Set your availability

The settings here provide basic constraints. You can change the opening hours for individual days (or resources). When appointments are configured to begin and end at predetermined times, the system can create a clear user interface by generating predetermined time slots (or chips) that clients can click on to make an appointment. The therapist’s appointment schedule demo shows this type of setup.

You can set appointments with a fixed length by entering “*:00, *:30”, which would make the system create a slot every half hour. It allows the users to click any spot on the calendar as per the time needs for specific treatments. You can read more tips and tricks about how to set opening hours and block off time in our availability blog.

Clicking Finish creates the schedule and makes it accessible online. You now have a functional appointment schedule. Move on to Step 2 to check that it works as expected.

Trying out the schedule to see if it works as expectedStep

To use your appointment schedule as an administrator, click Use in the main menu. Note this is only visible when you are logged in as an administrator.

Regular users will see the same appointment schedule but with fewer options. You can also find Use on your Dashboard.

You can access your Dashboard via the link provided in the top right corner of your screen. Furthermore, you can also bookmark the page in your browser for daily use.
Empty schedule

Create an appointment

Click on a time slot (or predetermined chip as can be seen in the demo) and a New reservation dialog window will appear. If this window is in an inconvenient place, you can simply drag to a more suitable place on your screen.

Creating an appointment

To set the appointment date, you can either use from the pop-up calendar or manually enter a date. By default, the system only asks for a name and a phone number but you can add additional fields to collect more booking details.

Click Create reservation and the appointment schedule will update to show the time slot has been booked. If you would like to edit the appointment, click on it again to make changes. Click Update reservation before closing it to save your changes.

Schedule with appointment
Adjusting the configurationStep

You can view and change the default settings of your appointment schedule to better match your needs by clicking on Configure in the main menu. The Overview contains a summary of all the options you can change. Here you can also temporarily block the appointment schedule or delete it entirely.

Admin resources tab

Configure the resource parameters

Resources contains the settings that define the people, things or spaces that you are scheduling. Note that Resources will look different to this when you are building a capacity schedule.

For massage therapy, the main resource is a person. You could add, for example, a second therapist’s availability to the schedule. Note that if you delete a resource, all the associated reservations will also be deleted.

You can find more information about the wide range of configurations under Access, Process and Layout in the support documentation pages.

Define your reservation

Under Term used to describe an entry, you can select a term to refer to “reservations” from the list or you can add a custom term to refer to reservations. In this example “session” or “treatment” might be preferable. This term will be used in all dialog boxes, help text and email confirmations.

Enter the singular form and the system will automatically convert it to plural where appropriate. For foreign words, enter the term as in singular and plural forms, separated by a comma, for example, “traitement de spa, traitements de spa”.

The term used to refer to a “user” can also be customized and can be found via Layout Settings. For example, you can choose “client” or “customer”. This will apply across all schedule in your account.

Limit per user

Next, determine the number of appointments a client can make under Limit per user. When the maximum is reached, the client can only change or delete existing appointments.

You can select whether previous appointments should be included in the total or whether it should only include upcoming appointments. You can also specify a separate limit for the number of appointments that can take place on the same day or in the same week.

Appointment length

There are three options for determining appointment length:

  1. The client determines the length by choosing start and finish time. You can provide minimum and maximum durations to limit their choices.
  2. All reservations have the same fixed length. Simply specify this length as a default value.
  3. The client selects the length from a drop-down list. When you select this option, a selection box where you can list the options. The accompanying instructions and help text explain how to specify the options.

The therapist’s demo schedule offers “Introduction sessions” (60 minutes), “Medium treatments” (90 minutes) and “Long treatments” (120 minutes) so in this example, select the drop-down option.


Specify what you will charge for a booking. Via the Process tab you can configure whether you require payment. The payment method can be configured via the Dashboard under Payment Setup.

You can choose a fixed price or base the price on the length of the appointment, the day of the week or several other factors. If you allow repeating appointments, the specified amount will be multiplied by the number of appointments a client makes.


SuperSaaS offers you a broad array of payment options, ranging from presenting services’ and resources’ prices to handling online payment or using our credit system. You can also offer your clients various types of discounts and promotional offers.

More information can be found under Adding payment to your schedule.

Time constraints

You can specify the default length of appointments and buffer time between them. If you set a buffer time to anything other than zero the system will block the specified time in between appointments. This can be used to provide time for setting up in between appointments.

The buffer time is not applied between the opening time and the first appointment or following the last appointment, before closing time.

In the Constrain start times field, you can list the times that your clients can select as a start time. When the start times as well as the length of appointments are fixed, the system can display a user interface with ‘chips’ the client can click on to make an appointment. In this case the default length will set the size of the chip.

Note that if you don’t enter start time constraints, an appointment can potentially start at any time, possibly leaving your appointment schedule full of holes. Set a suitable rounding time to avoid clients booking irregular times such as from 2:07 pm to 2:23 pm. If you specify start time constraints as well as rounding times only the finish time will be rounded.

Should you offer a service that allows your clients to book resources for an entire day, such as renting bicycles, you can round all times to whole days. Selecting Round all times to the nearest day will omit the display of hours and minutes.

You can further limit availability by specifying opening hours.

Testing the schedule from a visitor’s point of viewStep

Test the scheduling process from a client’s perspective to make sure you catch any errors before engaging with your clients and to ensure the appointment schedule behaves as expected. You will need to switch between administrator and user access, which is discussed under Testing the schedule you created.

Every appointment schedule has its own URL, which can be viewed via Configure under Overview. When a client enters the schedule, they will be able to log in with the link in the top right corner.

Testing the schedule
Integrating the registration system into your websiteStep

Once you are happy with the way your online booking system looks and have tested it to ensure that it behaves as expected for someone visiting your schedule, you are ready to direct people to it.

There are a few ways you can share your schedule:

  1. Put a link on your site that redirects people to your schedule
  2. Embed the SuperSaaS schedule inside a frame on your own site
  3. Add a ‘Book Now’ button to your own site and/or social media channels
  4. Put a widget on your own site that allows people to stay on your site while they book

Learn more about how to Integrate a schedule in your website.


Your appointment schedule can be displayed to users in several ways and it can be integrated into your website using an iframe, used on a mobile device or just link to SuperSaaS.


You can use the space above the schedule to give a more elaborate description or to add instructions. If you’d like to change the schedule’s appearance, there are several formatting options including changing colors and adding pictures.

Now that you have a fully functional appointment schedule, you can find useful tips to help you on work with your schedule day-to-day. You can design your own workflow with SuperSaaS using this section, which will focus on a few common operational processes that will probably be of use to most of our customers.