Services, availability, and bookings
Where things live in the app
Section titled “Where things live in the app”After you open your business from the Dashboard, the left sidebar (on desktop) groups everyday tools:
| Area | Purpose |
|---|---|
| Business | Profile, branding, timezone, contact details, Services list, public booking links, teams (if your plan includes them). |
| Availability | Recurring weekly hours and overrides for the selected person (you or a team member you manage). |
| Bookings | List or schedule view, search, filters, and Create booking for clients. |
| Contacts | Guest/client list for this business (plan feature): one row per email, updated when bookings are created. See Contacts, consents, and client terms. |
| Coupons | Discount codes (when your plan includes them). See Coupons. |
| Reports | Period stats and payment inflows. See Reports. |
| Integrations | Stripe Connect, calendars, etc. |
Paths in the browser look like /businesses/{id}/… - you rarely need to type them; use the sidebar.
Services
Section titled “Services”A service belongs to one business and defines what can be booked.
Opening services
Section titled “Opening services”- Go to Business (sidebar).
- Scroll to the Services section. View: cards or table (toggle where offered).
- Add a new service or Edit an existing one (buttons or row Actions menu).
What you configure on a service
Section titled “What you configure on a service”- Name and URL slug - the slug appears in guest URLs:
/b/{business-slug}/{service-slug}. - Type - for example online meeting, in person, mobile - at customer address, configurable package (options that add price and time), or group session / class (affects how guests pick a time and which extra fields appear). Mobile - at customer address and configurable packages unlock from Starter; group session / class from Growth; Free keeps the basic online meeting and in-person (at your premises) types only - no configurable package, no mobile visits at the client address, and no group classes.
- Duration - length of the appointment in minutes (for group session / class, real start and end times come from each session you schedule; duration on the service is still used as a catalog hint for emails and snapshots).
- Buffers - optional time before and after the slot so bookings do not sit back-to-back.
- Price type
- Free - no charge in BUKMI.
- Pay on site - the guest does not pay through Stripe; you collect payment yourself.
- Paid online - requires Stripe Connect on the business and a positive price; the guest pays through Stripe after choosing a time (see Guest booking and payments).
- Active - inactive services do not appear on the public page or in the manual booking flow.
- Show on the public booking page - guest-visibility toggle (see Panel-only services below).
- Performers - which staff members can deliver the service (used with teams and availability).
- SMS - when global SMS is enabled for the business, each service can choose confirmations, cancellations, reschedules, and reminder SMS. See SMS notifications.
Some services can require a guest phone number when that option is enabled.
If you enable SMS on a service, make sure the booking form collects a phone number and the matching consent. Staff-created bookings show the same SMS consent checkboxes as the guest flow when the feature conditions are met.
Under Pricing on the service, you can optionally add Client terms (free-text conditions for this service). Insert template fills starter text from your business profile. If the field is empty, the guest does not see a terms step; if it contains text, the guest sees it with an acceptance checkbox (staff in Create booking follow the same pattern). See Contacts, consents, and client terms.
Group session / class (fixed sessions)
Section titled “Group session / class (fixed sessions)”Use this type for workshops, classes, or webinars where many guests share the same start time and you sell seats up to a capacity.
- Create or edit the service and set type Group session / class. Set default capacity and default mode (online vs in person) for new sessions, assign performers (the instructor is chosen per session).
- Open Manage sessions from the service editor. Add each run with start/end (in the business timezone), capacity, waitlist capacity (reserved for future use), and either a meeting URL or location.
- Guests see upcoming sessions with free seats on the public service page; they pick one session, then complete details and payment like any other booking.
- Cancel session on a session’s edit screen cancels the event and cancels active guest bookings on that session (with the usual notifications). You cannot move a group booking to another time using the guest reschedule link - handle changes in the panel (cancel / rebook) or edit the session where appropriate.
Weekly Availability rules still apply to 1:1 services; they do not generate open times for group services. Seat limits are enforced per session.
Plan: Group session / class is available from Growth and higher (and on free trial / internal plans that include the feature). Starter and Free cannot add new group services - upgrade under Subscription if you need this type.
For series (multi-session packages), sales modes (single vs series vs both), drop-ins, and how public pricing is shown, see Group sessions, runs, and series (cycles). For a non-binding overview of consumer-law context around refunds for dated leisure-style services, see Refunds for courses and events - information for businesses.
Configurable package (options, price, and duration)
Section titled “Configurable package (options, price, and duration)”Configurable package lets guests build a 1:1 visit from option groups (price and duration deltas), then book a normal availability slot. It is not Group session / class (scheduled sessions or multi-date cycles). Full guide: Configurable package services. Group sessions, runs, and series (cycles) covers classes and cycles.
Panel-only services (do not show on the public page)
Section titled “Panel-only services (do not show on the public page)”The switch Show on the public booking page unlocks a handy mode for daily operations:
- When on - the service appears on the business page and under its direct guest link. Standard behaviour.
- When off - the service is panel-only: you can pick it in Create booking, but a guest will never see it on the business page or under a direct link. The Services table shows a “Panel only” badge on such rows.
Use it for short slot-fillers (15–30 min), internal appointments, or trials - without breaking the minimum durations you offer to guests.
Panel-only services behave exactly the same way as regular ones in terms of availability, buffers, calendars, and reports - the only difference is guest visibility. They count against the plan’s max_services limit.
Quick service creation from manual booking
Section titled “Quick service creation from manual booking”Staff with permission to create services can add one without leaving the booking form:
- In Create booking, open the “Show services” filter and pick “Panel only” or “All”.
- Click “Add quick service” (or the equivalent button in the service picker).
- In the small modal fill in name, type, duration, and an optional price - the other fields take sensible defaults. Group session / class and Configurable package are not listed there; create those types from the full service editor so you can add sessions or option groups.
The new service is created as “panel only” (Show on the public booking page = off) and is immediately selectable in the current booking. You can refine it later in the full editor (assign performers, add an image, client terms, etc.).
Plan limits apply the same way as in the normal create flow - if you are at the max_services cap, the modal tells you.
Service visibility filter in manual booking
Section titled “Service visibility filter in manual booking”Create booking offers a “Show services” switch with three options:
| Option | What it shows |
|---|---|
| Public | Only services visible to guests. Default. |
| Panel only | Only panel-only services. Useful for short gap-fillers. |
| All | The full list. |
The filter does not apply to guests - they always see only what has Show on the public booking page turned on.
Plan limits
Section titled “Plan limits”Your subscription plan may cap how many active services you can run. When you hit it, upgrade or deactivate an old service from the Business page.
Teams group people who work together. Each has a role (manager or member). Services and availability can be tied to specific people. Teams sit under Business when your plan includes team seats. Details: Teams and invitations.
Availability
Section titled “Availability”Availability is managed in two layers:
- Recurring rules - typical weekly hours (for example Mon–Fri 09:00–17:00) for the selected person.
- Overrides - adjustments for specific calendar days: closed, special hours, or otherwise different from the weekly template.
In the UI
Section titled “In the UI”- Open Availability from the sidebar.
- If you can manage others’ schedules, use the person selector at the top to choose whose hours you edit.
- Recurring hours - each row is a weekly rule (day + hours). Add (or the empty-state button) opens Add recurring hours.
- Overrides - Add override opens a form where you first choose Single day or Date range (segmented control). For a single day, pick one date. For a range, pick From and To (inclusive); the same rule (Unavailable / whole day off or From / To times) is applied to every calendar day in that range in one save. Practical for holidays or multi-day closures without entering each date separately. Range length is capped (currently up to 366 days per save). Overrides replace the recurring weekly rule for that person on each affected day.
The system calculates open slots from these rules, connected calendars (busy time), service duration, buffers, minimum lead time (business or team), optional guest booking horizon days (business setting), and any plan limits.
Bookings (list and schedule)
Section titled “Bookings (list and schedule)”Open Bookings from the sidebar. You can pick:
- List - a table (cards on mobile) with search, filters, and sorting.
- Schedule - Week or Month calendar; a dedicated day mode does not exist - on mobile, tapping a day cell in Month opens that day’s agenda; on desktop, Week acts as the daily view.
Filters and sort (list)
Section titled “Filters and sort (list)”- Filters - upcoming/past, status, service, person (if you have the permission), guest search.
- Sort - by date, guest, status; on mobile a single control combines field and direction.
- Clicking a row or card opens the booking detail (status, reschedule, performer - based on role).
Schedule - views
Section titled “Schedule - views”| View | What you see |
|---|---|
| Week | Seven day columns; on narrow screens the active day’s column is primary, with the rest reachable via horizontal scroll. |
| Month | Grid of weeks. On desktop each cell lists the next few bookings; on mobile - density dots per day and an agenda below the grid for the selected day. |
Above the schedule: Previous / Today / Next, view switch (Week / Month), and - for owners and managers - a person filter:
- Owner sees every team member and themselves.
- Manager sees themselves and the members they manage.
- Member sees only themselves - the filter is pinned.
The view state (mode, date anchor, selected person) lives in the URL, so you can send a link to a specific week or month.
Day, week, and month are always computed in the business timezone so bookings do not “jump” between columns when you work from a different zone.
Creating a booking for a client (staff)
Section titled “Creating a booking for a client (staff)”Use this when you place the appointment (phone call, reception desk, etc.) - guests who book themselves use the public page instead.
- Bookings → Create booking (primary button).
- Step 1 - Service and time
- Pick the visibility filter (Public / Panel only / All) if you need panel-only services.
- Pick a service (list or, with many services, search). Add a quick service from the modal if you need to.
- Optionally pick a specific performer; leaving it empty means “first free slot for anyone who can deliver the service”.
- Time picker:
- Soonest available - next open slots.
- Calendar - day first, then times (arrows change month).
- Continue when date and time are set.
- Step 2 - Guest details and consents
- Name and email (required).
- Phone if the service requires it or you want it on file.
- Optional internal notes for your team.
- Same consents as the public page: required operational confirmation (with a link to the platform privacy policy), optional marketing opt-in for this business, and service terms acceptance when the service has Client terms configured (under Pricing). A short summary appears before confirm; the terms block sits with the summary when applicable.
- Confirm - you return to the Bookings list. A Contact row for
(business, email)is created or updated.
Same engine as the guest flow: no slots = check Availability, calendars, and minimum lead time.
Booking lifecycle
Section titled “Booking lifecycle”A booking is a concrete appointment. Typical statuses:
| Status | Meaning (typical use) |
|---|---|
| Pending | Created but not yet final - for paid online, usually until payment succeeds. |
| Confirmed | Firm visit on the calendar. |
| Cancelled | Will not take place. |
| Completed | Treated as done. |
| No-show | Guest did not attend. |
Staff change status from the booking detail (based on role). A guest with the link can self-reschedule within the business’ rule, unless they still owe an online payment. Full flow: Reschedule and cancel.
Plans and limits
Section titled “Plans and limits”Your subscription plan may cap services, bookings per month, team seats, and which features (reports, coupons, video, online guest payments, etc.) are available. When you hit a limit, the app tells you what to change or upgrade.