Quick booking form
Updated on Friday 22 May 2026
Every option in the quick form that opens when you tap/drag a calendar slot.
The quick form is the popup that opens when you create a booking or a blocked time directly from the calendar (not from the customer’s public link). It’s the main tool for handling walk-ins, calls, and WhatsApp bookings.
How to open it
| Action | Result |
|---|---|
| Tap an empty slot | Opens the form with the slot’s start time pre-filled. Default duration of the chosen service. |
| Drag a range of slots | Opens the form with the start time + the duration of the dragged range. |
| ”+ New booking” button (top right of the calendar) | Opens the form with nothing pre-filled. |
| Double-click an empty slot (computer) | Same as tapping. |
Type selector
At the top of the form there’s a toggle:
| Option | When to use it |
|---|---|
| Create booking | A normal appointment with a customer. |
| Block time | To mark that you don’t take appointments during that time (lunch, doctor, training). |
This guide covers Create booking. For blocked times, see Block times.
Booking fields
Service
- Selector with all the business’s active services.
- If you filtered by category on the calendar, the selector starts filtered by that category.
- When you choose one, the service duration auto-fills as the booking duration.
- If the service has a per-professional override, the duration changes when you choose a professional.
Multi-service: tap ”+ Add another service” to book several in the same appointment (e.g., haircut + coloring). The durations add up.
Professional
- Selector with the active professionals who handle the chosen service.
- If the calendar is filtered by a specific professional, it’s preselected.
- If there’s only one available professional, it’s also preselected.
Date and time
- Date: the day of the slot you tapped. Editable.
- Time: the slot’s time. Editable.
- Duration (min): auto-filled from the service. Manually editable for special cases.
Customer
A search box with 3 options:
| Option | When to use it |
|---|---|
| Search an existing customer | Type a name, email, or phone. Suggestions from your history appear. You pick one. |
| New customer | Tap “New customer” → fill in name + email + phone. It’s saved to your database. |
| No customer | For “time reserved for me” or internal uses. Appears as “No customer” on the calendar. |
Fields when creating a new customer:
| Field | Required |
|---|---|
| First name | Yes |
| Last name | No |
| Phone | Recommended (for WhatsApp) |
| Recommended (for confirmation) | |
| Internal notes | No |
Notes
A textarea for notes only the team sees (not the customer). Useful for:
- “Customer allergic to salicylic acid”
- “Brings her child, leave 15 min extra”
- “VIP customer, serve personally”
- “First visit — ask how they first reached out”
State on creation
| When you create | Initial state |
|---|---|
| Manual booking from the calendar | confirmed (you are the admin, no auto-confirmation needed) |
| Walk-in | confirmed |
| By phone | confirmed |
Internally created bookings don’t go through deposit mode — you charge however you like (cash, transfer, later). Deposit mode applies only to the public link.
Notifications
A “Notify the customer by email” checkbox (default: on if you entered an email).
- If on: a confirmation email is sent to the customer.
- If you have WhatsApp configured and the customer has a number: WhatsApp goes out too.
Useful to turn off when:
- You’re creating a walk-in where the customer is already physically present.
- You’re creating a booking as an internal “placeholder” and don’t want to bother the customer.
Payments (if deposit mode is enabled)
An expandable section. It lets you record payments at the moment of creation:
| Field | Description |
|---|---|
| Apply discount code | You enter a code and the discounted price is shown. |
| Deposit received | The amount the customer already paid (cash, transfer, etc.). |
| Deposit payment method | Cash / Transfer / POS / Other. |
| Balance to collect | Calculated automatically: price - deposit. |
Validations
| Validation | Error message |
|---|---|
| No service chosen | “Choose a service.” |
| No professional chosen | “Choose a professional.” |
| Time outside the professional’s working hours | “This time is outside the professional’s hours.” |
| Slot already occupied | “There is already a booking at this time for this professional.” |
| Customer with no phone or email | Warning (not an error): “No customer contact; they won’t be able to receive notifications.” |
Actions
| Button | Action |
|---|---|
| Create | Persists the booking. Closes the form. Appears on the calendar right away. |
| Cancel | Closes the form without saving. |
| Create and add another | Persists this one and opens a new form for the next. Useful for entering several bookings in a row (e.g., a family coming together). |
Shortcuts
| Key | Action |
|---|---|
Tab |
Move to the next field |
Enter (in text fields) |
Creates the booking |
Esc |
Closes the form |
Block mode (differences)
If you choose Block time instead of Create booking:
| Field | Behavior |
|---|---|
| Service | Doesn’t apply (hidden) |
| Customer | Doesn’t apply (hidden) |
| Professional | “Whole business” or a specific one (the blocked time affects only that professional) |
| Reason | Free text (e.g., “Lunch”, “Training”, “Vacation”) |
| Repeat | Once / Weekly / Custom |
Permissions
| Role | Access to the quick form |
|---|---|
| Owner | Bookings and blocked times with no restrictions. |
| Admin | Bookings and blocked times with no restrictions. |
| Member | Only blocked times for themselves. Can’t create bookings. |
Common errors
| Symptom | Cause | Solution |
|---|---|---|
| The form doesn’t open when I tap | You’re in “view” mode (not editor) or lack permissions | Check your role |
| The service doesn’t appear in the selector | Inactive or no professional available | Activate the service and check the assigned professionals |
| The customer doesn’t appear in the search | They’re in another business or weren’t saved | Create a new one |
| The duration doesn’t auto-fill | The service has no base duration + the professional’s override is empty | Enter a duration manually |