Menu Close
    Hire us Request quote Reading list Switch to dark mode
    lockdownWebkulUp

    Opencart Advanced Booking and Reservation

    OpenCart Advanced Booking and Reservation module can be used to create bookings and reservations for products.

    This module will be able to implement booking & reservation for products in your Opencart website and will provide six types of bookings for the products –

    1. Many Bookings in One Day
    2. One Booking For Many Days
    3. Customer Time-Based booking(Based on Per Hour and Per Day)
    4. Appointment Booking
    5. Rental Booking(Daily, Hourly, Hourly+Daily Basis)
    6. Event Booking

    Opencart Advanced Booking and Reservation is also available as Marketplace Advanced Booking and Reservation.

    Features

    • The admin can sync calendar features from Google Developer Account.
    • Customer Time-based booking has been introduced which is based on hourly and day wise cost calculation.
    • A slot-based quantity measure has been used.
    • The Manual Bookings can be made by the admin from the back-end.
    • The admin and the agent can reschedule the bookings from the back-end.
    • The admin and the agent can export the booking history in CSV, XML format.
    • Admin and the agents can view the bookings in the calendar view.
    • The agent group has been created under the user groups.
    • The admin can set the Agent Status from the back-end.
    • The agents can do the booking on behalf of the customer.
    • The agents can also add a new booking for the customer.
    • The admin and the agents can cancel the bookings from their end.
    • On canceling a booking, the slots become available again.
    • The admin and the agents can sync the bookings to the google calendar.
    • The admin can enable or disable the sending of the booking and cancel mail status to customers.
    • Set the date format that is visible to the customers in the shopping cart.
    • Set the background color for the booking slot and the loader.
    • Customers will be able to see the booking details(Like Date and Time Slot) of the product in the Cart.
    • The customers can view all their bookings in google calendar from the order detail page.
    • Option for customers to download their bookings as a PDF.
    • The customers can cancel the booking under their account panel.
    • The customer can reschedule their bookings.
    • Able to edit/update and delete the booking slots for all booking types.
    • Option to send an email confirmation to customers for their Booked Order with details Like duration, rate, and date for which the booking has been done.

    Module Installation

    Customers will get a zip folder and they have to extract the contents of this zip folder on their system.

    The extracted folder has – admin, catalog, fpdf, ocmod, system, theme-patch, and composer.json folders.

    You need to transfer the admin, catalog, fpdf, system, and composer.json the folders into the Opencart root directory on the server as shown below.

    After uploading the files, run the following commands in the terminal for installing the composer.json file.

    curl -s http://getcomposer.org/installer | php

    php composer.phar install

    After this, you have to navigate to Extension Installer and upload the file wk_advanceBooking.ocmod.zip which you will find inside the ocmod folder.

    Now navigate to Extensions > Modifications and click refresh on the top right-hand side as shown below.

    After the above step, the admin needs to navigate to System > Users > User Groups > Administrator (Click the edit button).

    Now, select all for “Access Permission” and “Modify Permission” and then tap the save button.

    Now go to Extensions > Modules > Advanced Booking & Reservation and click the install button to install the module as shown below.

    After that, the admin will set the layout on the product page like the image below.

    How to Create Google Developer Account?

    The admin needs to upload the Google Credentials file in the configuration to sync the data on the google calendar.

    Before that, the admin needs to create a Google Developer Account by clicking here.

    After that, the admin needs to login to the Google Cloud platform and then create a New Project. For the reference, check the below snapshot:

    For creating  a new project, the admin needs to click on the NEW PROJECT button as per the below image:

    New Project:

    • Enter the Project name here.
    • and the location of the organization.
    • Then, click on the CREATE button.

    Once the admin has created a project, they need to navigate towards OAuth consent screen tab and then click on the CREATE button as per below image:

    After that, the admin needs to fill the details as per below snapshots:

    • Enter the name of the application as per the requirement.
    • Upload the application logo.
    • Enter the email which will show on the consent screen for user support.

    • Now, enter the authorized domain name, so that you can use any of its subdomains and pages.
    • Enter the Application Homepage link which will shown on the consent screen. Must be hosted on an Authorized Domain.
    • Enter the Application Privacy Policy link followed by domain name and index.php?route=extension/module/wk_booking_res_calendar.
    • Enter Application Terms of Service link (Optional) followed by domain name and index.php?route=extension/module/wk_booking_res_calendar.
    • After that, click on the Save button.

    Now, the admin has to navigate towards, Credentials tab and then click on the edit button of OAuth 2.0 Client IDs as per below image:

    After that, the admin needs to enter the name of the OAuth 2.0 Client ID. This is different from the app name and it is not be shown to end-users.

    Also, they need to add URLs and Authorized Javascript URLs.

    After entering all the details, the admin needs to click on the SAVE button and then can download the JSON file by clicking on the DOWNLOAD JSON button.

    For the reference, you can check the below snapshot:

    The admin has to upload the JASON file into the configuration.

    But, before that, the admin needs to enable the Google Calendar API. For that, the admin needs to navigate through Library > Google Calendar API as per below image:

    After that, the admin needs to click on Google Calendar API and enable the same as per below image:

    Admin Configuration

    After the successful installation of Opencart Advanced Booking and Reservation, the admin can configure the module.

    For that, they need to navigate through Extensions > Modules > Advanced Booking & Reservation and then click on the edit button.

    General Settings:

    • Select Your TimeZone – Select the Time Zone that you are in.
    • Status: Select “Enable” to show the Book Now button at the product page else select “Disable” to Hide the Book Now button.
    • Date Format : Select the Date format that will be visible for the Booking From and Till values to the customers in the cart.
    • Customer Cancel Booking : Select Customer Cancel Booking as – Enable or Disable. If enabled then customers can see the cancel booking option under the order details else if it is selected as disabled then the cancel booking option will not be visible to the customers.
    • Cancel Approve : Set Cancel Approve as Enabled (If enabled, then the booking will be canceled without approval of the admin) or Disabled(Then the booking will be canceled with the approval of the admin) as per the need.
    • Booking data remove on update the product: choose enable to set booking data will be removed on update/edit of the product.
    • Cancel Requests Days: Set the cancelation request days, if in case the admin set cancel request days 15 then the cancel button will be displayed at the front only for 15 days. As of right now the admin can set the request day from 1 to 50 only.
    • Set the Slot Background color:
    • Set the Loader Color:  Chooose the loader color

    Mail Settings:

    • Enable or Disable the booking mail status. If enabled, then the customer will receive an mail on the booking confirmation.
    • PDF Details at Booking History – If this option is enabled then the customers will find a PDF button on the booking history page under their account by which they can download the booking details as a PDF.
    • Cancel Mail Status – if this option is enabled then the customers will receive a cancel mail notification when their order is canceled.

    Calender Section:

    • The admin can click on the Google Developer Account hyperlink to create an account.
    • The admin can enable the Calendar Sync Status if they want the data to get synced on the google calendar.
    • Under Google Credentials File Upload section, the admin can upload the Google credentials file which they have downloaded from the google developer account.

    Agent Booking Section:

    From here, the admin can enable or disable the Agent Status.

    Customer Change Slot:

    • The admin can decide whether to allow the customers to change their booking slots or not.
    • Admin can also enable or disable the auto-approval of the changed slots by the customer.

    Info Section:

    Form here, the admin can find the codes that can be used for writing email templates.

    Product Configuration

    Many Booking in One Day

    Now go to Catalog > Products and edit any product in which you want to add reservations, there you will see a booking and reservation tab, click on it.

    Complete all the fields according to guidelines for many booking in one day and save this as shown below:

    One Booking For Many Days

    For one booking for many days will be as below and you can create reservation slots as per the requirement.

    On clicking the add booking button, a popup box will open up where you can create slots according to your needs as shown below:

    After adding the slots, it can be edited and deleted as per the requirement as shown below:

    Customer Time-Based Booking

    Customer Time-Based booking will be as below and you can create reservation slots as per the need.

    You can set the cost type as hour wise or day-wise. The hour or day wise cost would be equal to the product’s base price.

    After filling the data required for the booking, click the save button to save the reservation for this product.

    Appointment Booking

    The user can navigate to Catalog  > Products and edit the product under Appointment Booking. Also, the user can filter the product and make bookings.

    Once the user clicks on the edit button under Action, then the user can edit the product as Advanced Booking and Reservation.

    After that, the user can fill in the required fields as per the guidelines for appointment booking and save it.

    Rental Booking (Daily Basis)

    To edit the product under Rental Booking (Daily Basis), the user can navigate to Catalog -> Products.  The user can also filter the product and make bookings.

    Now, once the user clicks on the edit product, they can edit the product under the Advanced Booking and Reservation tab.

    The user can fill in the required fields as per the guidelines for rental booking(daily basis) and save it.

    Rental Booking (Hourly Basis+Daily Basis)

    On navigating to Catalog > Products, the user can edit the product as Rental Booking (Hourly Basis+Daily Basis).

    The user can also filter the product and make bookings.

    Once the user clicks on the edit button, then the user can edit the product under the Advanced Booking and Reservation tab.

    The user can fill in the required fields as per the guidelines for rental booking (hourly basis+daily basis) and save it.

    If the user selects “NO” against ‘Same Time for All Day’ and ‘Slots has Quantity’, then the Quantity option tab is not visible to the user while creating the slots.

    On selecting “Yes” against ‘Same Time for All Day’ and ‘Slots has Quantity’, the Quantity option tab is visible to the user while creating the slots. The user can add the required quantity.

    Rental Booking (Hourly Basis)

    The user can navigate to Catalog > Products and edit the product as Rental Booking (Hourly Basis). Also, the user can also filter the product and make bookings. Now the user can edit the product under the Advanced Booking and Reservation tab.

    The user can fill in the required fields as per the guidelines for rental booking(hourly basis) and save it.

    If the user selects “NO” against ‘Same Time for All Day’ and ‘Slots has Quantity’, the Quantity option tab is not visible to the user when the user creates the slots.

    On choosing “Yes” against ‘Same Time for All Day’ and ‘Slots has Quantity’, the Quantity option tab is visible to the user when the user creates the slots. The user can add the required quantity.

    Event Booking

    The user can navigate to Catalog > Products and edit the product under Event Booking to add reservations. Also, the user can also filter the product and make bookings.

    Once the user clicks on the edit product against the event booking product, the user can edit the product under the Advanced Booking and Reservation tab.

    The user can fill in the required fields as per the guidelines for event booking and save it.

    If the user selects “NO” against ‘Multiple Tickets’, the user can only create a single ticket.

    If the user selects “Yes” against the ‘Multiple Tickets‘, the user can add more than one ticket against the Multiple Tickets option.

    Agent Group

    Once the admin has installed the module, they can see an Agent Group.

    For that, they need to navigate through, System > Users > User Groups as per the below snapshot:

    Also, the admin can edit the Agent Group by clicking on the edit button as per below image:

    Here the admin can edit the Access Permission and Modify Permission of the Agent Group.

    One Booking For Many Days

    After the product configuration, the products will be displayed with the reservation options at the front end.

    Form here, the customers can choose time slots and pay accordingly for their bookings.

    One booking for many days can be used to book a product for many days. For example – Hotel bookings.

    Once the customer clicks on the Book Now button, a pop-up will open up. From here, the customer can book the product for an available slot with the required quantity as per below image:

    After that, the customers can click on the Add to Cart button.

    The customers can also see the duration, rate per item, and the booking slot date from and to values in the cart.

    Many Bookings For One Day

    Many bookings in one day can be used for booking products for different time slots in a single day. For example- Railway reservation bookings.Once the customer clicks on the Book Now button, a pop-up will open up. From here, the customer can book the product for available slot with the required quantity as per below image:

    After this, the product will be added to the cart and customer can go for the checkout to purchase this product as shown below:

    Time-Based Booking

    Customer Time-Based Booking provides booking  Hour Wise and Day Wise basis –

    Hour Wise

    When a customer clicks on the Book Now button, then a pop-up box will open. The customer can select any date range slot for the booking as per the requirement.

    The hourly price of the product will be equal to the base price of the product that has been set by the admin.

    Tapping the “Add to Cart” button will add the product to the cart and thereafter the customer can go to the checkout.

    Day Wise

    When the customer clicks on the “Book Now” button, then a pop-up box will open. From there the admin can select any date range for the booking as per the requirement.

    The base price of the product will be equal to the Per Day price of the product that has been set by the admin.

    After selecting the date range and entering the quantity, the customer will click the “Add to Cart” button. Here, the customer can see the details of the booking in the cart as well.

    Appointment Booking

    Appointment Booking is used for booking appointments for different time slots on the same day.

    For example, taking an appointment with the doctor.

    When the user clicks on the “Book Now” button, then a pop-up box will open and the user can select any slot for making the booking as needed as shown in the image below:

    The user can add the booking slots to the cart. When the user clicks on the cart, the slot duration, rate per slot and booking time period will appear as per booking information.

    Rental Booking- Daily Basis

    Under Rental Booking (Daily Basis) the user can book a product for required days. For example, renting a house.

    When the user clicks on the “Book Now” button, then a pop-up box will open and the user can choose the date and the quantity as shown in the image below:

    The user can add the booking product in the cart and check the details of the booking made, and shown in the image below.

    The details of the number of days for which booking is made, the rate and booking time span is available. The user can then proceed to checkout.

    Rental Booking- (Hourly Basis+Daily Basis)

    Under Rental Booking (Hourly Basis+Daily Basis) the user can book a product hourly as well as a daily basis.

    For instance, booking a bicycle for an hour or two or booking it for an adventure ride for a day.

    When the user clicks on the “Book Now” button, then a pop-up box will open and the user can select any slot to make the booking as needed as shown in the image below:

    Once the user adds the booking product to the cart and clicks on the cart, then the user can view the details about the booking. The details of the slot duration, rate and booking time span is visible to the user.

    . . .
    Subscribe Articles

    Just enter your email below to subscribe and receive weekly updates about the most interesting similar articles.

    You need to accept conditions to receive letters.
    You've Subscribed!

    Share article via

    . . .

    Rental Booking (Hourly Basis)

    Under Rental Booking(Hourly Basis) the user can book a product on an hourly basis.

    For instance, let’s say, for taking a fun ride a person books a bicycle for one hour or two hours.

    When the user clicks on the “Book Now” button, then a pop-up box will open and the user can select any slot to make the booking as needed as shown in the image below.

    Once the user adds the product to the cart, the details about the bookings made would be visible to the user.

    The details of the slot duration, rate, and the booking time span are visible to the user.

    Event Booking

    Under Event Booking the user can book an event.

    For instance, let’s say, a live concert.

    When the user clicks on the “Book Now” button, then a pop-up box opens and the user can select, for example, the number of tickets for the event, as shown in the image below, against the product.

    Once the user adds the product to the cart, the details about the bookings made would be visible to the user.

    The details of the slot duration, rate, and the booking time span are visible to the user.

    Cancel Booking – Customer End

    After making the checkout, the customer can check their bookings under My Booking History for their account as per below image:

    Clicking the “My Booking History” option, it brings up the section where the customer will find all the placed orders for the booking products.

    The customer can also view all the order details under this section by clicking the View option.

    Tapping the View button will show the complete details of the respective order.

    To cancel the order the customer will have to click on the “Cancel Booking” button.

    Cancel Booking button will be visible to customers for 15 days as set by the admin in configuration settings.

    Once the customer has canceled the order it shows Cancel Pending as shown in below image:

    In this case, the admin has to approve the cancel request of the customer.

    **Note: If the admin has set the module configuration setting :

    • Cancel Approve as Enabled – Then the booking will be canceled without the approval of the admin) or if Disabled(Then the booking will be canceled with the approval of the admin).

    Booking PDF

    To download the order details as a PDF just click the “Get PDF” button on the order details page as per below image:

    Once the customer has clicked on the Get PDF button, the PDF will be downloaded which contains all the details related to the order.

    Reschedule Booking – Customer End

    For Rescheduling the booking, the customer can click on the Reschedule Booking button on the order details page as per below image:

    After that, the customer can select the newly available slots for rescheduling the booking.

    After rescheduling the order, the customer has to wait for the admin approval, if the admin has disabled the Auto Approve changed slot from the configurations.

    To approve the reschedule booking, the admin needs to navigate towards the type of booking and then click on the booking tab of that product as per below image:

    Now, the admin can see the list of the booking which are done by the customer. Also, they can check the reschedule booking request as per below image:

    The admin needs to click on the Reschedule button and then change the slot as per below image:

    Google Calendar – Customer View

    To view the Google calendar, the admin can click on the calendar icon on the order details page as per below image:

    Once the customers clicks on the Calendar icon, the Google calendar opens up as shown below:

    Many Bookings in One day – Admin End

    The admin will be able to book reservations for his customers from the back-end by navigating through Advanced Booking & Reservation > Many bookings in one day. 

    Here, the admin will first select the product for which the customer wants to do the booking and click on the “Add Booking” option for booking that product.After this admin will click on the “Add Booking” option another page will come up to fill in the customer information.

    Here, the admin will put in the customer details and click continue.After clicking continue above, another page will come up, here the admin will select the slot for this order and click “Add To Cart“.

    After adding the product to the cart you will see the same page again, now click “Book Product” button on the bottom right-hand side of the page as shown:

    On clicking the book product button, the products being added.Now click continue and fill the details of the shipping address for the product and click continue after that.After clicking continue you will see another page, fill the payment details for the product and click on the Save button.

    Similarly, the admin can add a new booking for rest type of the booking such as; One Booking in Many Days, Customer Time Based, Appointment, Rental, and Event Booking.

    Also, the admin can click on the Booking option to view the order history list or bookings which are made for Many Bookings in One day Booking as shown in the image below:

    If the store owner enable the Calendar Sync Status after disabling it from the configuration, then they can see the Sync Calendar button.

    Once, the admin clicks on the Sync Calendar button, to sync all the bookings to the google calender.

    Also, from here the admin can Reschedule or cancel the booking. The admin clicks on the Calender View button to see the booking in a calendar view.

    Also, the booking history can be exported by clicking on the Export Button.

    One Booking in Many Days – Admin End

    On clicking One Booking in Many Days under the Advance Booking and Reservation tab in the admin panel, the admin can see the list of all products which are booked under One Booking in Many Days Booking.

    On clicking the Booking option, the admin can view the order history list or bookings which are made for One Booking in Many Days Booking as shown in the image below:

    If the store owner enable the Calendar Sync Status after disabling it from the configuration, then they can see the Sync Calendar button.

    Once, the admin clicks on the Sync Calendar button, to sync all the bookings to the google calender.

    Also, from here the admin can Reschedule or cancel the booking. The admin clicks on the Calender View button to see the booking in a calendar view.

    For reference, you can check the below snapshot:

    Also, the booking history can be exported by clicking on the Export Button.

    Customer Time Based Booking – Admin End

    On clicking Customer Time Based Booking under the Advance Booking and Reservation tab in the admin panel, the admin can see the list of all products which are booked under One Customer Time Based Booking.

    On clicking the Booking option, the admin can view the order history list or bookings which are made for Customer Time Based Booking as shown in the image below:

    If the store owner enable the Calendar Sync Status after disabling it from the configuration, then they can see the Sync Calendar button.

    Once, the admin clicks on the Sync Calendar button, to sync all the bookings to the google calender.

    Also, from here the admin can Reschedule or cancel the booking. The admin clicks on the Calender View button to see the booking in a calendar view.

    For reference, you can check the below snapshot:

    Also, the booking history can be exported by clicking on the Export Button.

    Appointment Booking – Admin End

    On clicking the Appointment Booking under the Advance Booking and Reservation tab in the admin panel, the admin can see the list of all products which are booked under Appointment Booking.

    On clicking the Booking option, the admin can view the order history list or bookings which are made for Appointment Booking as shown in the image below:

    If the store owner enable the Calendar Sync Status after disabling it from the configuration, then they can see the Sync Calendar button.

    Once, the admin clicks on the Sync Calendar button, to sync all the bookings to the google calender.

    Also, from here the admin can Reschedule or cancel the booking. The admin clicks on the Calender View button to see the booking in a calendar view.

    For reference, you can check the below snapshot:

    The booking history can be exported by clicking on the Export Button.

    Rental Booking – Admin End

    On clicking the Rental Booking under the Advance Booking and Reservation tab in the admin panel, the admin can see the list of all products which are booked under Rental Booking.

    After clicking on the Booking option, the user can see the order history list or bookings which are made for Rental Booking (Daily Basis) as shown in the image below:

    If the store owner enable the Calendar Sync Status after disabling it from the configuration, then they can see the Sync Calendar button.

    Once, the admin clicks on the Sync Calendar button, to sync all the bookings to the google calender.

    Also, from here the admin can Reschedule or cancel the booking. The admin clicks on the Calender View button to see the booking in a calendar view.

    For reference, you can check the below snapshot:

    The booking history can be exported by clicking on the ”Export Button“.

    Event Booking – Admin End

    On clicking the Event Booking under the Advance Booking and Reservation tab in the admin panel, the admin can see the list of all products which are booked under Event Booking.

    After clicking on the Booking option, the user can see the order history list or bookings which are made for Event Booking as shown in the image below.

    If the store owner enable the Calendar Sync Status after disabling it from the configuration, then they can see the Sync Calendar button.

    Once, the admin clicks on the Sync Calendar button, to sync all the bookings to the google calender.

    The admin clicks on Calender View button to see the booking in a calendar view as per below image:

    Also, the admin can cancel the booking from here, if need be.

    The booking history can be exported by clicking on the ”Export Button“.

    Admin Management – Cancel Requests

    Under this section, the admin will find all the orders that have been canceled by the customers.

    The admin can set the configuration setting for the option “Cancel Approve” as Enabled. In this way, the booking will be canceled without the admin’s approval.

    If set as Disabled, then the booking will be canceled on if the admin approves it and will be shown under this section.

    Agent Bookings

    The agents can also do the bookings on behalf of the customer.

    Many bookings in one day

    For many bookings, they need to navigate towards Advanced Booking & Reservation > Many bookings in one day. 

    Here, the agent will first select the product for which the customer wants to do the booking and click on Add Booking option for booking that product as shown below:

    After this agent can click on the Add Booking option another page will come up to fill in the customer information.

    Here, the agent will put in the customer details and click continue as shown below:

    After clicking continue, another page will come up, here the agent will select the slot for this order and click Add To Cart.

    Once the product is added to the cart, the agent will see the same page again, now click Book Product button on the bottom right-hand side of the page as shown:

    After clicking the book product button, the products being added as shown in the following screenshots:

    Now click continue and fill the details of the shipping address for the product and click continue after that as shown below:

    After clicking continue you will see another page, fill the payment details for the product and click on the Save button.

    Similarly, in this way, the agent can do the other type of booking for the customers.

    Reschedule Booking – Agent End

    The agents can reschedule the booking on behalf of the customer. For that, they need to click on the Reschedule button on the Booking And Reservation page.

    For the reference, you can check the below snapshot:

    After that, a calendar will open up and the agent can select another booking slot as per the requirement.

    Cancel Booking – Agent End

    The agents can also cancel the booking if required as per the below image:

    Export Booking – Agent End

    The booking history can be exported by the agent by clicking on the Export Button as per the below image:

    Sync Calendar – Agent End

    The agent can click on the Sync Calendar button, the sync all the bookings to the google calendar.

    For the reference, you can check the below snapshot:

    Calendar View – Agent End

    Once, the agent has synced all the booking orders to the Google calendar, they can click on the Calendar icon to view the same.

    For the reference, you can check the below snapshot:

    Thus, that is all for the Opencart Advanced Booking & Reservation, If you still have any issue feel free to add a ticket and let us know your views to make the module better https://webkul.uvdesk.com/.

    Current Product Version - 3.6.0.2

    Supported Framework Version - 2.x.x.x, 3.x.x.x

    . . .
  • Helen Stubbings
    can you email all bookings under an event like a reminder one week before the event date with details, updated or changes to event details, or another one day before event date etc?
  • Nethub
    Hi, does you module support multi languages including Simplified Chinese?
    • Rahul Gupta
      Hello There,
      Yes, it will support all languages.
      Thanks
  • Gerson Ferreira
    this extension work normally whith Journal Theme?
    • Rahul Gupta
      Hello Gerson,
      Yes, it will work with Journal theme for sure.
      Thanks
  • Stefan
    How should I set the module to work with my theme (Opencart 3 Porto Theme)
    • Rahul Gupta
      Hello Stefan,
      This module will work with your theme. You will get the theme patch along with the module files. If you will get any issue then please email us at support@webkul.com
      Thanks
  • Back to Top
    css.php
    Hire Us!
    Brief us about your requirements and we'll get back to you.
    Woo! Hooy!
    We have just recieved your project brief and our expert will contact you shortly.
    Send Again
    Close

    Table of Content

    Hide Index