Many times businesses like hotel bookings, tour bookings or any rental businesses want to have control in their hands about confirming or canceling the bookings before the payment is made by the customer.
In this case, such businesses sometimes manually cancel the bookings by sending emails or calling the customers. They also have to refund the amount that has been already paid by the customers while booking.
To get rid of this hassle, a feature in our Booking & Appointment Plugin for Woocommerce can be enabled by which the bookings need admin’s confirmation before the payment is taken from the customers.
Let us learn how to setup a WooCommerce bookable product that requires admin confirmation before payment.
1. Booking Requires Confirmation
Let’s take an example of Recurring Weekdays booking to understand this setting. Suppose you have a banquet hall which you would like to give on rent. For that, you need to create a product Balaji Banquet Hall from Products->Add Products link.
This hall can be rented for any day, hence we need to select Booking Type as Single Day as shown below:
Selecting Booking type as Only Day -> Single Day
Now enable all Bookable Weekdays as the hall is available to be rented for all weekdays. Set Maximum bookings to 1 as only one hall is available to be rented. Click on Save Changes button to save the settings.
Enabling bookable weekdays and maximum bookings
Moving ahead, say you want that the customer can make the booking of your banquet hall but you should be able to give an approval/confirmation before payment is made by the customer. Then you need to enable the setting Requires Confirmation? available below the Booking Type settings of Booking meta box while creating your bookable product as shown below:
Enabling the setting Requires Confirmation?
Once you have completed all these steps, your banquet hall is ready to be given on rent.
This is how your Balaji Banquet Hall appears on the frontend when the customer visits your website for booking.
Product displayed on the frontend
Now, if the customer comes to book the banquet hall for any particular date, say 28th December 2017, then the Add to Cart button will be replaced by the Check Availability button because the setting Requires Confirmation? is enabled.
Booking date selected and Check Availability button enabled
When the customer clicks on the Check Availability button, the order is added to the cart where the banquet hall booking details are shown as below:
Booking details displayed on the Cart page
By clicking on Proceed to checkout button, you will be taken to the Checkout page where instead of Payment Mode, it will show the Check Booking Availability option, and instead of the Place Order button, it will show the Request Confirmation button as shown below:
Your Order section on Checkout page
As soon as the customer clicks on Request Confirmation button, the order will be placed but will not be confirmed, hence it will show the Order Received page as shown below:
Order Details page showing Booking details
As a result, the Order Status will be shown as Pending payment on the WooCommerce -> Order page as shown below:
Order status shown as Pending Payment on Orders page
As the order is placed but needs your approval so an email notification will be sent to you informing you about the same. The New Booking email as shown below will be sent to the admin.
New Booking email notification sent to admin
You can then approve/cancel the booking by using the Edit Booking link in the WooCommerce->Edit Order page.
In v5.3.0 of our Booking plugin, we have made a new addition to this feature which will now send the pending confirmation email to the customer for the booking that requires the store owner’s confirmation. This email is for the customer informing that the booking he/she has made is received and is pending for approval by the shop owner. The customer will get the booking confirmation email as soon as the store owner approves the booking. The Booking Confirmation Pending email as shown below will be sent to the customer.
Booking Confirmation Pending email notification sent to the customer
Let us understand how to approve an existing booking which was placed for the same product for 28th December 2017 and you want to confirm this booking.
So go to that booking’s Edit Booking link and a new page of Edit Booking will open with all booking details as shown below. From this page, you can approve the booking by changing the Booking Status from Pending Confirmation to Confirmed.
Booking Status changed to Confirmed
After you click on the Save Booking button, an email confirmation is sent to the customer stating that the booking is confirmed along with the Pay Link as shown below:
Booking confirmation email sent to the customer
At the same time, the Pay button is also displayed on the My Account page for the given order. The customer can then make the payment using any of the payment options.
Pay button available on the My Account page
Once the payment is done by the customer, the order status gets automatically updated as per the payment gateway selected by the customer.
Now say for any reason you want to reject this booking, then you change the Booking status to Cancelled on Edit Booking page as shown below:
Edit Booking page where Booking status is changed to Cancelled
When you cancel the booking, an email is sent to the customer informing him that the booking has been cancelled/rejected as shown below:
Email notification after the booking is cancelled
2. Automatically cancel bookings that require confirmation
If you wish to automatically cancel the confirmation of pending bookings after a certain time has passed away then you make use of this setting. It will ensure that the booking is cancelled after the number of hours if the admin has not confirmed it.
Please Note: This setting is only for those bookable products which require confirmation from the Admin. This means that the setting ‘Requires confirmation’ should be enabled for the product. You will find this by going to the Product Page > Booking Metabox > General tab > Requires Confirmation as shown here:
After this, go to Booking > Settings > Global Booking Settings as shown below:
Scroll down to find the ‘Automatically cancel bookings that require confirmation’ setting. It will appear like this:
For instance, if you wish to cancel a booking after 1 hour of it being placed and the admin not approving it, then you will enter the value 1 in the field for this setting:
Click on ‘Save Settings’ and you’re done!
For the frontend experience, let’s say a customer has made a booking for a Guitar lesson as shown here on the Order Details Page after the order has been placed:
Since the order requires confirmation from the admin, the Payment would appear ‘Check Booking Availability’. Once it is confirmed, the customer will be able to pay for the booking. Till then, for the customer, the booking would appear as ‘Pending-confirmation’
They will be able to view the status of the booking by going to My Account > Bookings as shown here:
Let us say that since the order has been placed, 1 hour has surpassed and the admin has not yet confirmed the booking. In such a case, the order would be cancelled. The customer will able to see the same in their Account Page:
The setting Requires Confirmation? of our Booking & Appointment Plugin for WooCommerce gives the admin a right to approve or cancel the order placed by the user. It’s in admin’s control whose booking is to be confirmed or cancelled.
This setting is beneficial for both Admin and Customer. By enabling this setting, the admin is relieved from the burden of giving a refund to the customers if the order is cancelled. Even the customer has to make payment only after getting the order approval from the admin. He also doesn’t have to wait or follow-up for a refund from the admin if the order is cancelled.