Posted on

The Ultimate Guide to WooCommerce Bookings

How should bookings be handled? Which WooCommerce bookings plugin is recommended? How do you set it up? What are other options? How can you manage bookings in bulk from one place? It's all here.

Last updated on February 12, 2024

Welcome to an in-depth guide on WooCommerce bookings.

You’ll find out how to set up bookings, how to manage bookings better, how to make more sales using bookings, how to find the best WooCommerce bookings plugin, and alternatives.

Now, without any delay, let’s begin.

How did online bookings replace manual bookings?

Booking airline tickets, making doctor’s appointments, waiting in line for movie tickets, or reserving a table at a restaurant used to be a chore.

It took me hours to get a travel ticket. There were VIP queues to get tickets faster but I was hesitant to pay for the premium prices at that time.

But online bookings have made it all better for being a quick, convenient, and bias-free approach today.

It can also serve exciting discounts and schemes on travel tickets, recliner seats at cinema halls, super deluxe rooms in hotels, spa and salon appointments, cafe table reservations, car rentals, vaccination slots…book from anywhere, anytime. Now it’s easier than ever.

What’s better…websites get more customers, instant sales. The scarcity and urgency triggers work marvelously here.

Plugins have made it easy to create products that can easily be booked and hence bookings have become applicable for WooCommerce too.

Which WooCommerce sites need to create bookable products?

It’s not just bookings. But also rentals, appointments, reservations, etc.

  • Bookings & reservations – Hotels, flights, trains, taxis, tours and travels, movies, amusement parks
  • Rentals – Apartments, rooms, cars, bikes, boats
  • Appointments – Doctors, spas, wedding photographers, make-up artists
  • Services – Pet care, online learning, house cleaning

It can also be anything else that comes to your mind related to bookings that will fall into one of these four things.

Pros of having a bookings website

This is applicable to all bookings made online.

  • Seamless booking experience – no waiting time, no money hassles. Just pick the time and pay.
  • No phone calls required – Most reservations require phone calls to and fro. We are no longer in that era.
  • Instant or quick confirmation – Customers immediately get the confirmation via email or message about their bookings.
  • Flexibility – Customers can pick booking as per their convenience, cancel or reschedule if they cannot make it.
  • Time-savings – Everything happens within minutes, in a few clicks.
  • Offers – When you pitch some offers, a resistive customer will be nudged to book a premium product.

What to look for in a WooCommerce bookings / WordPress bookings plugin?

A booking engine is not a simple calendar with a form. It depends on the type of business being run. For instance, a gym might have multiple personal trainers, each of them with their own schedule. On the other hand, a cinema hall needs to show specific times for different movies.

Bookings Woocommerce plugins makes the entire booking process a cakewalk, handling all the complexities you may think of. Here are some of the features you must look out for in a bookings plugin:

  • A customizable calendar that can be placed anywhere on your site.
  • Device-responsive interfaces for booking appointments on smaller devices.
  • Options for accepting payments for appointments.
  • Support for multiple “agents” or “service providers.” This would be where each of your workers will have their own profile and calendar, like for personal trainers or multiple doctors in one office.
  • Areas for customers to manage their online bookings.
  • A filterable booking management module on your WordPress website backend.
  • Features for customizing your schedule, such as removing holidays and setting some free time in-between appointments.
  • Email confirmations and reminders for both the admins and the users.
  • Customizable fields and drop-down menus for offering a wide variety of services.

Some smaller companies may only need a calendar for accepting non-paying appointments. However, bigger companies will need a wider range of features with beautiful templates and communication tools.

That said, let’s see how to create and sell bookings on your WooCommerce store.

Best Bookings WooCommerce & Appointments plugin

Transform your WooCommerce store into a full-fledged booking platform. Create and sell bookable products as bookings, rentals, appointments, etc. based on time and date. That’s the official WooCommerce Bookings extension, also known as the Booking & Reservations WordPress plugin.

You don’t have to make phone calls, nor do you have to fill up your calendar or papers to keep track, nor worry about payments. Everything is done automatically.

WooCommerce Bookings plugin video
WooCommerce Bookings plugin video

Top WooCommerce Bookings plugin features

  • Set specific dates and times for classes, appointments, or guided tours, which can be in days, hours, and even minutes.
  • Create buffer between bookings to take care of your other priority tasks.
  • Limit a booking to one-at-a-time or let multiple people make a reservation.
  • Flexible pricing – special discounts for group bookings, lower prices for early birds, higher prices on holidays, special prices for kids.
  • Display your availability in the customer’s timezone so they book the time they really need.
  • Automatically send out reminders about appointments with handy notification emails when a reservation is made, confirmed, and a day before the booking date.
  • Avoid double bookings for the same time. Example – If your bride books a stylist from 2:00 to 3:30, that stylist won’t appear available for that particular time slot for others.
  • Update existing bookings or availability, or filter to view specific services or resources.
  • Auto sync bookings with Google Calendar. Here’s how to add a booking calendar to WooCommerce.
  • Add customers manually from the calendar for phone bookings
  • Compatible with Smart Manager – ideal for managing bookings, bulk edit bookings, filter bookings and edit at once, export CSV, etc.

Pricing: $249

Get WooCommerce Bookings plugin

How to set up WooCommerce Bookings plugin and bookable products?

Now that you have a better understanding of the bookings plugin for WooCommerce, let’s take a look at how to set it up and manage it.

We will split this section into four steps:

  1. Installing WooCommerce Bookings plugin
  2. Creating a bookable product
  3. Configuring available booking slots
  4. Setting up the costs

What’s a Booking Period?

Certainly! The booking period is the period of time during which you can make a reservation or book a service, event, or accommodation. Essentially, it’s the time window within which you can secure a spot or a reservation for something that you want to attend, stay at, or use.

Here are a few examples to help illustrate what a booking period might look like:

  • Hotel bookings: If you want to stay at a hotel, the booking period is the time during which you can make a reservation for a room. This can vary depending on the hotel, but generally, it can range from a few months in advance to a few days before your intended stay. For instance, if you’re planning a trip in August, you might be able to book a hotel room as early as January or February, but you’ll probably need to book no later than a few days before your trip.
  • Concert tickets: If you want to attend a concert, the booking period is the time during which you can purchase a ticket. This can vary depending on the concert and the ticket seller, but generally, it can range from a few weeks to a few days before the event. For instance, if your favorite band is coming to town in June, you might be able to buy tickets as early as March or April, but you’ll probably need to buy no later than a few days before the concert.
  • Rental cars: If you want to rent a car, the booking period is the time during which you can reserve a vehicle. This can vary depending on the rental car company, but generally, it can range from a few weeks to a few days before your intended rental period. For instance, if you’re planning a trip in July, you might be able to reserve a WooCommerce rental and booking system as early as May or June, but you’ll probably need to reserve no later than a few days before your trip.

Therefore, the booking period is the time during which you can make a reservation or book a service, event, or accommodation. The duration of the booking period can vary depending on what you’re booking and the requirements of the service provider, but it’s important to book as early as possible to secure your spot or reservation.


Navigate to WordPress Admin > Plugins > Add New and upload the WooCommerce file. Activate it and you are good to go.

You’ll notice a new menu item in the sidebar, ‘Bookings’. From here, you’ll be able to create new bookable products and configure different settings related to accepting bookings.

Create a new bookable product

This plugin is extremely intuitive. You can create a bookable product much as you do for a normal product in WooCommerce.

Create bookable products using WooCommerce Bookings plugin
  • Go to: Products > Add New.
  • Enter a title and description for your product.
  • Under Product data, select Bookable product from the dropdown menu.
  • Tick the Virtual checkbox if your product is digital.

Next, we’ll enter the details of the bookable product.

Bookable product settings

Whether you need to charge tax or not, select the appropriate value for the product.

Booking duration
This determines how long a booking lasts. It can be hours, minutes, days, weeks or months. The booking duration is of two types:

  1. Admin defined (Fixed blocks) – Have a set duration that you define. Customers can only choose one block which will last the defined amount of time. For example, car washing appointments last only thirty minutes and your customers can only book one at a time.
  2. Customer-defined blocks – Have a set duration, but the customers can choose how many blocks they want. For example, the co-working space is rented out in hourly intervals, and customers can define how many one-hour blocks they would like to rent.

Calendar display mode
Select ‘Calendar always visible’ or ‘Display calendar’ on click. The calendar is set to always visible by default.

Requiring confirmation
Tick the ‘Requires confirmation’ checkbox if admin needs to review the booking before confirming it. Once the booking is approved, the customer receives another email to then submit the payment.

Allowing booking cancellation
Tick the box to allow customers to cancel their bookings. Once ticked, you can set the time customers can cancel the booking before the start date.

Configuring bookings

Further is the WooCommerce bookings availability/availability (what slots can be booked) under the Availability tab.

Availability data WooCommerce Bookings

Max bookings per block
This setting allows multiple bookings at the same time. With a fixed booking of 1 day and maximum bookings per block set to 2, then each day you can accept two bookings.

Minimum block bookable into the future
With this option, you can specify the minimum time in the future for which the users can book. For example, if we enter a minimum block of five days in the future and today’s date is 7th April, then the visitors can only book for blocks on 12th April and onwards. Alternatively, you cannot book a block for 12th April before 7th April.

Maximum block bookable into the future
With this option, you can specify the maximum time in the future for which the users can book. For example, if we enter a maximum block of 2 months in the future and today’s date is 9th May, then the visitors cannot book for blocks 9th August onwards.

Require a buffer period between bookings
This if you want a break between your bookings. For example, if you sell appointments in 1-hour blocks and wish to have a break of one hour between them, you can specify a buffer period.

Adjacent buffering
If you prefer to add a buffer before and after your appointments, tick the Adjacent Buffering checkbox. This option adds the specified block both before and after each booking.

All dates are
With this option, you can specify if all the dates will be available or unavailable by default. You can specifically turn some dates on and off with rules.

Check rules against
You get two options:

  1. All blocks being booked – This checks all available blocks within a duration. For example, if a customer chooses to book for 3 days and 1 block is equal to 1 day, it will check availability for all 3 days.
  2. Starting block only – This checks the first block the user selects. For example, if a customer chooses to book for 3 days and 1 block is equal to 1 day, it will only check availability for the first day.

Restrict start and end days
Say you have a weekly rental, but you only allow customers to start their rental on Fridays. Tick the box. Select the day (in this case Friday), or day(s) you would like to restrict the booking to start on.

Custom availability range
You can specify the range for availability as per your requirements using the range option. Click add range and create custom availability. For instance, you know your beauty salon will be closed for ten days in March, then you can specify a range for the unavailability.

That’s quite a lot there. Further, is to set the bookable product price.

Setting the product cost

Add bookings cost
Add bookings cost

Base cost
Applied regardless of a customer’s choices on the booking form.

Block cost
Cost per block that was assigned under the General tab. If a customer books multiple blocks, this cost gets multiplied by the number of blocks booked.

Display cost
It is shown to the user on the frontend. Leave blank to have it calculated for you. If a booking has varying costs, the lowest available cost is shown and is prefixed with the word ‘From’.

Beneath the display cost, you have an area where you can define extra costs. This works similar to availability. Click Add Range to begin:

A row appears where you can input the range type, from/to and cost:

Base cost and Block cost can be added, subtracted, multiplied or divided by the amount you enter.


Bookings for multiple persons

If the booking can be made for multiple persons at once, tick the Has persons checkbox. Once selected, a new tab Persons appears. The Persons tab also allows you to define different prices depending on the person type. To set up different person types, tick the Enable Persons Type checkbox in your Persons Tab.


For added flexibility, WooCommerce Bookings supports bookable resources that can be booked independently within a bookable product. Tick the Has resources checkbox to enable a new tab.

An example use case for a customer selected resource would be a room type, such as single and twin rooms.

Resources can be used globally across multiple products. For more information on resources, view this doc.

Of course, there are many other settings you can configure with WooCommerce Bookings such as sending custom email notifications or SMS notifications.

We have covered the main configuration here. You can refer this documentation for more details.

That’s it. Your bookable product is ready.

But Wait!

Now comes the important part – with so many bookings, how will you manage hundreds and thousands of bookings – reschedule, cancel, modify personal details, etc.? How easily, quickly and stress-free you will manage all these bookings?

Well, here’s the answer below.

The easy way to manage WooCommerce bookings

Smart Manager for WooCommerce plugin makes it very easy to manage hundreds and thousands of bookings from a single place. Faster, smarter, better!

You don’t have to dig through each booking and make a change.

Say you have a five-star hotel with 200 rooms including deluxe, super-deluxe and other variations. It’s season time next month and you want to raise the price of all your rooms by 20% before they are booked.

So using Smart Manager, simply select the date range, rooms and ‘select increase price by’ and enter the value. Done!

Why use Smart Manager to manage WooCommerce bookings?

Here are the top four reasons:

Bulk edit bookings
Smart Manager lets you edit thousands of bookings in bulk in no time. From changing booking prices to canceling, rescheduling, or fixing monthly rental prices, you can do it all with Smart Manager in no time.

For example, if the flight bookings need to be canceled due to natural calamities, select all the required bookings and change their status to Cancelled at once in Smart Manager.

Directly edit a booking
You can edit any booking field – date, time, status, price, etc. directly from the grid without moving to individual bookings.

Search for a specific booking in a flash
Searching using keywords or filters and fetch your desired results instantly. For example, you want to cancel all bookings from Apr 7 – May 9 made in the name of Mr. Brad and Ms. Reese. Enter these names in the search bar, select all entries to delete the bookings of these two people. As simple as that.

Export bookings as CSV
Export all your booking data to CSV or based on date, column, and search filters.

Get Smart Manager

Eight WooCommerce Bookings plugin alternatives

Other than the official bookings extension, these below WooCommerce Bookings plugins are also powerful. Let’s see what they have to offer.

Booking & Appointment Plugin for WooCommerce by Tyche Softwares

This plugin tops our list. It’s a great plugin with tons of features. You can offer any product as a bookable product. Link bookings with other WooCommerce product types like simple, variable, grouped, bundles & composite products.

Top features:

  • Set special prices for weekdays, time-slots or special dates
  • Fully automatic export of bookings to Google Calendar and importing of bookings to website from multiple iCal feed URLs.
  • Allow customers to book faster by searching for available dates & time using powerful search widget.
  • Change booking dates & times on cart & checkout page
  • Real-time availability checking & updation
  • Set varying prices based on number of days to book.
  • Ability to approve or deny bookings based on availability
  • Compatible with WPML
  • The time-slots will be automatically converted to the customer local time, making it easier and friendlier to offer services to customers in different time-zones.

Pricing: Starts from $199

Get Booking & Appointment for WooCommerce plugin

WooCommerce Bookings And Appointments by PluginHive

This is also a popular bookings plugin. This plugin allows service providers and businesses of all types to easily integrate and empower their WooCommerce website with a booking solution.

Top features:

  • Offer single and multiple days booking
  • Offer recurring bookings, multiple non-adjacent bookings in a single order.
  • Sync bookings with your calendar using Google Calendar Integration. Place bookings on your website directly from Google Calendar.
  • Set up custom buffers before as well as after your bookings
  • Allow customers to book within a custom booking window and restrict your bookings to start only on certain days of the week.
  • Add bookings on behalf of your customers from the backend
  • WPML compatible

Pricing: Starts from $99

WooCommerce Bookings And Appointments plugin

Bookly Pro

Bookly is one of the best-rated and most popular booking management plugins at CodeCanyon. It’s a WordPress plugin and compatible with WooCommerce.

Top features:

  • Fully-customizable booking form that can be used on any device
  • Filterable, sortable and searchable booking list that you can print or export to CSV.
  • Various templates for customizable Email and SMS notifications
  • 2-way synchronization between Bookly Calendar and Google Calendar
  • Built-in analytics with booking statistics

Pricing: $89

Get Bookly Pro

Appointments for WooCommerce

This plugin is fully integrated with WooCommerce, WordPress and Google Calendar. It is one of the best appointment scheduling software you can get right now.

Top features:

  • Add-on fields (extra fields like check boxes, options, inputs, color swatches and uploads) are included with Appointments. Each add-on field can provide additional cost and duration. You can also reduce appointment cost and duration with each field if you want.
  • Events from your Google calendar will be automatically synced with your site and vice-versa.
  • Assign multiple staff to appointments, manage calendars for each employee and allow them to log in and set their availability however they like.
  • Insert your appointment forms wherever you want (blocks, widgets, pages, posts…) with a simple WordPress shortcode.
  • Increase or decrease available places for specific slots. Accept more customers when you can. Decrease available capacity when you are too busy.

Pricing: Starts from $89

Get Appointments for WooCommerce plugin

YITH Booking and Appointment for WooCommerce

YITH Booking and Appointment for WooCommerce helps you create a simple and easy-to-use booking system for your WordPress business website. Create various types of bookable products with different pricing options.

Top features:

  • Accept bookings immediately or only after the admin confirms them.
  • Set a base price and an extra cost that can be calculated based on the entire duration of the stay.
  • Allow different rates according to the date of the booking, the number of people, the number of days selected and/or the people types.
  • Setting a maximum number of bookings that can be accepted for the same date for the same product.
  • Create and configure specific search forms that allow users to get only the results that match the selected criteria.

Pricing: $200

Get Booking and Appointment plugin

Amelia – Appointments and Events WordPress Booking Plugin

The Amelia WordPress booking plugin will fully automate the interaction with potential customers. The plugin will help customers pick the right services, take care of the payments. It will also send real-time SMS reminders both for the customer and employee for booked, rescheduled or cancelled appointments.

Top features:

  • Add multiple employees with custom working hours and days off.
  • Configure specific dates or date ranges with a different schedule for special days.
  • Multiple business locations.
  • Graphs and diagrams for business performance KPIs.
  • Two-way Google Calendar integration for each employee.

Pricing: Starts from approx $99/year

Get Amelia plugin

Booked – Appointment Booking for WordPress

Booked is another popular bookings plugin on CodeCanyon. It will integrate smoothly with your WooCommerce store. You can create multiple calendars with unique time slots and assign each to the right resource.

Top features:

  • Create custom time slots for booking according to the store hours or resource availability.
  • Customize the calendar design.
  • Include custom fields to collect information from customers.
  • Shortcode and widget support for calendar display.

Pricing: $49

Get Booked plugin

WordPress Appointment plugin

This is a new booking solution from MotoPress. It’s tailored more towards time and service-based companies, such as beauty salons, sports, medical centers and education.

The plugin has all the booking essentials – full or partial payments, group bookings, scheduling and more. It also integrates with Google Analytics 4 to help you track ecommerce data sent through the booking widget.

Pricing: $59

Get Appointment plugin

To view more WooCommerce bookings and appointments plugins, click here.

Bonus tips to grow your bookings and sales

Quite a few. However, we picked the top two.

Upsell premium products

If a person is booking a flight or hotel, offer a premium class or super deluxe rooms. The upsell works without discount because comfort is more important than money.

Smart Offers is a powerful plugin for WooCommerce to create targeted upsell, cross-sell, BOGO, etc. offers and sales funnel. Being compatible with the official WooCommerce Bookings plugin, you can easily upsell premium products and boost your revenue.

Offer gift card/store credit for refunds

There are many reasons why a customer may not show up for a booking, and they will of course ask for a refund.

In such cases, don’t you think it’s a great idea to issue them a store credit for a refund? You won’t lose a customer and also encourage them to book again with you the next time.

It’s unlikely that many will agree, but those who do, let’s try it.

Here’s how to issue store credit for a booking cancellation


WooCommerce Bookings plugin offers control over bookings, flexibility, a great UI, and helps customers save time and effort. If you sell bookable products, this is your go-to plugin.

Also, use Smart Manager to manage your bookings better and save your time.

What do you think about this article? Did we miss out on something important? Share your valuable thoughts below.


What is WooCommerce Bookings and Appoinments?
WooCommerce Bookings and Appointments is a tool in WooCommerce that enables businesses to sell and manage time-based services, allowing customers to book and pay for services online.

How to set up WooCommerce bookings?
This is the initial process;

  • Installing any WooCommerce Bookings plugin
  • Creating a bookable product
  • Configuring available booking slots
  • Setting up the costs

You can refer to the blog above to set up WooCommerce bookings plugin and bookable products.

Does WooCommerce have a booking system?

Is WooCommerce booking free?
Yes, it is partially free.

How do I use WooCommerce booking calendar?

  • Go to WooCommerce > Bookings > Settings.
  • Select a Calendar from the dropdown.
  • Save changes.

How do I add a bookable product to WooCommerce?

  • Go to: Products > Add New
  • Enter a title and description for your product.
  • Scroll down to Product Data and select Bookable Product in the dropdown menu.
  • Tick the Virtual checkbox, if your product does not require shipping.
Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.