Configuration

[TOC] The Configuration page lets you control how OS Services Booking works and how it looks on your website. To open it, go to Components -> OS Services Booking -> Configuration. The page is organized into the following tabs:

  1. General
  2. Booking configuration
  3. Form fields
  4. Invoice settings
  5. SMS settings
  6. Layout settings
  7. Email marketing
  8. Tracking Configuration
  9. Custom CSS
  10. GDPR

After changing any option, click Save in the toolbar to apply your changes.

General

This tab contains the basic settings of your booking system. It is divided into the following groups.

Business information

Download ID – The Download ID allows you to upgrade the component directly from the back-end. To register a Download ID for each domain that uses OS Services Booking, go to http://joomdonation.com/download-ids.html (you need to log in first). Copy the Download ID into this field to enable online updates.

Business name – The name of your business. It appears in emails and on OS Services Booking pages.

Notification email address – The email address that receives a notification when customers book your services.

Notification mobile number – The mobile number that receives SMS notifications. SMS must be set up in the SMS settings tab.

Footer content – Text or HTML displayed in the footer of OS Services Booking pages.

Meta keywords – The meta keywords added to OS Services Booking pages.

Meta description – The meta description added to OS Services Booking pages.

Map setting

Map type – Select the map provider used to display venue maps: Google Map or OpenStreetMap.

Show update available

Show update available – When a new version of OS Services Booking is available, a message is shown in the Dashboard. Set this to No to hide the message.

General information

Template Frontend Framework – The CSS framework used by your Joomla template. OS Services Booking supports Bootstrap 3, 4 and 5. Choose the version that matches your template.

Load Twitter Bootstrap CSS – If your template does not load Bootstrap, enable this option to load it from OS Services Booking. This can fix layout problems such as service and employee fields that do not display correctly.

Load Font Awesome – Loads the Font Awesome icon library. Enable it if your template does not already include it and icons are missing.

Date/Time format – The date and time format used across the system.

Date format – The format used to display dates.

Time format – The format used to display times.

Currency – The currency used for prices and payments.

Decimal separator – The character that separates the integer part from the decimal part of a price (for example .).

Thousands separator – The character used to group thousands in a price (for example ,).

Number of decimal digits – How many digits are shown after the decimal separator.

Currency symbol position – Whether the currency symbol is shown Before or After the amount.

CSV separator – The separator used in exported CSV files. Choose Comma (,) or Semicolon (;) depending on your spreadsheet software settings.

Integrate Google Calendar

Integrate Google Calendar – When enabled, a booking is automatically added to the employee's Google Calendar, and removed again if the booking is cancelled. The Google Calendar details must be entered for each employee.

Google Calendar width – The width of the Google Calendar displayed on the front end.

Google Calendar height – The height of the Google Calendar displayed on the front end.

Booking configuration

This tab contains the main options that control the booking process.

User settings

Select user group for employee – Employees can view their work schedule on the front end. Use this option together with Joomla's access levels so that only employees can see the employee menu items:

  1. Create a new group in Users -> Groups -> Add New Group.
  2. Create a new access level in Users -> Access Levels -> Add New Access Level and assign the new group to it.
  3. Select this group in the Select user group for employee field.
  4. Set the new access level on the employee menu items.

Employee can change availability status – If enabled, employees can change their own availability status from the front end.

Login/registration required – Choose how login and registration is handled before an order is completed:

  • Yes – Customers must log in or register before booking.
  • Optional – The login/register form is shown, but customers can skip it.

Enable login popup at timeslot selection – Shows a login popup when a customer selects a timeslot, reminding them to log in before booking.

Login/register at checkout page – Shows the login/register form on the checkout page.

Select special user group – Members of this group do not need to pay to complete an order. This is useful when staff add bookings on behalf of customers (for example, bookings made by phone).

Payment settings

Disable payments – When enabled, prices are hidden and customers are not charged. Depending on your settings, the booking is marked as Pending or Completed.

Enable tax – Enables tax calculation.

Tax payment % – The tax percentage added to the order.

Show prices including tax – When enabled, prices in the cart, booking confirmation and order details include tax and the tax line is hidden. Invoices still show prices without tax.

Deposit payment % – The amount customers pay as a deposit. Use Deposit type to choose how it is calculated:

  • Percentage amount – A percentage of the order total. Enter the percentage in the field. Enter 100 for full payment.
  • Flat rate amount – A fixed deposit based on the order total. Define one or more rows with From, To and Rate to set the deposit for each range of order totals.

Allow full payment – Lets customers pay the full order amount instead of only the deposit.

Enable early bird – Offers discounts for early bookings. Service-level discounts override the standard service price and are not cumulative with other discounts.

Enable slots discount – Offers discounts based on the number of slots booked.

Allow making deposit payment again when the first attempt fails – If a customer starts a deposit payment but does not complete it, they can try again.

Allow remaining payment – Lets customers pay the remaining balance of their booking later.

Deposit payment failure order status – The order status (for example Pending or Cancelled) used when a deposit payment fails.

Remaining payment failure order status – The order status used when the remaining payment fails.

Reminder

This group contains the settings for reminder notifications sent to customers before their appointment.

Enable notifications – Turns reminder notifications on or off.

Send email reminder – Sends reminder emails to customers. Enter how many hours before the appointment the reminder should be sent.

Allow customers to choose to receive reminders – Lets customers decide whether they want to receive reminder emails and SMS.

Reminders are sent by the OS Services Booking cron task. By default, the system plugin System - OS Services Booking - Cron task triggers the sending when someone visits your site (search engine bots are also counted). This is not always reliable, and on busy sites it may cause the same email to be sent several times. To avoid this, set up a cron job on your hosting:

  1. Go to Extensions -> Plugins, find System - OS Services Booking - Cron task and open it.
  2. Enter a secret string in the Trigger Code parameter.
  3. Create a cron job that requests the following URL using CURL (CURL is needed so that the variable is passed in the GET request, see https://stackoverflow.com/questions/11375260/cron-command-to-run-url-address-every-5-minutes for detailed instructions):

domain.com/index.php?trigger_reminder_code=SECRETCODE

  • Replace domain.com/ with the URL of your site.
  • Replace SECRETCODE with the secret string you entered in the Trigger Code parameter.

The reminders are then processed only when this (secret) URL is requested.

Other settings

Generate ICS file? – Generates an .ics calendar file and sends it to the customer's email when a booking is made.

Send ICS file to administrator and employees – Also sends the .ics file to the administrator and employees.

Activate linked services – Lets you link a service with other services of the same type and timeslots. When one service is booked, the timeslots of the linked services are occupied (normal timeslots) or reduced (custom timeslots).

Allowed file types – The file types customers may upload in the checkout form, separated by commas.

Activate comment & review – Lets customers write reviews and rate services and employees.

Checkout menu item ID – The ID of the menu item of your checkout page.

Banned IP addresses – IP addresses that are not allowed to book. Enter one address per line.

Banned users – Users that are not allowed to book (user ID or username). Enter one per line.

Booking settings

Allow booking without selecting an employee – Customers can see available timeslots without choosing an employee first. After selecting a timeslot they can choose an available employee or let the system assign one automatically.

Disable service timeslot when one of the employees is booked – If a service has several employees, the timeslot is disabled as soon as one of the employees is booked.

Disable venue timeslots when one of the employees is booked – When a timeslot of a service in a venue is booked, the timeslots of all other services in the same venue are disabled.

Apply venue feature – Applies the venue feature to the booking form, even when you have only one venue.

Apply rest time to all employees and linked services

  • Yes – The rest time applies to all employees of the service and all linked services.
  • No – The rest time applies only to the employee who was booked.

Employee can work in multiple services at the same time

  • Yes – An employee booked for Service B from 10:00 to 11:00 can still be booked for Service C at the same time.
  • No – The employee cannot be booked for any other service during that time.

Select the maximum timeslots that can be added for one order – The maximum number of timeslots a customer can add to a single booking.

Prevent registered user from booking more than one timeslot per date – Registered users can book only one timeslot per day. Applies to logged-in users only.

Prevent a Joomla user/email from booking more than X bookings per date/week/month – Limits the number of bookings per user or email in a day, week or month. It applies to both logged-in and guest customers. Enter 0 for no limit.

Step in minutes – The interval between available booking times. For example, with 15 minutes the times are 10:00, 10:15, 10:30, and so on. This only affects normal timeslot services.

Default order status – When payments are disabled, the status given to new orders (Pending or Completed).

Send confirmation email – When the confirmation email is sent to customers:

  • None – No confirmation email.
  • After completing the booking form – Sent when the booking form is submitted.
  • After completing payment – Sent only after a successful payment.

Send payment confirmation email – Sends a payment notification email after the customer completes the payment.

Add multiple slots per 'Add to cart' session – Lets customers add more than one timeslot in a single 'Add to cart' session.

Use QR code – Generates a QR code and sends it to the customer with the invoice after the booking is completed.

Enable waiting list – Lets customers join a waiting list for a fully booked timeslot.

Remove confirmation step – Skips the confirmation step that normally follows checkout and displays all booking details.

Temporary cart live time – How long (in minutes) a timeslot is held in the cart before it is released.

Min check-in date – The minimum number of days in advance a booking must be made. For example, 1 means the first available date is tomorrow. Leave empty or 0 for no restriction.

Max check-in date – How many days ahead customers can book. For example, 7 allows bookings in the next 7 days. Leave empty or 0 for no restriction.

Order removal settings

Allow customers to cancel booking requests – Lets customers cancel their booking requests.

Allow customers to remove order items – Lets customers remove individual items from a booking request.

Customer can cancel the booking request – The number of hours before the service starts within which customers may request a cancellation.

Remove payment failure orders – Automatically deletes orders whose payment failed.

Automatically remove pending orders – Automatically deletes pending orders after a period of time.

Remove pending orders after – The number of hours after which pending orders are removed.

Remove pending offline orders after – The number of hours after which pending offline-payment orders are removed.

Email Attachments

Up to five files can be uploaded and attached to the emails sent to customers. Supported formats: PDF, DOC, DOCX, XLS and XLSX. For each attachment you can see the Current file, tick Delete file to remove it, or use Upload new file to replace it.

Form fields

This tab controls which fields appear in the booking (checkout) form.

Fields integration – Integrates with Joomla User Profile fields so that the system can read and update them.

Email required – Makes the email field mandatory. Enable it if you use online payments, because many gateways require the customer's email.

Show salutation field in booking form – Shows a salutation field (Mr., Mrs., ...).

Show first name in the booking form – Shows the first name field.

Show phone field in the booking form – Shows the phone field.

Default dialing code – Your international dialing code, for example 1 for Canada or the USA. It is used when sending SMS if the dial code list is hidden.

Show code list – Shows a dropdown list of country dial codes, useful if customers may be outside your country.

Show country field in the booking form – Shows the country field.

Default country – The country selected by default.

Show city field in the booking form – Shows the city field.

Show state field in the booking form – Shows the state field.

Show state field through – Defines how the state field is displayed.

Show zip field in the booking form – Shows the zip/postal code field.

Show address field in the booking form – Shows the address field.

Enable note field – Shows a note field where customers can leave a message.

Show Captcha in the booking form – Adds a captcha to the booking form. The Joomla captcha is used. You can also choose JD Captcha, but it must be installed first.

Bypass captcha for registered users – Registered users do not need to enter the captcha.

Enable terms and conditions – Shows a Terms and Conditions section in the booking form.

Default terms and conditions article – The article that contains your Terms and Conditions.

Invoice settings

Activate invoice feature – Generates a PDF invoice for orders. Customers can also download it from their order history.

Send invoice to customer – Attaches the PDF invoice to the email sent to customers when the order is completed.

Send invoice to administrator – Sends a copy of the invoice to the administrator.

Invoice will be sent when order status is – The order status at which the invoice is generated and sent. Choose carefully: with Pending, customers may not receive the invoice.

Send invoice in payment notification email – Includes the invoice in the payment notification email.

Invoice start number – The first invoice number. For example, 100 means invoices are numbered 100, 101, and so on.

Invoice prefix – A prefix for invoice numbers, for example IV.

Invoice number length – The length of the invoice number. For example, with prefix IV and length 4, invoices are IV0001, IV0002, and so on.

Reset invoice number every year – Restarts the invoice numbering every year.

Invoice PDF font – The font used in invoice PDFs. Do not change it unless characters are displayed incorrectly in the PDF.

Invoice format – The content of the invoice.

Note: Please do not change the tags [NAME], [PHONE], [EMAIL] and [DETAILS]. The system replaces them with real data when invoices are created.

Invoice translation

If your site is multilingual, the Invoice translation tab lets you translate the invoice format into each content language.

SMS settings

This tab contains the text of the SMS messages sent by the system. SMS text is limited to 160 characters, so keep messages short.

You can use these tags in the messages: {OrderID}, {User}, {Email}, {business_name}, {OrderStatus}, {Name}, {Tel}, {Address}, {Message}, {Time} and {Orders_details}. Do not change a tag's spelling, because the system replaces it with the real value when the SMS is sent.

Each message has an Activate SMS option. The available messages are:

  • SMS: New booking notification – To admin, to customer and to employee.
  • SMS: Payment complete – To admin, to customer and to employee.
  • SMS: Booking reminder – To customer.
  • SMS: Booking request cancelled – To admin and to employee.
  • SMS: Order status changed – To customer.

SMS messages are sent through Clickatell.com. You must have a Clickatell account and make sure it works before using it with OS Services Booking. To test the account, open this address in your browser:
http://api.clickatell.com/http/sendmsg?user=[your user id]&** password]&api_id=[your api_id]&to=[your cell number]&text=Test+from+OSB

Note: The cell number must include the country dialing code, for example 14035551212 for the USA and Canada (no dashes).

Note: To send an SMS, the system needs the country dialing code. If the dial code list is hidden in the booking form, the Default dialing code (Form fields tab) is used. To receive SMS notifications, the administrator must enter a mobile number in Notification mobile number (General tab).

Layout settings

The layout settings are divided into groups.

Checkout & Layout Basics

Layout type – Light layout or Dark layout. Choose the one that matches your website colors.

Checkout form style – Shows the checkout form fields Horizontally or Vertically.

Calendar and cart position – Shows the calendar and cart column on the left or right side.

Use cart box – If disabled, customers go directly to the checkout page after adding a timeslot.

Hide calendar box – Show the calendar box on all pages, hide it on the checkout page, or hide it on the booking confirmation page.

Show booking summary on checkout page – Shows the booking summary at the top of the checkout page.

Show total amount on checkout page – Shows the amount to be paid at the top of the checkout page.

Show order URL and cancel URL – Shows the order details URL and the order cancellation URL in the order details and email content.

Calendar Behavior

Calendar start date – The first day of the week: Sunday or Monday.

Disable calendar on non-available employee dates – Disables dates in the calendar on which no employee is available.

Skip unavailable dates – Automatically moves to the first available date. Useful together with the Min check-in date option.

Hide tab when there is one item – When there is only one service or employee, the tab with its name is hidden.

Timeslot Selection

Show end time of timeslots – Shows both start and end time. Disable it to show the start time only.

Show only the nearest timeslot – Shows only the nearest available timeslot. After it is selected, the next one is shown.

Show occupied time slots – Shows already booked timeslots in the booking table.

Time slots background – The colors of available timeslots. Pick a Primary color (background) and a Secondary color (text and border) from the swatches, or enter a Custom hex color code.

Booked/selected time slots background – The same options as above, applied to timeslots that are booked or selected by the customer.

Show available seats of slots – Shows the number of available seats. Only for custom timeslot services.

Show number of slots input box – Shows the number of slots input box. When hidden, the number of slots is 1. Only for custom timeslot services.

Services & Employees

Show services and employees in – Displays them as tabs or as a select list. Use a select list if you have many services and employees.

Show service information box – Shows the service information box on the booking page.

Show booked information box – Shows the booked timeslots information.

Show employee information bar – Shows the employee information bar.

Show employee phone and email – Shows the employee's phone and email.

Show employee photo and notes on the booking page? – Shows the employee photo and notes.

Show employee cost – Shows the employee cost in the booking table.

Show venue information in booking table page? – Shows venue details so customers know where the service takes place.

Pricing & Tax

Show tax in cart – Shows the tax amount in the cart.

Service cost including tax – Shows service costs including tax.

Progress & Steps

Would you like to prompt the user with a modal? – Shows a confirmation popup before customers continue with front-end actions.

Show progress bar – Shows the booking progress bar at the top of the pages.

Progress bar color – The color of the progress bar. Choose a predefined color or enter a custom hex color code.

Calendar Theme

Calendar Header Color Scheme – Choose a predefined scheme (Ocean Blue (Default), Emerald Green, Sunset Orange, Royal Purple, Crimson Red, Teal Cyan, Midnight Blue, Rose Pink, Forest Green, Amber Gold) or Custom Color Scheme. For a custom scheme, set the Primary Color and Primary Dark Color; a Custom Color Preview is shown.

Select Calendar Theme – Choose Golden Luxury, Ocean Blue, Emerald Green, Sunset Orange, Royal Purple, Rose Pink or Custom Style. A preview shows how the Current, Available, Selected, Inactive and No Slots dates look.

Custom Calendar Style Settings – Available with Custom Style. Enter your own style for the Current Date, Normal Date, Selected Date, Inactive Date and Non-Available Timeslots.

Note: Some layout options can be overridden by your Joomla template CSS.

Email marketing

Use this tab to add customers to your AcyMailing lists. When enabled, OS Services Booking adds the customer to a mailing list when a booking is made.

Note:

  1. Changing the status of a booking has no effect on AcyMailing.
  2. Cancelling a booking does not remove a list entry.
  3. OS Services Booking never removes list entries from AcyMailing.
  4. You must have the AcyMailing component installed. See https://www.acyba.com/acymailing.html.

Enable AcyMailing – Turns the integration on or off.

Select default list – The AcyMailing list that customers are added to. A service can override this value.

Tracking Configuration

Enable Google Analytics – Adds Google Analytics (GA4) tracking to your booking pages.

Google Analytics Measurement ID – Your GA4 Measurement ID (for example G-XXXXXXXXXX).

Enable Facebook Pixel – Adds the Facebook Pixel tracking code to your booking pages.

Facebook Pixel ID – Your Facebook Pixel ID.

Custom CSS

Enter your own CSS in the editor to change the appearance of OS Services Booking pages. It is saved in the file media/com_osservicesbooking/assets/css/custom.css, so it is not lost when you update the component.

GDPR

Show privacy policy checkbox – Shows a privacy policy checkbox in the checkout form. Customers must tick it to book.

Privacy policy article – The article that contains your privacy policy.

Show privacy policy checkbox for logged-in users – Also shows the checkbox to logged-in users.

Show privacy policy checkbox in registration form – Shows the checkbox in the registration form.