Black Friday & Cyber Monday SUPER SALE ALL WEEK:
Grab 40% OFF on plugins

Sell Vacation Rentals with WooCommerce Booking Plugin

In the last post, we had seen How to sell hotel bookings with WooCommerce. Selling hotel bookings & selling vacation rentals are different in many ways. Hotel bookings are always of varying booking periods, whereas vacation rentals can be of varying as well as fixed booking periods. For example, some of our customers rent out vacation homes only during weekends.

In this post, we are going to learn how to sell vacation rentals using WooCommerce Booking and Appointment Plugin. This post will focus on vacation rentals that are of fixed booking periods. Vacation rentals with varying booking period shall be taken up in the next blog post.

The first step needs you to create your rentals as a new product in WooCommerce. You can do that from the Products -> Add Product link. On the same page, you would also find the Booking meta box that allows you to setup your rental home.

Under the booking options, I have enabled the booking date and multiple day booking options for the user to be able to select a start date and an end date. Up next, typically when a beach house is reserved by a customer, it is not available for further booking until that customer checks out. Hence the Lockout date after X orders option is set to 1. Once the house is booked, those dates will be unavailable for further bookings.

Screenshot for booking settings
General Booking Settings

A reservation system must allow you to specify how much time in advance you want the booking to be done. You might not want the customers to book for the vacation home just 30 minutes before the check-in time.

The WooCommerce Booking & Appointment plugin allows you to do that by specifying the number of hours in the Advance Booking Period field. It is present in the Bookable Time Period tab. I have set it to 24 hours i.e. an online booking can be done only 24 hours prior to the start date (check-in). Which means if you are trying to book today for today’s check-in, you won’t be able to do that. You will have earliest check-in of 24 hours from today, which would be tomorrow.

You might want to make sure the home is all cleaned up & ready, which could take 24 hours. This could be set to any value (in hours) based on how much lead time you need before a customer checks-in.

The Number of Dates to choose lets you determine the maximum number of days from today which you want to allow booking for. In some cases, this could be a month (30 days) or even a year (365 days). I have set it to 365 days, which means the calendar will have dates for a year from today to choose from.

Screenshot of the booking settings
Settings for bookable time period

For setting up Vacation rentals of fixed booking periods, you have to check the “Enable Fixed Block Booking” option under the Fixed Block Booking tab. This tab allows you to create multiple bookable blocks of varying periods. For example, one block could be of 2 days (weekends), another block could be of all weekdays only & so on.

To add a new block, you should click on “Add New Booking Block” button. You will be able to create one block at a time & save it. Saving it shall show that block details right below it in the “Booking Blocks” table.

Below I have created two fixed blocks, one for weekends and another for weekdays. In the “Start Day” and “End Day” fields, there is an option called “Any Days”. This means you can either select a specific weekday on which you want your block booking to start or you can choose “Any Days”. If you choose “Any Days”, then your booking can begin on any weekday. In either case, the end date (checkout date) shall be populated based on the “Number of days” for that block.

In below example, Weekdays booking can only be done from Monday to Wednesdays, with Thursday as check-out day. Weekend bookings can only be done from Friday to Saturday, with Sunday as check-out day.

The Weekdays vacation rental booking costs £400 whereas the Weekend bookings cost £600.

Screenshot for booking settings
Settings for fixed blocks

Since this is a “Simple Product”, there aren’t any specific settings under the product data section. You just have to enter the basic details like the Regular price and Sale price. For this product, you actually don’t need to even set the prices since you already did that while creating booking blocks. But for the booking fields to appear, we have set the price to £400. Since by default, the first block that shall appear is Weekdays.

Screenshot for the product data settings
Product Data-General

Once these settings are done, your frontend would appear as shown below.

Product page view
Product page view
Calendar for start dates-Weekdays block
Calendar for start dates-Weekdays block
Screenshot of frontend
Frontend for Weekdays block: Price £400.00

This is how it would appear for the “Weekends” block:

Calendar for start dates- Weekends block
Calendar for start dates- Weekends block
Screenshot of the frontend
Frontend for Weekends block: Price £600.00

In both cases, only the “Start Day” will be shown as enabled in the “Start Date” (check-in) calendar. It shows the available dates in a week and the user will have to select one according to his/her plans. When you choose the start date, it will automatically set the end date. You do not need to choose the End date by clicking on the End Date calendar. It is automatically populated. Even if the user opens the End Date calendar, they will only see 1 checkout date enabled.

Only one date available in "End Date" Calendar
Only one date available in “End Date” Calendar

Once you select the start and end dates, the “Add to Cart” button is visible. When you click on that button, the order is added to your cart and there is a button to “View your Cart”. On clicking that, you are redirected to the cart page which will show the booking details.

Screenshot of the Cart Page
Cart Page

When on the cart page, unless you don’t want to update your cart, you can go to the checkout page by clicking on “Proceed to checkout” button.

Screenshot of the Checkout Page
Checkout Page

The checkout page will show the booking dates you have chosen and the total amount for your order. You can place your order if everything seems fine. Checkout page is a dress rehearsal of the actual order. Please ensure you check everything and then click on the “Place Order” button.

Screenshot of the order details
Order Details

After placing your order, the order details are shown on the Thank You page. Email notifications are sent to the customer and the administrator with the rental booking details.

Screeshot of the admin email

Booking Rental apartments, Vacation homes, Beach houses, etc. is easily possible with above steps. As mentioned earlier, if you are booking for a fixed period, then this is the exact solution that will fit your needs.

The ability to create fixed bookable blocks is also very useful for sites that are renting equipment like kids party materials, renting mobile toilets, etc. Any website that wishes to rent or book their resources for a fixed period can use the Fixed Block Booking feature.

The plugin can handle Selling rentals with WordPress very easily. The User Interface is very simple, and mingles well with the existing WordPress / WooCommerce styling.

The ability to add fixed block bookings opens up a lot of possibilities that can use the WooCommerce Booking & Appointment Plugin for rentals. It gives you a complete solution so that you don’t have to install multiple plugins for one purpose. The versatility of our plugin sets us apart from everyone.

If you are doing this for the first time, this setup would take approximately 10 to 15 minutes.

Browse more in: Documentation, How Tos, Support, Tyche Softwares, WooCommerce, WooCommerce Booking & Appointment, WordPress

Share It:

Notify of
1 Comment
Inline Feedbacks
View all comments

[…] the last post, we had seen how to sell vacation rentals with WooCommerce. Rentals are sold by fixed booking periods as well as varying booking periods. In that post, we […]

Would love your thoughts, please comment.x