In this tutorial, we’ll look at how to create a WooCommerce equipment rental product using a plugin. We’ll use a drone as our example product but this could apply to any kind of rentable product: e.g. party equipment, bikes, hot tubs, surfboards, etc.
Our equipment rental product will have the following features:
- Users will be able to select a start date and end date for their rental period
- We’ll be able to assign a cost per rental period unit, e.g. per day or per week
- Users will be able to select more than one item to hire during the booking period
- We’ll track inventory of the items across the entire rental period to ensure that users aren’t able to rent an item that’s out of stock
- We’ll also look at assigning different costs for our products at different times of the year
WooCommerce equipment rental plugin
In order to achieve all this, we’ll need WooCommerce and the Bookings for WooCommerce plugin:
Bookings for WooCommerce allows you to create bookable products in WooCommerce.
How to create a rental product in WooCommerce
Let’s start by setting up the product page for our rental product. In this example, we have a total of ten drones that we can rent out at any one time but we don’t need to create a separate product page for each one. Instead, we just create one product page and assign an inventory of 10.
There’s a demo version of this product here.
To create our rental product, just create a new WooCommerce product and set the ‘Product Type’ to ‘Booking’.
You can then start to enter some data related to your rental product:
- Booking unit
The booking unit is the basic duration unit that your equipment rental is measured in. We’ll select ‘Day’ here for our rental product.
- Max bookings per unit (quantity)
This is the same as inventory, i.e. the number of times this product can be rented out per booking unit (day, night, week). For our drone product, we’ll enter 10 here as we have 10 units that we can rent out at any time
- Booking start day
If you wish, you can specify a day of the week that each booking must start on. So if we only wanted to allow our equipment rental to start on Monday, we could enter that here.
- Minimum and maximum booking lengths
Use this setting to define a minimum or maximum booking length for the equipment hire.
- Postpone start
If you need to have a notice period before a rental can start, you can enter a value here
- Buffer period
Likewise, if you need a period after each rental ends, you can enter a value here. For example, you might need to check the returned equipment before making it available for the next rental
- Standard cost
This is the cost per booking unit – in our example, the cost per day for each drone
Here are our updated settings. Note that you can see the rental status of the product on the Availability tab. This allows you to track the inventory status of your equipment day by day.
We can see this rental product on the front end now:
Now the user can select the start and end dates for the booking; they can choose how many drones they want to rent; and the plugin will calculate the duration and the cost.
When the user checks out, the plugin will adjust the inventory for the product across the period of the rental.
Assigning different rental costs for different times of the year
Let’s imagine that we want to set higher prices for our equipment at certain times of the year. We can do this on the Custom Pricing Tab using the ‘Custom Pricing’ setting:
Just enter a date range where you’d like to charge a non-standard cost. Enter the new price in the ‘Cost Per Unit’ field.
If you’d like to make rentals unavailable during a certain period, just enter 0 in the ‘Cost Per Unit’ field.
WooCommerce equipment rental recap
That’s a very quick tutorial on how to rent out equipment using WooCommerce. You’ll just need the Bookings for WooCommerce plugin: