AI-generated Key Takeaways
-
Merchants can set a minimum advance booking time for services or slots at either the service level or the availability level.
-
The service level setting for minimum advance booking is defined by the
rules.min_advance_booking
field and applies to all slots for that service unless overridden. -
The availability slot level setting is defined by the
scheduling_rule_overrides.last_bookable_sec
field, which specifies the last bookable time for a specific slot using an EPOCH timestamp. -
Implementing advance booking limits in feeds does not eliminate the need to validate booking times and handle out-of-window bookings with a
SLOT_UNAVAILABLE
BookingFailure
.
Setting a minimum advanced booking time
There are many cases in which a merchant would like specific services or slots to be booked a minimum time in advance. These can be set at either the service level and/or at the availability level. If it is set at both, the setting at the availability level will be used.
Service level definition
At the
service level the field is called rules.min_advance_booking
. This field
should be set to the number of seconds in advance of the reservation start
time that the booking needs to be made. For example if the booking always
needs to be made 1 hour before the start time this field would be set to
3600 (so a booking for 3pm can be booked up until 2pm). This would apply to
all slots for that service (unless overridden by slot level definition).
JSON
"service": [ { "rules": { "min_advance_booking": 3600 } } ]
Slot level definition
At the
availability slot level the field is called
scheduling_rule_overrides.last_bookable_sec
. This
field is the last time (EPOCH timestamp) that the specific slot can be booked.
This would apply to each individual slot where this was specified.
JSON
"service_availability": [ { "availability": { "scheduling_rule_overrides": { "last_bookable_sec": 1468081800 } } } ]