1. Documentation /
  2. Bookings Use Case: Reserve All Resources with a Single Booking

Bookings Use Case: Reserve All Resources with a Single Booking

This bookings use case will walk through how to use WooCommerce and WooCommerce Bookings to set up reservations with multiple resources. Resources are physical items or people who are required for the booking, and who can only be used by one booking at once.

This scenario shows you how to book a package with subset of resources, or how to book a package using up all resources at once.

Scenario

↑ Back to top

You own an Arctic Adventure business where you offer two packages: a Basic Package and a Premium Package.

You have 40 snowmobiles that can be rented at any given time. The Basic Package is for a group of up to 40 people which allows you to select the amount of snowmobiles you will be renting. With the Premium Package, you would like for all 40 snowmobiles to be automatically reserved if a customer reserves a time.

This example will show you how to configure both the Basic and Premium bookable products.

Requirements:

  • Snowmobile packages are sold in set 5-hour sessions. They are available every day with either a 6 a.m. booking or a 11 a.m. booking.
  • If there are some snowmobiles already used by a basic package booking, then the premium package is not available in that time slot, because it requires all 40 snowmobiles to be available.
  • If there is a premium package booked, then all 40 snowmobiles are reserved, and the basic package would not be available at that time as there are no snowmobiles available.

Products Used

↑ Back to top

Setup and Configuration

↑ Back to top

Creating Two Bookable Products

↑ Back to top

For this scenario, we will require two separate products.

One product will be the Premium Package, where customers are reserving the full set of 40 snowmobiles as a block.

One product will be the Basic Package, where customers can book any number of snowmobiles between 1 and 40, based on availability.

To create the two products, run through this process twice:

  1. In the sidebar of your WordPress Admin, click on Products.
  2. Click on the Add New button on the top.
  3. Enter a title for each of your packages – one will be Basic Package, and one will be Premium Package.
  4. Under Product data on each, select Bookable Product.

General Settings for the Premium Package

↑ Back to top
  1. On your newly created Bookable Product (Premium Package), scroll down to the Product Data > General tab.
  2. Check the Virtual box to indicate that this product is virtual, as there is no physical item to be delivered. This will cause orders for these packages / bookings to be automatically marked as Complete once they are paid.
  3. Check the Has Persons box to indicate that this type of package has a number of persons. Although the Premium Package is for a specific number of persons (40), we will require this setting in order to assign the 40 snowmobiles to this package, as they are assigned on a per-person basis.
  4. Set the Booking Duration to be Fixed Blocks of 5 Hours, as both snowmobile packages are sold in 5 hour blocks.

Bookings Use Case - Multiple Resources - General Settings
The image illustrates how the General tab settings are configured including enabling Has Persons, Has Resources and the Booking Duration.

Setting up Resources for the Premium Package

↑ Back to top
  1. In the Product Data box, click on the Resources tab. This is where you attach a physical resource to your product and assign a price per resource.
  2. Enter a label for the resources – in this case, Snowmobiles. The snowmobiles are a physical item that can only be used by one visitor at a time; once they are assigned to a visitor as part of a package, they are “claimed” and cannot be used by any other customers.
  3. Set Resources are… to Automatically assigned . This means that with every person added to the package, a snowmobile is automatically claimed. For the Premium Package, we will be setting it up so the package includes 40 people and thus claims all 40 snowmobiles.
  4. Click the Add/link Resource button to add a new resource. Give it the name “Snowmobiles.”
  5. Set a price for the Snowmobile rental. In this case, we will use the Block Cost, which is a price-per-block booked. The price for the snowmobile rental for the 5-hour block is $80 in this scenario.

Additional detail is required to complete the Snowmobile Resource, but we will complete that in a future step.

Bookings Use Case - Multiple Resources - Resources Settings
This image shows how to assign resources to the bookable product.

Setting Availability for the Premium Package

↑ Back to top
  1. In the Product Data box, click on the Availability tab. Here, we will set the days and dates that the packages are available.
  2. The Max Bookings per Block setting is ignored when Resources are in use, so this setting is not required.
  3. Set Minimum block bookable and Maximum Block Bookable for allowed days in advance the room can be booked. In our example here, we are using a 0 day minimum, meaning same-day bookings are allowed, and a 12 month maximum, meaning tickets can be purchased for dates up to a year in advance.
  4. Setting the All dates are… to not-available by default is often the best approach when creating complex availability rules. It’s easier to then add days and dates when the booking is available in the Range Box. In this case, we will take that approach and set this setting to not-available by default.
  5. Use the Range Type and Days/Dates to set a daily Time Range of 6 a.m. to 4 p.m. and mark these times as available for booking by setting the Bookable column to Yes. Note that since the packages are booked in 5 hour blocks, this results in two available booking times each day – 6 a.m. and 11 a.m.
Bookings Use Case - Multiple Resources - Availability Settings
This image shows the availability and time range settings.

Setting up Persons for the Premium Package

↑ Back to top
  1. Set both Min Persons and Max Persons to 40. This means that there has to be exactly 40 persons to book this reservation.
  2. Check the option to Multiply all costs by person count. This will charge for the booking 40 x the cost of the snowmobile rental, as it is the only assigned cost the moment. Setting up the price in this way allows you to change the snowmobile rental cost in the future and have the price of the package update accordingly.
  3. Check the option to Count persons as bookings to link the amount of resources and persons together – 40 snowmobiles and 40 persons. This ensures that when a booking of the Premium Package is made, 40 persons will automatically be added and that will use all 40 snowmobiles.
Bookings Use Case - Multiple Resources - Person Settings
This image shows the settings for Persons, including a min/max and cost per person setting.

Publishing the Product

↑ Back to top

As with all WooCommerce Products, you can optionally add a Product Image, Product Categories, and Product Tags for the Premium Package product.

Then, publish the product using the blue Publish button in the top right corner.

Complete Resource Setup

↑ Back to top

Now that the Premium Package product is complete, we need to finish setting up the resource, Snowmobiles.

  1. Return to the Resources tab under Product Data on the Premium Package product editing page, and click Manage Resources near the bottom of the tab.
  2. A new browser tab opens and shows you the Bookable Resources you created near the start of this use case, in this case, “Snowmobiles.” Click the name of the resource to edit it.
  3. Change the Available Quantity to 40 . This tells Bookings that there are up to 40 physical snowmobiles available to be reserved with any bookings product that uses this resource. The 40 snowmobiles will be shared across all products that make use of this resource; this means that:
    • the Premium Package can only be booked if all 40 snowmobiles are available
    • when the Premium Package is booked, any other products that require snowmobiles (i.e. the Basic Package) would not be available, as all snowmobiles are in use
Bookings Use Case - Multiple Resources - Manage Resources Link
This image illustrates where to manage the resource, per Step 1 of the Complete Resource Setup.
Bookings Use Case - Multiple Resources - Set Available Quantity for Resources
This image illustrates where to add the resource quantity, per Step 3 f the Complete Resource Setup.

Setting up the Basic Package

↑ Back to top

We’ll now set up the second product, for the Basic Package. This package allows a variable number of persons to be booked for a package, with a matching number of snowmobiles for the number of persons.

To set up this second product, work through the same steps above as for the Premium Package, with the following tweaks:

  • General Settings: same as above
  • Resources Settings: for the Basic Package, instead of clicking the button to add a new resource, use the dropdown to choose the existing Snowmobiles resource and then click to Add Resource. This ensures the two products share the same set of snowmobile resources.
  • Availability Settings: same as above
  • Persons Settings: For the Basic Package, set the Min Persons option to 1, and Max Persons to 40. This allows the Basic Package to be booked for a variable number of people between 1 and 40 and assign the matching number of snowmobiles to the booking. Note that any booking of the Basic Package will block the booking of the Premium Package in the same time slot, as not all 40 snowmobiles are available any longer.
  • Publishing the Product: same as above
Bookings Use Case - Multiple Resources - Choose Existing Resource
This image shows to select the existing resource from the Resource drops down.

Customer View

↑ Back to top

On your website, this is what customers will see for the Premium Package:

Bookings Use Case - Multiple Resources - Customer View - Premium Package
This image illustrates the frontend of the Premium Snowmobile Package

And this is what customers will see for the Basic Package:

Bookings Use Case - Multiple Resources - Customer View - Basic Package
This image illustrates the front end of the Basic Snowmobile Package

Questions and Support

↑ Back to top

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

  • Have a question before you buy this extension? Please fill out this pre-sales form – please include the name of this extension in your query.
  • 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