Contents
Introduction
- The add-on extends Flexible Product Fields PRO with a complete set of booking fields, settings tabs, and views, allowing any WooCommerce offer to be sold as a resource for specific days or hours.
- The frontend script loads automatically only on product pages and handles AJAX communication with the availability module.
User Requirements
- Flexible Product Fields Bookings requires Flexible Product Fields version 2.8 or higher.
New Options in the Date Field

The Flexible Product Fields Bookings add-on adds a new tab to the Date field called Bookings. This tab includes the following fields:
- Number of daily slots – set how many spots you want to sell each day.
- Enable date range selection – enable if you sell date ranges (e.g. consecutive days).
- Allow overlapping bookings – allow bookings on the same day another booking ends.
Time Slots – Configuration

Add a new field of type Time Slots, which allows you to define the day of the week, start/end time, and capacity for each slot.
Field Pricing
You can enable field price calculation based on:
- Fixed amount – allows adding a fixed price value.
- Percentage – allows calculating the price as a percentage of the product price.
- Based on time slots – allows price calculation based on the number of time slots.
Conditional Logic
The behavior of the tab is analogous to other Flexible Product Fields, which you can read more about
here.
In short, the tab allows you to create rules for when to display a field.
Customer Experience
- The customer selects a date, and the slot component retrieves availability via AJAX; if no slots are available or configured, it displays clear messages (Checking availability…, No time slots available…) and availability statuses: Full availability, Limited availability, Available.
- When a customer tries to add a restricted date to the cart, the validator immediately returns an error The selected slot is unavailable, preventing overbooking.
- Date fields automatically hide days that are fully booked in the calendar, based on the order history for the next 12 months ahead.
- When an order is created, the system saves each selected time range in a dedicated table and assigns identifiers to the items.
Order List
The order list includes a Bookings column summarizing dates/times. This view also allows filtering by booking date range using two date fields above the table.
Order Editing
In the order view, under each item, you will see a Booking Details section with a description and the number of spots.
