Booking Pages
Manage booking services, pages or the bookings they receive.
Before you start
Use the account and workspace that own the records. This page does not include administrator configuration forms.
Open /portal/booking-pages on your application domain, or use the matching item in the application menu.
Steps
Example: create a 30-minute service
- Open Booking Pages and select New service. The empty-state control is Create booking service.
- Choose the business that owns the service. Enter Test appointment as Service name and 30 as Duration minutes.
- For this test, set Slot interval to 15 and both buffers to 0. Set Price only if the test service needs it.
- Review whether the service should use the business hours. If it uses its own hours, check the opening and closing values for each configured day.
- Select Save booking service. Confirm that the service appears under the correct business. Editing an existing service uses Update booking service.
| Setting | Test value |
|---|---|
| Service name | Test appointment |
| Duration minutes | 30 |
| Slot interval | 15 |
| Buffer before | 0 |
| Buffer after | 0 |
Create its public booking page
- In the booking-page form, select the same business and enter an optional Page name.
- Select Create and edit design. The source creates the public booking page and opens its design editor.
- Review the page design and use the public URL produced by the application.
- Make one synthetic booking, then return to Booking Pages and check the stored business, service and booking status.
Fields shown in the interface
Only fields traced to this role’s handler and its own view are listed. The application can show separate create/edit forms; do not fill every row on one screen.
Form 1 — fields shown in the interface
| Field | What to enter or choose |
|---|---|
| Business | Required. Choose Select business. Enter a whole number. |
| Service name | Required. No more than 255 characters. |
| Duration minutes | Required. Enter a whole number. At least 5. No more than 1440. |
| Price | Optional, unless this form asks for it. Enter a number. At least 0. |
| Description | Optional, unless this form asks for it. No more than 1000 characters. |
| Slot interval | Required. Choose 15 minutes, 30 minutes, 60 minutes. Enter a whole number. |
| Buffer before | Required. Choose one of the options shown by the form. Enter a whole number. |
| Buffer after | Required. Choose one of the options shown by the form. Enter a whole number. |
| Page name | Optional, unless this form asks for it. No more than 255 characters. |
Check the result
After a source-checked procedure, verify the same record in the same workspace. Check saved values, visible state and access with the intended test account. An external payment/message/provider action needs its own result check.
Problems and validation
| Problem | Next step |
|---|---|
| A field rejects the value | Check its named error, the form’s visible choices and the relevant limit. Do not substitute internal numeric codes for the displayed options. |
| The control is missing | Check role, plan, enabled app and current record state. Do not grant administrator access merely to complete a User task. |
| The saved result is unexpected | Reopen the same record and verify its owner/workspace before repeating the action. |
Technical reference
Role-scoped source references
Pinned commit: 5af0236c6d99c50079f5ab8b8fb035506634bd8d
Source-only route information
| Method | Source-default route |
|---|---|
| LIVEWIRE | /portal/booking-pages |
Unmapped fields — not user instructions
These fields belong to this role’s source handler, but their screen labels were not confirmed.
| Source key | Handler |
|---|---|
| service_hours.*.open_time | modules/AppBookingPages/Livewire/BookingPageIndex.php |
| service_hours.*.close_time | modules/AppBookingPages/Livewire/BookingPageIndex.php |