For the complete documentation index, see llms.txt. This page is also available as Markdown.

By Appointment

The Rental by Appointment type replaces the free date-range picker with a time slot selector. You define available slots for each day of the week (Monday through Sunday) — each with its own label, start/end time, price, and quantity. Customers pick a date and choose from the slots available on that day.

lightbulb-exclamation

Use this type for any service where sessions have a fixed start time and duration: spa treatments, medical appointments, photography sessions, tutoring hours, studio bookings, and similar.

Aspect
Rental by Day
Rental by Appointment

Customer selects

Free date range

A date + a time slot

Duration

Customer-defined

Fixed by slot Start–End time

Pricing unit

Price per day

Price per slot

Seasonal overrides

Special time (ST)

Special Timeslots (override slot prices)

Inventory

car_count stock

Quantity per slot (per day)

Drop-off date

Customer picks

Auto from slot end time

GD / Daily plan

✓

— Not available

Locations

✓

— Not available

1: Quick Start

1

Add General fields

Read in overview

4

Shared Fields

The following fields are shared across multiple rental types.

5

Common Fields

The following fields are shared across all rental types.

6

Customize Fields in Product Editing

You can add/remove fields in product editing.

7

Publish

Set a WooCommerce Regular Price for display purposes, then click Publish. The actual booking price is always calculated by BRW settings.

2: Choose Rental Type

  • Step 1: Add new product

  • Step 2: Setup

    • Product data: Rental

    • Rental Type: Appointment

3: Pricing Settings

3.1 Time Slots (per weekday)

Define the available booking slots for each day of the week. Each day has its own independent table of slots. Days with no slots configured are treated as unavailable.

Use Location (use_location): Checkbox at the top of the Time Slots section. When enabled, a Location column appears in every day's slot table, allowing each slot to be tied to a specific place (e.g. Room A, Branch 2).

Per-day slot table columns — meta key pattern uses {day} = monday, tuesday, … sunday:

Column
Meta key
Description

Label

time_slots_label[{day}][]

Optional display name for the slot shown to customers (e.g. "Morning Session", "Slot A"). Leave blank to show only the time range.

Location

time_slots_location[{day}][]

Optional location name for this slot. Only visible when Use Location is enabled.

Start

time_slots_start[{day}][]

Start time of the slot (time input, e.g. 09:00). Shown to customers in the slot selector.

End

time_slots_end[{day}][]

End time of the slot (time input, e.g. 10:00). Optional — if blank, only the start time is displayed.

Price

time_slots_price[{day}][]

Price for this slot. This is the booking price charged when a customer selects this slot.

Quantity

time_slots_quantity[{day}][]

Maximum number of simultaneous bookings allowed for this slot on any given day. Acts as per-slot inventory.

You can add multiple slots per day. For example, Monday can have a 09:00–10:00 slot at $50 (qty 2) and a 14:00–15:00 slot at $60 (qty 1). Each slot is booked independently.

3.2 Special Timeslots (ST)

Override the price of all slots within a specific date-time window. When a booking date falls inside an ST window, every slot on that date charges the ST price instead of its configured slot price.

Column
Meta key
Description

Price

special_price[]

The override price applied to all slots during this window. Replaces individual slot prices entirely.

Start date

special_startdate[]

Start of the special window (datetime picker — date + time).

End date

special_enddate[]

End of the special window (datetime picker — date + time).

lightbulb-exclamation

Example: Holiday surcharge — Dec 24 00:00 → Jan 2 00:00 at $80. Even if Monday normally has a $50 slot and a $60 slot, both will charge $80 during this period.

3.3 🏆 Pricing Priority

When a booking date falls within a Special Timeslot window, that price takes over. Otherwise the individual slot price applies:

>

square-check

4: Shared Fields

The following fields are shared across multiple rental types and are documented on the Shared Fields page to avoid repetition.

Appointment type has a minimal set of shared fields — no Locations, no Drop-off date (slot end time determines it), no Inventory (slots have their own Quantity).

Click any card to go directly to that section.

5: Common Fields

These features are shared across all rental types. Note: Inventory & Quantity in Common Features refers to the global stock counter — Appointment type uses per-slot Quantity instead of the global inventory.

6: Customize Fields in Product Editing

When you create a product and want to remove unnecessary fields, you can follow these steps in Customize - Rental Type

Last updated