Bookings Use Case: Custom availability with date and hour range

This scenario will walk through how to use WooCommerce and WooCommerce Bookings to create a bookable product with a custom availability range including specific times, days of the week, and excluding a specific date.

Scenario

↑ Back to top

You’re looking to offer a bookable product at your shop but it is a limited product and will only be available during a specific time frame, on a single day of the week. You also need to account for a specific date when the product is normally available, but your shop will be closed.

This bookable product should:

  • Only be available on Mondays 8:00 AM to 4:00 PM
  • Not be available on September 16, 2024

Products Used

↑ Back to top

Setup and Configuration

↑ Back to top

Setting up this use case has three steps:

  1. Creating the bookable product
  2. Configuring the General settings
  3. Configuring the Availability settings

Creating a Bookable Product

↑ Back to top

First we’ll create a new bookable product to configure:

  1. In the sidebar of your WordPress Admin, click on Products.
  2.  Click on the Add New button on the top.
  3.  Under Product data select Bookable Product and click the Virtual checkbox.

Configure the General Tab

↑ Back to top

In our bookable product, we’ll configure the general settings:

  1. Select the dropdown menu next to Booking Duration and select Fixed blocks of, enter 1 in the next field, and select Hours as the measurement of time in the final dropdown.
  2. Check the “Virtual” box to remove shipping costs and calculations.
This image shows the General tab with fixed blocks of time applied to the booking duration

Configure the Availability Tab

↑ Back to top

To set our product’s availability, we’ll configure the following settings

  1. On the Availability tab select the dropdown next to the All Dates Are setting and select not-available by default (Note: This setting will be overridden by the availability ranges listed below.)
  2. Next to the First Block Starts At field enter 08:00 AM
  3. At the bottom of the tab, click Add Range, in the newly added table click the dropdown under Range Type and set it to Monday. Under Range enter the available times of 08:00 am to 04:00pm and finally, under Bookable select Yes
  4. Click Add Range a second time, under Range Type select Date Range , in both date fields select September 16 2024, under Bookable select No, and finally under Priority enter 9
  5. Publish and save the product.
This image shows the availability tab with a custom availability range configured and a specific date in the future restricted

Now our product is configured and visible on the front end of the shop.

Usage

↑ Back to top

This is what your customer will see when visiting the front end of your site.

This image shows the customer view of a bookable product with custom availability and a restricted date

Questions and Support

↑ Back to top

Something missing from this documentation? Do you still have questions and need assistance?

  • Have a question about a specific extension or theme you’d like to purchase? Click here.
  • Already purchased and need some assistance? Get in touch with a Happiness Engineer via the WooCommerce.com Support page and choose this extension name from the “I need help with” dropdown.
Use of your personal data
We and our partners process your personal data (such as browsing data, IP Addresses, cookie information, and other unique identifiers) based on your consent and/or our legitimate interest to optimize our website, marketing activities, and your user experience.