{info} The Booking Widget lets your customers book services directly from your own website. Three embed options are available: a standard booking form, a full booking portal, and an AI-powered chat assistant.
The Booking Widget gives you embed codes that you paste into your website. Customers who visit your site can browse your services and book appointments without leaving it — the booking experience lives in an iframe on your page.
{primary} The Booking Widget is only available to provider accounts. Staff members do not see this option.
Embed codes use two types of slugs that uniquely identify your business and services.
Your provider slug is the unique identifier for your business on the platform. You can find it in any of these places:
…/downtown-salon → your slug is downtown-salon{YOUR_SLUG} replaced with your actual value{info} Your slug is automatically generated from your company name. If you change your company name in Profile Settings, the slug regenerates and your embed codes update automatically.
Each service has its own slug used in single-service embed snippets:
/provider/services/60-minute-massage/edit → the service slug is 60-minute-massage{SERVICE_SLUG} placeholder with the slug from the service URLThe AI Chat Booking is an intelligent booking assistant that customers interact with through a conversational chat interface. Instead of clicking through a form, customers describe what they want in plain language, and the assistant guides them through the entire booking process.
The AI assistant handles the full booking lifecycle through conversation:
| Step | What the AI does |
|---|---|
| Service selection | Lists your services, helps customers find the right one by name or keyword |
| Branch & resource selection | Shows available branches and resources, guides the choice |
| Availability check | Finds available dates and time slots in real time |
| Add-ons | Lists optional extras and lets customers add them |
| Quotes | Calculates a full price breakdown including base price, add-ons, taxes, and deposits |
| Payment | Presents available payment methods (online card, cash on service) |
| Booking creation | Creates the booking and confirms the order number |
| Existing bookings | Lets customers find, amend, or cancel their existing bookings |
When a customer opens the AI Chat, they see a welcome message like:
"Hi, I can help you book [Service Name]. Ask about price, branches, add-ons, or availability."
From there, the customer types naturally — for example:
The AI understands the intent, asks clarifying questions when needed, and presents options as interactive cards that the customer can tap to select.
For guest customers (not logged in), the AI handles:
{info} The AI Chat Booking requires the AI addon to be enabled on your subscription plan. You can enable it from your Subscription page.
The standard embed shows a traditional booking form for a specific service. The customer picks a date, time, and any add-ons through the form.
To embed a specific service, you need its service slug. Find it by opening the service from your Services page — the slug appears in the browser URL (e.g., /provider/services/60-minute-massage/edit → the slug is 60-minute-massage). Replace {SERVICE_SLUG} in the embed snippet with this value.
{info} See Finding Your Slugs above for step-by-step instructions on locating both your provider slug and service slugs.
The booking portal embed shows a complete booking interface where customers can browse all your services, read descriptions, check availability, and book — all without leaving your website.
For security, you must specify which websites can load your booking widgets. Only pages hosted on the domains you list will be able to display your embed. Enter hostnames only — one per line.
| Rule | Correct | Incorrect |
|---|---|---|
| Bare hostname only, no protocol | example.com |
https://example.com |
| No paths or trailing slashes | example.com |
example.com/booking |
| No ports | example.com |
example.com:8080 |
| Subdomain wildcards are supported | *.example.com matches shop.example.com |
*.example.com does NOT match example.com |
| Your Website URL | Enter in Allowed Domains |
|---|---|
https://example.com/booking |
example.com |
https://www.example.com/app/widget |
www.example.com |
https://shop.mysite.co |
shop.mysite.co |
Multiple subdomains: salon.example.com, spa.example.com |
*.example.com |
| Both main domain and all subdomains | example.com and *.example.com on separate lines |
{warning} Leaving the allowed domains field empty will prevent the widget from working on any website. You must add at least one domain for the embed to function.
The page shows embed codes for each widget type. Copy the snippet and paste it into your website.
In Domain Authorisation, choose Chat launcher position (bottom left or bottom right) before copying the AI chat launcher script. Save your settings first so the snippet reflects your choice.
| Type | Snippet | Best for |
|---|---|---|
| AI Chat (launcher) | <script src="…/embed/v3/{YOUR_SLUG}/chat/loader.js"> + floating button |
A chat bubble on any page — recommended |
| AI Chat (inline iframe) | /embed/v3/{YOUR_SLUG}/chat in iframe (420 × 620 px) |
A fixed inline chat area on a page section |
| Service Booking | /embed/{YOUR_SLUG}/{SERVICE_SLUG}/book iframe (100% × 700 px) |
A specific service's booking page |
| Portal | /embed/{YOUR_SLUG}/portal iframe (100% × 800 px) |
A full service catalog page |
Replace {SERVICE_SLUG} with your service's slug — find it from the service URL in your Services page (see Finding Your Slugs).
{info} The AI chat snippets use the current assistant (
/embed/v3/...). Legacy/embed/{slug}/chatURLs still work if you already embedded them, but new installs should copy the snippets from Embed Settings.
{info} Cookie consent banners do not appear inside embed iframes on external sites. Your website is responsible for visitor consent regarding third-party widgets.