Availability
Availability rules decide which days and times a customer can actually pick. They are set per product on the Availability tab of Product Settings, on top of the store-wide defaults in Global Settings.

The tab opens with the product's availability settings panel, then the rule lists beneath it.

How availability is decided
A date or time is offered to the customer only if all of these are true:
- It is inside the store's booking window and past the minimum notice.
- It is inside the product's own Max Advance Booking and Cutoff settings.
- No availability rule blocks it.
- No existing booking is holding it — bookings in pending, confirmed or processing hold their slot.
- The resource the customer selected is free, if the product uses resources.
On the storefront the result is colour-coded: Available, Booked, Not available, and the customer's own Selected dates.
Adding a rule
- Click Add availability rule.
- Choose What do you want to control? — the rest of the form changes to match.
- Fill in the fields, set a Priority and a Status, and add an Internal Note if it helps.
- Click Create.

The list then shows the rule, a plain-language summary of what it does, and its status. Each row has Inactive / Active to switch it off and on without deleting it, and Delete — which asks "Delete this Availability rule?" first.
Tips
Use Internal Note for the reason, not the effect — "Closed on Sundays" or "Refurbishment" — so the next person to look at the list knows why the rule exists.
The rule types
| Rule | Fields | Use it for |
|---|---|---|
| Only allow selected weekdays | Allowed weekdays as a comma list, 0 = Sunday to 6 = Saturday | "We are open Monday to Saturday" |
| Block the same time every day | Closed from, Closed until | A lunch break, a cleaning window, a nightly shutdown |
| Block a specific date/time range | Blocked From, Blocked Until | A one-off closure |
| Block a closure window | Blocked From, Blocked Until | A seasonal shutdown |
| Block an exception window | Blocked From, Blocked Until | A one-off exception to your normal pattern |
| Weekly schedule with slots | A JSON schedule of days and slots, each with an optional booking cap | A full opening timetable |
| Multiple slots per day | A JSON list of slots with caps | Several bookable windows in one day |
| Block specific dates (holidays) | Dates as a comma list, YYYY-MM-DD | Public holidays, staff days off |
| Close entire month(s) | Months as a comma list, 1–12 | An off-season |
| Limit bookings per period | Mode — Per date, Per day, Per hour, Per slot — and a Limit | "No more than three tours a day" |
| Variable lockout thresholds | A JSON list of windows, each with a threshold | Different caps in different periods |
| Ad-hoc date/time block | Blocked From, Blocked Until | A last-minute closure |
| Slot override | Blocked From, Blocked Until, Force closed, Override max bookings | Change one slot's rules without touching the schedule |
| Ad-hoc slot override | As above | A one-off change to a single slot |
Weekday numbers
0 Sunday · 1 Monday · 2 Tuesday · 3 Wednesday · 4 Thursday · 5 Friday · 6 Saturday.
So 1,2,3,4,5,6 means open Monday to Saturday, closed Sunday — and that is exactly what the customer sees: every Sunday greys out on the calendar and cannot be clicked.
The JSON fields
Three rule types take a small block of JSON. Copy the placeholder shown in the form and edit the values.
Weekly schedule with slots
{"days":[{"day":1,"slots":[{"from":"09:00","to":"12:00","max_bookings":5}]}]}
Multiple slots per day
[{"from":"09:00","to":"12:00","max_bookings":5}]
Variable lockout thresholds
[{"from":"2026-06-01 00:00:00","to":"2026-06-03 23:59:59","threshold":10}]
Important
The JSON must be valid or the rule is refused with "Please fill required fields." Keep the quotation marks and commas exactly as shown, and change only the values.
Priority
Every rule has a Priority, default 10. Lower numbers are applied first. Give the rules that must always win — a holiday closure, an emergency block — a low number such as 1 or 5, and leave general patterns at 10.
Slot-based price adjustments
The second card on the Availability tab holds slot pricing, kept here on purpose so slot timing and slot price live together.
| Field | Notes |
|---|---|
| Resource ID | Optional — price a slot differently for one room or member of staff |
| Slot starts / Slot ends | The time window |
| Slot amount | The price for that slot |
| Priority, Status, Internal Note | As for any rule |
Everything else about pricing is on the Pricing tab.
Store-wide availability defaults
Set in Global Settings → Products → Global Availability. A product uses these until you save a product override.

| Section | Setting | Default | Meaning |
|---|---|---|---|
| Global Rules | Limit Future Bookings | Enabled | Enforce a maximum booking window |
| Global Rules | Default Window (days) | 365 | How far ahead bookings open |
| Global Rules | Minimum Notice (hours) | 0 | The shortest notice you will accept |
| Holidays | Holiday Dates (CSV YYYY-MM-DD) | empty | Dates closed store-wide |
| Holidays | Block Public Holidays | Disabled | Block recognised public holidays |
| Holidays | Holiday Label | Holiday | What a blocked holiday is called |
| Closures | Closed Date Ranges | empty | Store-wide closure periods |
| Closures | Weekly Off Days | empty | Days you are never open |
| Closures | Customer Notice | empty | A message shown about the closure |
| Slot Rules | Slot Interval (minutes) | 30 | The granularity of slot-based products |
| Slot Rules | Buffer Time Between Slots (minutes) | 0 | Turnaround time between bookings |
| Slot Rules | Allow Bookings Beyond Capacity | Disabled | Let bookings exceed capacity |
| Capacity Rules | Default Booking Capacity | 1 | How many bookings a window holds by default |
| Capacity Rules | Maximum Allowed Capacity | 50 | The upper limit you can set |
| Capacity Rules | Enable Waitlist | Disabled | Collect interest when full |
Warning
Allow Bookings Beyond Capacity deliberately lets you overbook. Leave it disabled unless you knowingly want to take more bookings than you can serve.
Worked examples
"Open Monday to Saturday, closed for Christmas and New Year"
- Add Only allow selected weekdays with
1,2,3,4,5,6, priority 10. - Add Block specific dates (holidays) with
2026-12-25,2027-01-01, priority 5.
Sundays and those two dates are now unselectable on the storefront calendar.
"Closed for lunch, 1 pm to 2 pm"
Add Block the same time every day with Closed from 13:00 and Closed until 14:00.
"No more than three tours a day"
Add Limit bookings per period with Mode Per day and Limit 3.
"Shut for refurbishment, 4–18 January"
Add Block a closure window with Blocked From 2027-01-04 00:00 and Blocked Until 2027-01-18 23:59, priority 1, and note Refurbishment.
Checking your work
- Open the product on your storefront.
- Look at the calendar: green days are available, red are booked, grey are not available.
- Try clicking a day you expect to be closed — it should not respond.
- Use Search Builder → Search Availability on the product tab to test a specific window without leaving the admin. See Location and Search.
