Set up a booking marketplace with Booking Activities

A marketplace is an e-commerce site on which you authorize third-party vendors to add and manage their own products themselves.

Some booking marketplace examples:
Booking.com, Expedia, TripAdvisor, Viator, Airbnb, Ceetiz, etc…

It is entirely possible to make your own booking marketplace for free thanks to Booking Activities.

Required plugins list:

* You can replace MultiVendorX and User Role Editor with similar plugins.

WooCommerce Allows you to create an e-commerce site: create products, a shop, shopping cart, checkout and “My Account” page, and make online payments (Paypal (included), Stripe, etc…)
MultiVendorX Allows you to create a marketplace: create vendors, each managing their own products and their own orders only, and collect sales commissions
Booking Activities Allows you to sell bookings: each seller can only manage their own calendars, booking forms, and reservations
User Role Editor Allows you to set up the vendors access rights

 

  • This post shows how to make Booking Activities and MultiVendorX works together, but Booking Activities does NOT offer any guarantee. Booking Activities is developed regardless of MultiVendorX, and no support can be provided if an update of either plugin breaks the compatibility between them. You need to keep them working together by your own means.
  • Booking Activities is NOT integrated to any vendor dashboard provided by marketplace plugins. The vendors need to manage Booking Activities from the WordPress’ dashboard only (yoursite.com/wp-admin).

 

1. Install and activate these four plugins

WooCommerce will display an installation wizard as soon as it is activated, configure it according to your use.

In WooCommerce > Settings > “Payments” tab, activate the “Cash on delivery” gateway. This will allow us to easily make some test orders.

In WooCommerce > Status, make sure that the following “WooCommerce Pages” are configured : Shop base, Cart, Checkout, My account.

If it is not the case, go to WooCommerce > Status > “Tools” tab and click “Create pages”.

 

2. Grant rights to vendors

  • Go to Users > User Role Editor
  • Select the “Vendor (dc_vendor)” role
  • Give this role the following capabilities:
    In any case:
    • bookacti_manage_booking_activities
    For your vendors to manage their own calendars:
    • bookacti_manage_templates
    • bookacti_read_templates
    • bookacti_create_templates
    • bookacti_edit_templates
    • bookacti_delete_templates
    For your vendors to manage their own activities on their calendars:
    • bookacti_create_activities
    • bookacti_edit_activities
    • bookacti_delete_activities
    For your vendors to manage their own booking forms:
    • bookacti_manage_forms
    • bookacti_create_forms
    • bookacti_edit_forms
    • bookacti_delete_forms
    For your vendors to manage the bookings made on their calendars:
    • bookacti_manage_bookings
    • bookacti_edit_bookings
    • bookacti_delete_bookings
    With the Prices and Credits add-on:
      For your vendors to manage their own booking pass templates:
      • bookacti_manage_booking_pass_templates
      • bookacti_create_booking_pass_templates
      • bookacti_edit_booking_pass_templates
      • bookacti_delete_booking_pass_templates
      For your vendors to manage customers’ booking passes:
      • bookacti_manage_booking_passes
      • bookacti_create_booking_passes
      • bookacti_edit_booking_passes
      • bookacti_delete_booking_passes
      For your vendors to manage their own price categories:
      • bookacti_create_price_categories
      • bookacti_edit_price_categories
      • bookacti_delete_price_categories
    With the Order for Customers add-on:
      For your vendors to order / book for their customers :
      • order_for_customers

 

3. Create the vendors

We will now create two vendors :

  • Go to MultiVendorX > Vendors > Add new
  • Fill in the form
    • You will need to log in to these account during your tests, so please note their usernames and passwords
  • Add the vendor
  • Repeat to create the second seller

Your sellers can now log in and create their own products and calendars without seeing the others’. We will verify this by putting ourselves in the shoes of the two sellers we just created.

 

4. Log in as Vendor #1

  • Log out
  • Log in as “Vendor #1”
  • MultiVendorX will display a setup wizard, complete the requested information
  • You will be redirected to the vendor’s frontend admin panel
  • Go back to WordPress’ admin panel (http://your-site.com/wp-admin/)
  • You will notice that it is restricted according to your capabilities

Booking Activities can only be managed from WordPress’ admin panel (yoursite.com/wp-admin).
It cannot be managed from MultiVendorX’s frontend admin panel.

 

5. Create a product, and book it

5.a. Create a calendar:

  • Go to Booking Activities > Calendar editor
  • Add a new calendar
  • Create an activity
  • Create an event at a future date (drag n’ drop the activity onto the calendar)

5.b. Create a booking form:

  • Go to Booking Activities > Booking Forms
  • Add a new form
  • Go to the “Calendar” field settings > “Filters” tab
  • Select the calendar created in the previous step in the “Calendar” option
  • Validate the dialog

5.c. Create a product

  • Go to Products > Add new
  • Give your product a title
  • In “Products data”, check the “Activity” box
  • In the “General” tab, set a price
  • In the “Activity” tab, select the booking form created in the previous step
  • Submit the product

5.d. Make a booking

  • Go on the product page
  • Select the event
  • Add the product to cart
  • Validate the cart
  • Validate the checkout (with the “Cash on delivery” gateway)
  • You are redirected to the order receipt page

5.e. Check the order

  • Go back to the admin panel (http://your-site.com/wp-admin/)
  • Go to the “Orders” menu to see the order you have just made
  • Click the order
  • Change its status to “Complete” and save so you confirm that you can manage orders

5.f. Check the booking

  • Go to Booking Activities > Bookings to see the booking you have just made
  • Change the booking status to “Cancelled” to confirm that you can manage reservations

 

6. Log in as Vendor #2

Repeat step 4., but log in as “Vendor #2” this time.

 

7. Create a product, and book it

Repeat exactly the steps from 5.a. to 5.f. for the Vendor #2, so that that vendor also has a calendar, a booking form, a product, an order and a booking.

You will notice that by being logged in as “Vendor #2”, you will not see the calendar, the booking form, the product, the order and the booking created by the Vendor #1.

 

8. Change access rights as super admin

Now log in as Super Admin so you can note that you have access to all the elements created by both vendors.

You can assign a seller to, or on the contrary remove the rights to a seller from any existing products, calendars, activities, and booking forms:

For calendars and bookings

  • Go to Booking Activities > Calendar editor
  • Go to the desired calendar settings > “Permissions” tab
  • Add / Remove vendors in the “Who can manage this calendar?” option

For activities in calendar editor

  • Go to Booking Activities > Calendar editor
  • Select the desired calendar
  • Go to the desired activity settings > “Permissions” tab
  • Add / Remove vendors in the “Who can manage this activity?” option

For booking forms

  • Go to Booking Activities > Booking forms
  • Click on the desired booking form
  • You will see a “Managers” box in the sidebar
  • Add / Remove vendors in the “Who can manage this form?” option

For products

  • Go to the “Products” menu
  • Click on the desired products
  • In “Product data” > “Vendor” tab
  • Select the desired vendor, or click “Unassign vendor” to withdraw product management rights from any seller

With the Prices and Credits add-on:
For booking pass templates

  • Go to Booking Activities > Booking pass templates
  • Click on the desired booking pass
  • You will see a “Managers” box in the sidebar
  • Add / Remove vendors in the “Who can manage this booking pass template?” option

For price categories

  • Go to Booking Activities > Calendar editor
  • Go to any activity settings > “Price” tab
  • Click on the button to add a price category ()
  • Select the desired price category, administration icons will appear next to the selectbox
  • Go to price category settings () > “Permissions” tab
  • Add / Remove vendors in the “Who can manage this price category?” option

 

Conclusion:
You have just made sure that each vendor can manage their own calendars, booking forms, products, orders and bookings independently, and without having access to those of other sellers. The Super Administrator can access everything and can modify the sellers access rights.

= Thank you for reading! =

 

Learn more

Check MultiVendorX’s documentation and support for further configuration, among others:

2 thoughts on “Set up a booking marketplace with Booking Activities

    • Yoan Cutillas Post author

      Hello, there is no official compatibility with WCFM and Elementor unfortunately. You will need to test and see if they are working together, now and after each update.

      Note that the vendors would need to manage their calendars, booking forms and bookings from the backend in any case.

      Regarding Elementor, I have had the opportunity to help a lot of customers who are using it so it should be fine.

Leave a Reply