1.Overview

MWB Bookings for WooCommerce plugin creates a booking system for your services or products. Make appointments, book items, and rooms, and reserve seats in schools, among other things conveniently using the plugin. You can also segment your booking slots into days and hours with this plugin. Insert the number of days, hours, or minutes in your booking units to book a hotel room, rent a product, reserve a course or class, or sell a tour package online. You can use this powerful plugin to easily empower your WooCommerce bookings as store-based products with bookable solutions, which would be beneficial to almost any type of organization.

2.Installation

1. Automatic Installation

WordPress is the easiest to use when it comes to automated installation. For that you just need to-

  • Sign in to your WordPress Dashboard using your username and password.
  • Then, in the left panel of your dashboard, go to Plugins > Add New.
  • Click the Upload Plugin button at the top of the page.
  • From the Choose File menu, select the .zip file for the MWB Bookings for WooCommerce, then press Install Now.
  • If the plugin has been successfully installed, activate it.

2. Manual Installation

Manual installation is another option for installing the plugin in your WordPress environment. The manual installation phase entails using their preferred FTP client to download and upload the MWB Bookings for WooCommerce plugin to the webserver.

  • Upload the MWB Bookings for WooCommerce folder to the /WP-content/plugins/directory.
  • Navigate to the Plugins menu in WordPress to activate the plugin.
  • That is all there is to it.

3.How to Setup Plugin Backend?

Booking plugin setup is quite easy and quick, you just need to pay attention to the details and the functions of each option here. So, let’s start then-

3.1.General Options

This is the initial setup option available on the bookings plugin backend, in order to open the general settings option just navigate WooCommerce Dashboard > Bookings > Settings. This general settings tab offers multiple setting options like-

1. Enable/Disable Bookings

This option comes in handy with a toggle button along, you just need to toggle that button on/off in order to Enable or Disable the Bookings feature within your store.

 

2. Change Status to Confirmed After Days

This option is a very effective resource for you, just enter the number of days you want and all your paid bookings placed would automatically be confirmed after the specified time period.

Bookings general settings

 

3. Reject Unpaid Bookings After Days

This option allows you to enter the number of days required to automatically reject the unpaid booking placed.

3.2.Booking Form Options

This is a secondary setting option offered in the General Settings tab, this option allows you to control the booking form display at the frontend. Some of the options it includes are-

1. Show Included Services

This toggle button option allows you to show or hide the included services from the frontend means from your customer’s display.

2. Show Service Cost

This toggle button allows you to show or hide the service costs from your customers at the time of placing a booking request.

3. Show Service Description

This toggle option allows you to easily display or hide the service description at the frontend from your customers.

4. Show Totals

This toggle button allows you to enable or disable the totals display from the frontend.

3.3.Global Availability Rules

This is the very next tab in the settings for the bookings plugin. You can make use of this option if you wish to add a few global rules for your booking availability. Let’s check out how-

1. Click + To Add New Rule

When you initially click on this tab i.e. Global Availability Rules, you supposed to see a page view somewhat similar to the screenshot below-

Bookings backend global availability rules

Just click the + icon on the bottom right corner of the page, which would turn out into a custom rule setup page similar to the screenshot below-

Bookings backend custom rule setup

Note: If you want to create a Global Availability Rule for your booking store, keep in mind that-

The rules which would have been created first will indeed be applied first, and the rule that would have been created the last would be applied last i.e. overwriting the previous ones. This clearly implies that the last rule would have the highest priority to change the availability of the booking placed in your store. This page offers you few options to complete the Global Rule setup those options include-

1. Rule Toggle Button

This button defines whether this rule is enabled or disabled for the booking requests placed on the store. You need to just switch on the toggle and see your rule in action.

2. Rule Name

It is where you can define a unique yet identifying name for your custom rule, there isn’t any special guideline for the name. Just input whatever name you like.

3. Rule Type

This option defines the type of the global rule created on the basis of two options available-

  • Specific Dates – This option enables your custom booking rule for specific dates, as you select this option start and end date option is enabled. Choose the dates from the calendar picker available there.
  • Generic Dates – This option allows entering your custom booking rule for generic dates based on a monthly basis. As you select this option, the start and end month option appears there, just choose according to your preferences using the Select field

Note: 

1. When you’re using Generic Dates for your global availability rule, there won’t be a calendar option for choosing the date; instead, a month selection dropdown would be provided.

2. This other point to note is that if you want your Generic Dates for your global availability rule to apply for the entire month, simply select the same month in both columns of the From field.

For better understanding, here’s an example-

If you only want your created rule to apply to the month of August, simply change the From field to ‘August’. And, for different months, such as August and September, select from ‘August’ to ‘September’ in the From field.

 

2. Rules for Weekdays

This toggle button enables or disables the specific bookable, non-bookable, and no-change setting for the custom rule, if you want to set up day-wise bookable and non-bookable availability then enables or disables this option.

  • Bookable – This option depicts the availability of booking requests to be placed for a certain day.
  • Non-Bookable – This option depicts the non-availability of the booking requests to be placed for a certain day.
  • No-Change – This option resembles no change for the day, as the name implies. If you have previously specified a rule for a specific day and assign no change to the next, then the previously established rule for that day remains valid.

Please note that, If the non-bookable weekday does not fall within the date range, then it will have no effect on the availability of that particular day.

Note: Order for the purpose of verifying availability-

1. The first step involves verification for adherence to all global availability rules created.

2. The second step is to perform re-checking the availability parameters of a certain bookable resource i.e. verifying the availability in the product settings.

3. The very next step is verification of all the booking availability based on existing reservations.

For Instance- If maximum bookings for a certain date are all achieved, then, that date becomes unavailable for bookings further.

After that, all the available dates are to be displayed on the frontend booking form.

3.4.Services Tab

This is the very next tab in the backend setting of the plugin for this, you need to navigate to WooCommerce Dashboard > Bookings > Services. This tab allows you to create different services for your booking requests-

1. Name

This input option allows you to enter the name of your service that you want to create for your bookings.

booking services setting

2. Slug

The “slug” is the URL-friendly version of the name. It is usually all lowercase and contains only letters, numbers, and hyphens. Add a slug of your choice that you want to add for your service created.

3. Description

This input box allows you to enter the description for your service created.

4. Service Cost

This option allows you to enter the cost of the service that you are including in your booking resources. This option includes different conditions along with- 

5. Multiply Cost by Duration

If you check this option it means that the service cost of your bookable resource i.e. product or service would be multiplied by the duration. Checking out this option enables your customer to place bookings based on timely schedules.

6. Multiply Cost by Number of People Per Booking

This option allows you to calculate your service cost according to the people included in that booking. When none is specified, the default service cost for that particular people type will be applied.

a. If Has Quantity – This option enables you to calculate the service cost for the booking on the basis of the quantity of the bookable resource available. If you supposedly check this option then two more option enabled-

  • Minimum Quantity – This option allows you to input the minimum quantity allowed for the bookable resource to place a booking request.
  • Maximum Quantity – This option allows you to input the maximum quantity of a bookable resource allowed in order to place a booking request.

b. If Hidden – This option if checked allows you to hide your included service created from the customer at the time of placing a booking request. There’s a catch that this hidden option only works for included services not for the additional services created.

c. If Optional – If you check this option, your created additional service cost would become optional while making a booking request, and if you left it unchecked, your service included cost would become optional, vice versa.

7. Service Cost Individual for People Type

This option is enabled only when you’ve already created people types using the People Type tab setting. This option allows you to easily set up service costs for the people types that you’ve created already

3.5.People Types Tab

This is the very next tab in the backend setting of the plugin for this, you need to navigate to WooCommerce Dashboard > Bookings > People Types. This tab allows you to create different people types for your booking requests-

1. Name

This input option allows you to enter the name for the people type that you want to create for your bookings.

bookings people types

2. Slug

The “slug” is the URL-friendly version of the name. It is usually all lowercase and contains only letters, numbers, and hyphens. Add a slug of your choice that you want to add for your people type created.

3. Description

This input box allows you to enter the description for your people type created. 

4. Unit Cost

This option helps you determine the booking unit cost for the particular people type that you’re creating for. If you leave this option blank, then your booking unit cost for that bookable resource will be applied each time a particular people type is included within a booking request.

5. Base Cost 

This option helps you determine the base rental cost for the particular people type that you’re creating for.  If you leave this option blank for certain people type then the base cost would be applied each time a particular people type is included within a booking request.

6. Maximum Quantity

You can input the maximum quantity of the people allowed for the respective people type you’re creating.

3.6.Additional Costs Tab

This is the very next tab in the backend setting of the plugin for this, you need to navigate to WooCommerce Dashboard > Bookings > Cost. This tab allows you to create different types of additional costs for your booking requests-

1. Name

This option allows you to input a unique identifier name for your additional cost that you’re supposed to be creating.

booking additional costs

2. Slug

The “slug” is the URL-friendly version of the name. It is usually all lowercase and contains only letters, numbers, and hyphens. Add a slug of your choice that you want to add for your additional costs created.

3. Description

This input box allows you to enter the description for the additional costs that you’ve created. 

4. Cost Price

This input box allows you to enter the cost price with respect to the added cost of your bookable resource. This option offers about two further options-

  • Multiply Cost by Duration – If you supposedly checked this option this clearly means that you allow your created additional cost to be multiplied with the duration of the booking placed.
  • Multiply Cost by Number of People – If you checked this option available, this clearly states that your created additional cost will be multiplied by the number of people added to the booking.

4.How to Create Bookable Resources?

Creating a bookable resource in order to receive further booking requests is no rocket science. You can easily create a bookable resource i.e. service or a product as the same as you create a simple product, just the difference lies in the settings further.

Don’t stress, let me tell you that in detail-

In order to create a bookable resource for your bookings, you need to first navigate towards your Dashboard > Products > Add New. After that, you automatically are driven to the Add New Product window, which somehow resonates with the screenshot below-

bookings add new product

Just create a new product by entering the product name, featured image, description, etc. Once you’re done with all that, proceed to the very next step i.e. Product Data Setting section. 

The Product Data Setting section is located just beneath the product description area. Tap the dropdown button beside the Product Data and update Product Type with MWB Booking.

Then proceed with the settings further detailed below.

4.1.Product Data General Settings

These are the additional product settings that would be enabled after you select your product type to be MWB Booking and tap to the General Settings tab. This set includes multiple settings within-

bookings product settings

1. Booking Unit

This option in the General Settings tab determines the booking duration unit type for the bookable resource. All you have to do now is tap the dropdown menu. It would display different sorts of booking duration units, identical to those shown in the screenshot below.-

booking unit types
booking product data availability

Note: Make sure you opt booking duration type for a certain bookable resource skillfully i.e. days/hours/minutes, as when updated afterward can result in conflict for the slots and provide unexpected results. 

For Example: Suppose you’ve initially created a bookable resource by opting for a certain Booking Unit and a Booking Unit Type. 

However, if you want to modify that later, there’s a catch. That is if you change your Booking Unit Type from Days -> Hours or vise versa after the product is created, you would certainly obtain unexpected results. Therefore, it is advisable to create resources for booking in a planned and smart way.

Customer Selected Unit – You can easily define your booking unit as a customer-selected type, this depicts that your booking-based unit can be custom assigned by the consumer at the frontend while placing a booking request i.e. booking duration on the frontend is chosen by the customer. If you choose the Customer Selected Unit option as your booking unit and book for one day, you would be granted an additional option, namely

  • Enable Calendar Range Picker – This option clearly defines its purpose, as you checked out this option means that at the time of placing a booking request customer is asked to choose start and end dates from the calendar for the booking he/she wants to request. Customer-selected units can be in days/hours or minutes depending on the bookable resource type.
  • Fixed Unit – This is also a type of booking unit if you supposedly set your booking unit type to be fixed that clearly means that your  -booking duration is predefined to 1 i.e. booking unit, and that cannot be altered by the customer while placing a booking request. Fixed Units can also be defined in days/hours or minutes depending on the bookable resource type.

2. Start Date in Booking Form

This option depicts the purpose of defining the bookable resource availability depending on certain options available. Just tap the dropdown button to discover the options, similar to the screenshot below-

booking form start date
  • Today – This option clearly depicts that bookings availability of placing a booking request for certain bookable resources starts from the same day i.e. today only.
  • Tomorrow – This option clearly depicts that bookings availability of placing a booking request for a certain bookable resource starts from the day before the actual booking day i.e. tomorrow only.
  • Initially Available – This option depicts that the booking availability of placing a booking request for a certain bookable resource depends on the settings for Advance Bookings in the next Availability tab.
  • Custom Date – This option clearly depicts that bookings availability of placing a booking request for certain bookable resources starts with a custom date defined by the store manager only. This custom date option enables one more option i.e.-
  • Custom Date to Start Booking – In this option you the store manager need to define the custom booking date for placing a booking request for a certain bookable resource. Keep in mind that if your custom entered start booking date is lesser than the current date, your booking request would most likely be processed from the current date.

3. Confirmation Required

This option if checked depicts that the booking request placed by the consumer required a store manager’s confirmation. If this option is checked then that clearly depicts that the booking request placed for a certain bookable resource if paid will automatically be updated from Payment Completed to Confirmation Required status within an hour of placing the order.

After that, either the booking request is manually confirmed by the store manager or be automatically confirmed according to the global booking setting at the General Settings tab.

But if you leave this option unchecked, then your paid booking request would only reflect Payment Complete status to be directly updated with Confirmed within an hour of placing the request.

4.2.Product Data Costs Settings

These are the additional product settings that would be enabled after you tap into the Costs tab. This set includes multiple settings within-

1. Normal Costs

It is the section that enables the option in order to set multiple cost options for your bookable resource that you’re creating, options include-

booking product data cost

2. Unit Cost 

It is basically the bookable resource per unit cost or the main cost that is designated by the store owner itself. The booking unit cost can be anything in numerals, just you need to manually input it in the text box given beside. This option Unit Cost includes two contradictory further options available for your unit cost calculation, that are-

  • Count Per People – This is a contradictory further option available with respect to the unit cost of the bookable resource. If you check this option then, your unit cost is calculated with respect to the number of people for whom the service is to be requested for booking.
  • Extra cost Per People – This is a contradictory further option available with respect to the unit cost of the bookable resource. If you uncheck the Count Per People option then this option field gets enabled automatically. This option allows you to predefine the extra cost for a unit cost multiplied by the extra peoples added to the booking request for the bookable resource.

3. Base Cost

It is primarily the base rental fee or optional cost of a bookable resource unit.  Because the base cost is an optional expense, it is entirely up to the user to decide whether or not to utilize it. This option Base Cost includes a further option for calculating your base cost, that is-

  • Count Per People – If you pick this option, the base cost would be determined by the number of people count availing of that booking service.

4. Added Costs

It is the section that enables the option in order to set multiple added cost options for your bookable resource that you’re creating, options include-

  • Add Extra Costs – This option allows you to add your created additional costs just by typing the name of the service and adding the service to the list of your bookable resource based on your preferences.

4.3.Product Data Availability Settings

These are the additional product settings that would be enabled after you tap into the Availability tab. This set includes multiple settings within-

1. Availability Preferences

It is the section that enables the option order to set multiple availability preferences setting options for your bookable resource that you’re creating, options include-

2. Max Booking Per Unit

This option allows you to set your preferred maximum number of possible bookings per unit for the particular bookable resource. There are two more hidden options for this setting available only when you enable Booking Unit as Customer Selected Unit in the General Settings tab, the options include-

  • Minimum Duration for Booking – When the booking unit for the particular bookable resource is to be selected by the customer, this option allows you to set your minimum duration for a certain booking request.
  • Maximum Duration for Booking – When the booking unit for the particular bookable resource is to be selected by the customer, this option allows you to set your maximum duration for a certain booking request.
booking product availability
  • Daily End Time – This is actually the booking end time or in other words, it is somewhat similar to the check-out time for a certain bookable resource.
  • Daily Start Time – This is actually the booking start time or in other words, it is somewhat similar to the check-in time for a certain bookable resource.

3. Advance Booking

It is the section that enables the option in order to set multiple availability preferences for advance booking options for the bookable resource that you’re creating, options include-

  • Minimum Advance Booking – This option allows you to set the number of minimum months/days before which your particular bookable resource can be requested for getting booked.
bookings minimum bookings unit
  • Maximum Advance Booking – This option allows you to set the number of maximum months/days/years in which your particular bookable resource can be requested for getting booked.
bookings maximum unit

4. Booking Not Allowed

This option allows you to add weekdays on which requesting a booking for a certain bookable resource is not allowed. Simply type the name of the weekdays you want to add to the non-bookable weekday list.

4.4.Product Data People Settings

These are the additional product settings that would be enabled after you tap the People tab. This set includes multiple settings within-

1. Enable/Disable People Option

This is a check/ uncheck option available in order to enable or disable the people option for a certain bookable resource while placing a booking request. If this option is left unchecked, a booking for one person will be made by default each time.

booking product people setting

2. Minimum People Per Booking

This option allows you to input the minimum number of peoples allowed per booking request placed for a certain bookable resource.

3. Maximum People per Booking

This option allows you to input the maximum number of peoples allowed per booking request placed for a certain bookable resource.

4. Enable People Types

This is a secondary option available here that allows you to enable or disable the people type selection option for a certain bookable resource while placing a booking request. If you check this option another field i.e. Add People Type is automatically available that includes-

  • Add People Type – This field clearly depicts the purpose of adding the created people type allowed to be opted for a certain bookable resource while placing a booking request. Just type the people type name there and add the created people type there.
  • People Types – This is the alternative option available here, suppose you want to create a separate people type for the bookable resource that you’ve forgotten while setting up the plugin in the people tab.

Then just tap the Add New Type Button available beneath the option and you’ll be directed to the People Types tab in the plugin backend setting page where you can conveniently create the one.

4.5.Product Data Services Settings

These are the additional product settings that would be enabled after you tap the Services tab. This set includes multiple settings within-

1. Enable/Disable Services

This is a check/uncheck option available in order to enable or disable the services option for a certain bookable resource while placing a booking request.

bookings product services

2. Add Services

This field clearly depicts the purpose of adding the created services allowed to be opted for a certain bookable resource while placing a booking request. Just type the name of that service and add the created services there.

3. Add New Service Button

This is the alternative option available here, suppose you want to create a separate service for the bookable resource that you’ve forgotten while setting up the plugin in the Services tab.

Then just tap the Add New Service button available and you’ll be directed to the Services tab in the plugin backend setting page where you can conveniently create the one.

5.How to Process Bookings?

You might be curious about that- How do your customers be able to place booking requests/orders using the frontend?

Need not worry, let me detail you that in an easy stepwise manner. Let’s start then.

Step1: Place A Booking Request

In order to place a booking request or order, initially, the consumer needs to place a booking request. For that, he/she is required to fill a booking form. Just hit the Read More button beneath the bookable resource i.e. product or service available in the store. For better understanding do check out the screenshot below-

booking request

After that, you would automatically be directed to the bookable resource i.e. product or service Description page. Here, you can find the booking form available, based on different options sets allotted by the store manager itself.

Do refer to the screenshot below for better understanding-

booking request form

Just fill the Booking Request form given there based on your preferences for booking the certain bookable resource and hit the Book Now button in order to proceed further.

 

Step2: Proceed To Checkout

After hitting the Book Now button, you’ll be automatically redirected to the Checkout page in order to process the booking.

booking checkout process

Add the Checkout Details in the form given and opt for the preferable Payment Options available there, and proceed to payment in order to complete the booking order. That’s it, after successful completion of the Payment Process your Booking Placement Process would also be completed simultaneously.

Note: Customers can avail of unpaid booking requests by opting for the payment method as “COD” or Cash on Delivery.

 

Step3: Booking Placed Notification

Customers can receive booking notifications via email from the booking store manager after the successful completion of their booking orders. Mostly the notification email is to be supposedly sent in order to inform the customers regarding their pending payments or to update them about their booking status.

Note: – There are a few crucial aspects to be aware of before incorporating the plugin support:

1. Each booking order permits your customers to make only one booking request.

2. If your customer currently has an underlying booking request in their cart and then starts placing another one, there’s a catch: their current booking request would always take precedence over the previous one in the cart.

3. Your customers are not permitted to change the quantity of the bookable product in the cart.

6.How to Review the Bookings?

As a booking store manager itself, How supposedly you can review the booking requests received using your backend panel?

This might be a question that you might think of now. Basically, you can review your booking orders or requests received in two possible ways using your Backend Dashboard AreaHow? Let me detail-

1. Bookings Calendar View

The first way to review your placed booking orders or requests in an easy manner is using the Bookings Calendar View. In order to access the calendar view area, you just need to get towards the Dashboard > Bookings > Calendar tab.

You can review the screenshot given below in order to have a better understanding of the feature-

bookings calendar view

Here you go, you can now conveniently review all the booking orders or requests placed monthly on this view. If you want to review the particular booking status or details just click over the booking name.

2. All Bookings Listing Panel

Another way to conveniently review the booking orders or requests placed is by making use of the Booking Listing Panel. Just navigate to Dashboard > Bookings > All Bookings tab.

For instance, do refer to the screenshot given below-

bookings listing panel

Here you can conveniently review all the booking orders or requests placed in a list view. If you want to review the particular booking status or details just click over the booking name.

7.How to Update Bookings Status?

As a booking store manager itself, you might be curious about the Booking Status Updations, if yes kindly follow up the details here, as I’m supposed to detail all the possible booking statuses here. Don’t miss, let’s start-

Booking requests or orders placed on your bookable resource are to be listed here at the All Bookings tab. Here, along with the booking detail, you can also find the status of each booking placed on the right side.

Do refer to the screenshot for a better instance –

booking status update

If supposedly you want to alter the booking status, you just need to tap on the booking name that lands you up on the Edit Booking page.

For a better understanding do refer to the screenshot below-

update bookings status

There you can conveniently update the status of that booking using the Booking Actions window on the top right section of the page. Just hit the dropdown there to update the Booking Status given, check out the screenshot below for the status options available there-

booking status options

1. Confirmation Required

This status of a booking clearly depicts that the booking order or request has completed the payment but still underlying the confirmation. In such cases either the booking is manually confirmed by the store manager or be automatically confirmed after the allotted days in the global settings. This status only works if you’ve checked the Confirmation Required option for a certain bookable resource in the General Settings tab.

2. Confirmed

This status of a booking clearly depicts that the booking order or request has been confirmed. If you’ve placed a paid booking request for a specific bookable resource that doesn’t require a confirmation from the store manager, then your booking order would be confirmed automatically within an hour, and your booking status will be updated to confirm.

3. Expired

This status depicts booking period expiration basically. Your booking request placed for a certain bookable resource is said to be expired, when:

  •  Your booking status remains Pending till the booking period, due to pending payment or any other reason.
  • Your booking is listed Cancelled, reason can be anything.

If your booking meets the criteria listed above, your booking status would be set to expire, thus your booking would remain the same until the expiration of the booking period.

4. Payment Completed 

This status of a booking clearly depicts that the booking order or request has completed the payment.

5. Pending Payment

This status of a certain booking clearly depicts that the booking order or request placed has an underlying payment due. In such a case, if the booking payment wouldn’t be paid in the meantime then there’s a possibility of the booking cancellation from the store manager or automatically after the allotted days in the global settings.

6. Canceled

This status clearly depicts that the booking request or order placed with reference to the bookable resource has been canceled i.e. the booking request cannot be entertained by the booking store.

7. Refunded

The order status is updated to Refunded only when the Booking Order placed with respect to the booking request for the bookable resource in the WooCommerce order section is refunded. In order to update the status of a certain booking request, just opt for the booking status and hit the Update button to change the status of that particular

8.FAQs

Yes, the admin can reject unpaid bookings easily. This just requires to Enable the settings from the backend and navigate to Plugin Settings > General Option > Reject Unpaid Booking after the selected specified days.

The admin can easily review all of the bookings that have been made by heading to the Booking Tab, where we have included all of the booking sections for the admin to check.

Yes, the admin can set the booking and non-booking days as required. We have a setting called Global Availability Rules for this.

Yes, there is a way to do it. Go to Plugin Settings > General Options > Update Status to change the status of a booking. Adjust the status to check whether the customer has already paid the booking fees, either manually or automatically after the specified days.

To do so, just go to Admin Dashboard > Booking Tab > Services and assign that according to your preferences.

Yes, using our plugin, you can add hidden services. Just go to the Admin Dashboard > Booking Tab > Services >Add Services (enable if hidden).

Yes, for that you just need to navigate towards the Admin Dashboard > Booking Tab > People Type and set the people type for booking.

To the Admin Dashboard > Products > New Product > Select Data Type > Select MWB Booking and make the settings accordingly.

In our plugin, there are two types of booking units-

  • Fixed Unit
  • Customer Selected Unit

 

Suggest Edit