1. Documentation /
  2. Introduction to WooCommerce Bookings /
  3. WooCommerce Bookings Store Manager Guide /
  4. Creating a Bookable Product

Creating a Bookable Product

To accept bookings, you need to create a bookable product. Bookable Products are different than simple products of WooCommerce. Bookable products are specifically designed for businesses that offer time-based services or rental options. These products allow customers to book and schedule appointments, rentals, or reservations for specific dates and durations.

You can create a booking product from pre-defined templates located at Bookings > Add Product or from within the “Templates” tab on the “Edit Product” page. You can read more about it here.

How to Create a Booking Product

↑ Back to top

If you are looking to create a booking product from scratch, please follow the below steps:

  1. Go to: Products > Add New. A familiar WooCommerce interface for product creation appears.
  2. Enter a title and description for your product.
  3. Scroll down to Product Data and select Bookable Product in the dropdown menu.
  4. Tick the Virtual checkbox, if your product does not require shipping. This omits the Shipping Costs tab from your product.
  5. Fields will change to reflect bookable products.

General Settings

↑ Back to top

The General settings include information about tax, booking duration, calendar display, confirmation, and cancellation preferences.


↑ Back to top

Select the appropriate Tax status and Tax class for this product, should you need to charge tax or not.

Booking duration

↑ Back to top

This determines how long a booking lasts. The duration can be admin-defined (fixed block) or customer defined (they need to input on the front-end). Duration units can be Hours, Minutes, Days, or Months.

  • Fixed blocks have a set duration that you define. The customer can only choose one block which will last the defined amount of time. For example, a hairdresser appointment lasts one hour and you can only book one at a time.
  • Customer-defined blocks have a set duration, but the customer can choose how many blocks they want. For example, the co-working space is rented out in hourly intervals, and the customer can define how many 1-hour blocks they would like to rent.
    • If you set your Booking duration to be customer defined:
    • A minimum and maximum allowed value can be included in the General tab. This sets the minimum duration the booking product can be booked by a customer. (It is possible to use 30-minute blocks and set the minimum to 2 blocks. Your customers now need to book at least one hour and can add increments of 30 minutes).
    • A customer-defined duration with blocks in minutes/hours will display a dropdown.
A booking can be set in blocks using minutes, hours, days, weeks, and months. If using hours and minutes, you can specify what time the bookings start under Availability Settings.

Calendar display mode

↑ Back to top

Select Calendar always visible or Display calendar on click. By default, the calendar is set to always show.

The appearance of the calendar when Calendar always visible is selected (calendar is visible, one month at a time, starting with the current month)
The appearance of the calendar when the Calendar is always visible is selected

The appearance of the calendar when Display calendar on click is selected (moth, day, year fields awaiting input)
The appearance of the calendar when Display calendar on click is selected

Enable Calendar Range Picker

↑ Back to top

If the Booking duration is set to be Customer defined with a unit of Days, then another option will be shown to “enable the calendar range picker” within the General settings.

Enabling this allows customers to select a start date and an end date for their booking within the calendar itself.

Enable Calendar Range Picker? is enabled, this allows the customer to select start and end date for the booking

When Enable Calendar Range Picker? is not enabled, the Duration selector indicates the number of days required.

When the setting"Enable Calendar Range Picker?" is not enabled, a Duration selector above the calendar needs to be used. to indicates the number of days required
Enable Calendar Range Picker? is not enabled

Requiring Confirmation

↑ Back to top

If the booking needs to be reviewed by an admin before confirmation, tick the “Requires confirmation?” checkbox. Rather than taking the payment at checkout directly, the user inputs details, and submits them for approval.

To learn more, see Managing Bookings.

Bookings requiring approval will remove other items from the cart. They must be checked out alone, so payment gateways can be safely disabled.

If the “Requires Confirmation?” checkbox is ticked:

  • Check Availability option will be the only payment gateway presented when checking out
  • other items will be removed from the Cart when this bookable product is added to the Cart

Please note that the Check Availability “payment gateway” can’t be enabled/disabled under WooCommerce > Settings > Payments like other gateways can, and is displayed/hidden based purely on a Bookable Product requiring confirmation being in the Cart.

Once the booking is approved by the admin from the backend, the customer receives another email to then submit payment.

Allowing Booking Cancellation

↑ Back to top

You may choose whether you want the customer to have the option to cancel their booking. 

Availability Settings

↑ Back to top

Availability (what slots can be booked) can be controlled via the Availability tab. Learn more about booking availability settings at: Availability Settings

It is also important to understand how the “Priority” setting allows you to establish a priority order for determining the availability rules of your bookable products or services. Learn more about priority settings at: Understanding How Priority Affects Availability Rules

Costs for Bookable Products

↑ Back to top

Costs for specific slots are controlled from the Costs tab. Continue reading about costs here.

Persons Settings

↑ Back to top

If the booking can be made for multiple persons at once, tick the “Has Persons” checkbox. Continue reading about persons here.

Resources Settings

↑ Back to top

The “Resources” setting refers to a feature that allows you to define and manage the various resources required for your bookable products or services. Resources can represent anything necessary for fulfilling a booking, such as rooms, equipment, staff members, or any other tangible or intangible assets. Please learn more about Resource Settings at: Resources.

Adding & Managing Resources 

Please learn more about Resouces at: Resources in Bookings


↑ Back to top

You can export a bookable product to another site or share it with support to assist with troubleshooting. To learn more about exporting a bookable product at: Export Bookings