Booking Management System

General info

  • I recommend to create a new trial website to test bookings, so that all the info can be easily deleted after
  • Our system can handle 3 types of products to be booked / hired: hire product (hammer, chainsaw, trailer), accommodation (room, bed in dorm), service (haircut, massage). I would recommend not to mix products of different types on one shopping page (although they can be on the same website)
  • Hire products are easy. You create a product and set the number of items available for hiring (e.g. 5 chainsaws), each particular item belongs to the product. The system manages each item independently and tracks whether it is available or not, but it's done automatically. So if someone wants to hire a chainsaw on Monday from 12 to 5 pm one item will be marked as booked; if someone else wants the same time the second item will be marked and so on until there is nothing available. It is possible to micro-manage items and their availability but in most cases it's not necessary;
  • Accommodation and services require to set up products and resources to book (rooms or staff members) separately. To manage resources you will need a special page: Navigate Add page -> Advanced Features / Custom Databases -> Reservation System. You will see the summary of the resources when you add them on that page.
  • In case of services each staff member should have a set of tags defining services they can provide (like "haircut", "perm"), tags are separated by comma. Each service will also have tags (usually only one). So when a customer chooses a service or a few to book only those staff members will be available who have all the tags mentioned (i.e. have all the necessary skills). That implies that all the services will be provided by the same person.
  • A similar principle works for accommodation. In basic cases each room will have only one tag (e.g. several rooms with a tag "double room", several rooms with "single room") and each accommodation product will have one tag (two products: "Double room" and "Single room"). The difference is: a customer can book several rooms at the same time - several resources will be marked as booked.
Creating bookable products and settings
  • When you add new product you can choose one  of the bookable types. Also you can turn any product in a bookable by going to "Bookings" tab and selecting "Booking Type" along with other settings.
  • For hire products: "Pricing UOM (unit of measure)" is the time unit used to calculate the booking fee (product price is the price for the UOM time). "Booking Duration Increment" is the step of booking length (product can be hired on hourly or daily basis and so on). For accommodation they are usually "1 day". For services "Booking Duration Increment" is the length of service, customer cannot choose the booking length, it is calculated automatically based on services chosen. Min and max duration are ignored for services but work for hire products and accommodation.
  • "Calendar Filter Tags" are used only for accommodation and services. Ignored for hire products.
  • Hire items can be added/deleted/managed for hire products. For accommodation and services they are ignored.
  • "Reservation System" page is used to manage staff members or accommodation resources (rooms). For each resource unit availability settings should be chosen.
  • For staff members tags define member skills. Working hours define when staff member is available for booking. To make the whole day unavailable (like weekends) set working hours to "00:00 - 00:00"; "Open days" dropdown helps to set standard settings, but not working properly yet. Min and Max booking duration are obvious. Min and max notice define how long it can be between the time when the booking is made ant the actual start of the service (e.g. staff member accepts booking no less than 1 day in advance to have time to prepare but no more than 1 month in advance to be able to change schedule, plan holidays etc). "Available From" and "Available Until" are general constraints to limit availability for temporary staff or set vacations and so on. "Staff Booking Spacing" defines minimal time between bookings (to clean workplace and so on), so if one booking ends at 13:00 the next one cannot start before 13:15 for example. The other fields can be ignored for now.
  • For accommodation resources theoretically the same settings are available as for staff members, but most of them will not make sense.
  • There are global booking settings for the whole shopping page. Shopping -> Setup -> Booking Calendar Rules (Beta Testing)
  • Working hours define when the office is open, any booking should start and finish when the office is open. To make the whole day unavailable (like weekends) set working hours to "00:00 - 00:00". "Open days" defines on which public holidays the office is not working. "Closed From" and "Closed Until" are for custom periods.
  • "Shopping Cart Options" are mostly the default values for products or resources settings when they are not explicitly selected except "Overnight Booking Interval" and "Weekend Booking Interval". Those are used to calculate booking fee for hire items which are booked on hourly or similar basis (to be precise for hire products with both "Booking Duration Increment" and "Pricing UOM" less that one day). Basically you can choose that overnight time (when office is not open) or weekends and public holidays time (when office is closed for more than 1 day) will be treated as a specific amount of time when calculating booking fee, for example customer pays for overnight time as for 3 hours only and for the whole weekend as for 6 hours. Thus if someone hires a trailer form Monday 9:00 to Tuesday 11:00 they will pay for 2+3=5 hours. If for "Overnight Booking Interval" a time equal or more that 1 day selected or for "Weekend Booking Interval" 2 or more days selected that values are ignored and overnight/weekends time is treated as it is.
Bookings and bookings management
  • Bookings are normally made by customers the same way as they would do usual shopping. A customer chooses products and puts them to basket, then goes to checkout and chooses booking start and finish time (only start time for services), then submits and finishes the order. Bookings become visible for managers in CMS.
  • Bookings for staff members and accommodation can be managed on "Reservation System" page. For each member/resource there is an "Edit Bookings" button, also bookings overview is available. Bookings are currently shown as dark grey blocks with start and finish time (probably more info will be shown there in the future). The administrator can change booking time, duration or assign it to another staff member, create new bookings and delete them. Free cells in the calendar are clickable as well as booking start - finish time in grey booking blocks and you can drag booking blocks around.
  • For hire products you can theoretically manage bookings for each item on "Bookings" tab for the product, although such level of management is hardly needed.
  • When administrator is managing bookings they are not constraint by office hours or staff working hours. They can even create overlapping bookings if it makes sense
  • Administrators can create repetitive bookings (choosing booking frequency on booking creation form). In this case they have to set both booking start and finish date. Repetitive booking can be useful for example to exclude staff lunch time from availability.