ActiveManage Docs ← Back to activemanage.co.uk

Availability and Time Slots

The calendar's available slots are the union of its working-hours rules minus any conflicts (existing bookings, blocked dates, holidays). Getting this right matters because it directly drives what end users see when they try to book.

Recurring availability

The base layer is default working hours per weekday. For each day of the week, pick:

  • Open / closed.
  • Opening time if open.
  • Closing time.

Three real-world weekly availability patterns:

  • 9-5 office hours: Mon-Fri 9-5, Sat-Sun closed.
  • Retail-style late nights: Mon/Wed/Fri 9-5, Tue/Thu 9-7, Sat 10-3, Sun closed.
  • Weekend services: Sat-Sun 9-5, Mon-Fri closed.

Date-specific overrides

On top of the recurring availability, configure date-specific exceptions:

  • Holidays — closed on specific calendar dates.
  • Special opening — e.g. Sunday opening for a sale.
  • Reduced hours — half-day closure on specific dates.
  • Per-resource exceptions — "Dr. Smith is on leave from 1-7 Oct".

Each exception is a row in the calendar's blackout-dates table. Add as many as you need; they're processed alongside the recurring rules when slots are computed.

Slot computation

When the platform renders the booking grid for a specific day, it:

  1. Looks up the day's working hours (recurring config + any overrides).
  2. Generates slot start times by walking from opening time, incrementing by slot duration + buffer.
  3. For each potential slot, checks if it's already booked (counting capacity).
  4. Excludes slots that fall within the lead-time window from now.
  5. Excludes slots beyond the booking window.

The remaining slots are what the user sees as available.

Three real-world slot configurations

Example 1: 30-minute doctor's appointments

Slot duration: 30 mins. Buffer: 0. Working hours: 9-5. Result: 16 slots per day (9:00, 9:30, 10:00, ..., 4:30). Each slot is 30 minutes long, capacity 1.

Example 2: 60-minute massage with cleanup time

Slot duration: 60 mins. Buffer: 15 mins. Working hours: 10-7. Result: about 8 slots per day (10:00, 11:15, 12:30, 13:45, 15:00, 16:15, 17:30 — the last full slot ends at 18:30, fitting the 19:00 close). The buffer prevents bookings stacking back-to-back without recovery time.

Example 3: 90-minute group fitness class

Slot duration: 90 mins. Working hours: 7-8:30 morning class, 18-19:30 evening class (set via specific exceptions for the class days). Capacity: 12. Result: two slots per day, each able to take up to 12 bookings.

Screenshot of the Booking Calendar availability grid showing days of the week down one axis and time slots across the other, with available slots highlighted and unavailable slots greyed out

Multi-calendar conflicts

For environments with multiple related calendars (e.g. several staff members in the same role), you can configure conflict avoidance — a slot is only shown as available if it's free on all relevant calendars. This is useful for resource pools where any qualified team member can take the booking.

Time zones

By default, slots are shown in the calendar's configured time zone (typically the platform-wide setting). For customer-facing calendars where bookers are in many time zones, the platform can render slot times in the booker's local time zone via JavaScript.