Setting booking constraints
Using constraints, you can guide the behavior of both your schedule and users. This allows you to specify in detail how many bookings can be created and at what time.
Schedule constraints
Via Configure > Resources (or Configure > Services in case of a Service schedule) various constraints are available to control the behavior of your schedule. These let you define limits per user and/or slot. Various time constraints help you to control when users can book any resource or service.
Limits per user
Each of the schedule types allows you to control how many appointments users can make per day, week or month, in total or in the future. Such constraints can be useful, for example, when you work with a membership structure that allows a limited number of bookings per member per week.
Limits per slot
In addition to these limits per user, Capacity schedules also allow you to control the number of bookings that can be made per slot (default capacity per slot). You can also specify how many times a slot can be booked at the same time by the same user. If you specify a value other than one, this option will add a “Quantity” field to the booking dialog, allowing users, for example, to specify the number of seats they want to book.
By default, capacity information is visible to all users. If you choose to hide it, information on whether a slot is available or not is shown instead.
If you allow users to make multiple bookings for the same time period then they can also create multiple bookings for the same slot. This can be useful to allow a user to make a booking for friends with their own user account, for example.
Waiting list
If you constrain the capacity of slots, you have the option to allow overbooking. Once a slot reaches capacity, additional bookings will be placed on the waiting list. Overbooking can be restricted to superusers and the administrator or allowed for all users of your schedule. In case of the latter, you can choose to put users on the waiting list automatically or leave it up to users themselves whether they want to be put on the waiting list.
You can choose whether users from the waiting list will get placed automatically once another booking gets cancelled or whether you will do this manually.
A user who gets placed on the waiting list will be notified according to the general notification settings. Provided email notifications are enabled, users will also receive an email confirmation upon being placed.
Note that upon enabling the waiting list feature, an additional setting will appear under Require payment or approval? on the Configure > Process page; this setting allows waitlisted users to pay upon placement rather than upon booking.
Time constraints
Depending on the type of schedule, you have several constraints available to control the length and/or start time of bookings.
Length of reservations
On a Capacity schedule, the length of a slot determines the length of reservations. The default slot length can be set via Configure > Resources. This length is used for any new slots you create on your calendar. You can, however, easily adjust an individual slot’s length from the default upon creation, or after it has been created. Changing a slot’s length or description, or moving it to another date, does not in any way affect any bookings that it may contain.
In case of a Resource schedule, you can choose from three ways to determine reservation length. You can choose to let users determine start and finish times, work with fixed lengths or let it depend on the resource or service selected from a drop-down menu, the so-called ‘length selector’.
Apart from a default length, the first option also allows you to enforce a minimum and maximum length. Furthermore, the Buffer time field can be used to schedule some time between subsequent bookings, for example because you need some time to clean up between two appointments.
When using the fixed length option, the default length field is used to specify the length of every booking made. You may also want to specify some time between two subsequent bookings, using the Buffer time field.
Upon selecting the third option, a new text area will appear where each of the options for the length selector must be entered as a separate line. Such a line may consist of a short description of the resource/service, followed by a duration in H:MM or D:HH:MM format. Optionally, you can also add a price (see also Setting prices). Note that this feature uses one of the two available customizable fields of the schedule.
Start time constraints
Apart from the length of reservations, you can also configure your schedule in such a way that it allows users to create bookings at specific start times only. You can either specify start times explicitly, i.e. 9:00 AM, 9:30 AM, 10:00 AM, etc., or provide a so-called ‘pattern’. The pattern *:00, *:20, *:40
, for example, would allow new bookings to start every hour, on the hour, as well as 20 and 40 minutes past.
By selecting combine multiple schedules then the start constraints of the schedules will be logically combined as well, allowing for some truly complex patterns. You could use this to change the start time to be different on a single day, for example. This option is not available when you round times to whole days.
an additional field appears where you can specify when appointments can start each day. If youThe option
will make a single open spot available at a time. This forces people to make adjacent bookings which prevents open holes in the schedule, a concept sometimes referred to as “cluster booking”. When an appointment is cancelled that space will first open up to fill the gap. As administrator, you will still be able to click the start time and manually adjust it to book anywhere.When you don’t use start time constraints, appointments can potentially start anywhere. In that case you may consider setting an appropriate rounding time. That way you can avoid that users book irregular times like 12:07 to 12:23, which would leave your schedule full of holes. When you use the rounding times feature in combination with start time constraints, only the finish time will be rounded.
When you select Round times to the nearest day, the user interface will omit displaying hours and minutes. This is useful for multi-day events, like renting out a vacation home, where it wouldn’t be appropriate to specify a time in minutes. You can further restrict the times during which clients can book by specifying your opening hours and adding special days such as national holidays and vacations. This can be done via Supervise > Opening Hours / Special Days.
Process constraints
In addition to the schedule constraints discussed above, there is also a small set of constraints that let you control the timing of the booking process itself.
Adding and changing reservations
Via Configure > Process you can specify after which point in time a reservation cannot be changed or deleted anymore, as well as when reservations can be added.
Note that if you allow users to book only one day in advance, it won’t be possible for them to make a reservation for 2:00 PM the next day if it’s not yet 2:00 PM on the day before. If, instead, you want to make the entire next day available for booking, then select
.Interacting constraints on Service schedules
On a service schedule the system takes into account availability of each resource the service depends on. There are a number of scheduling constraints that can be configured on the schedule of each dependent resource:
- Opening hours
- Special days such as holidays
- Limit how long in advance a booking can be made
- Limit appointments per time period or in total
- Ensure a synced Google or Outlook Calendar is available
A time period is only available if it complies with all those constraints including the constraints for each resource that the service depends on.
The “Opening Hours” tab for each schedule, on the “Supervise” screen, has a section at the bottom that determines how the availability information is applied and a checkbox to allow the administrator to ignore all time constraints for the schedule. If you switch off a constraint there, it is also ignored in any dependent services.
All other settings on a schedule only apply to bookings made on that particular schedule. For example, only the price and payment settings apply for the schedule where the appointment was made, prices of connected calendars are ignored.