Booking Management Dashboard Help
Overview
The Booking Management dashboard is the admin interface where facility managers view and manage all guest reservations, check availability on a calendar, and configure the booking settings used to generate guest booking URLs.

The dashboard has six top-level tabs:
- Calendar — Availability calendar (Month, Week, and Timeline views). Click empty cells to create a reservation; click existing blocks to view details. (default view)
- Reservations — View all guest reservations with status and date filters
- Plan Configs — Create, edit, delete, and share reservation configuration links
- Guest Form — Manage the fields guests fill out during check-in
- Check-in — View and copy guest-facing check-in URLs for your iCal and site controller integrations
- iCal Sync — Set up iCal feed integrations with Airbnb and other OTAs
How to Access
From the main navigation, select Booking Management. The Calendar tab is shown by default.
You can navigate directly to any tab by appending a query parameter to the URL:
| Tab | URL parameter |
|---|---|
| Calendar | (default, no parameter needed) |
| Reservations | ?tab=reservations |
| Plan Configs | ?tab=configs |
| Guest Form | ?tab=guestForm |
| Check-in | ?tab=checkin |
| iCal Sync | ?tab=ical |
Features
Feature 1: Reservations Tab
The Reservations tab lists guest reservations for this facility, ordered by check-in date (newest first). By default, reservations starting from 7 days ago up to 90 days ahead are shown.
Status Filter
Use the pill-style filter buttons at the top of the list to narrow reservations by status:
| Filter | Shows |
|---|---|
| All | Every reservation regardless of status |
| Application | Reservations received but not yet confirmed |
| Confirmed | Reservations that have been confirmed |
| Checked In | Guests currently checked in |
| Cancelled | Reservations that have been cancelled |
Note: A "Checked Out" status also exists and appears as a badge on reservation cards.
Selecting a filter immediately reloads the list to show only matching reservations. When viewing "All", a count badge appears next to each non-zero status.
Search and Date Filter Bar
Below the status filters is a row of controls for text search, date range filtering, and resetting all filters.
Text Search
Type part of a guest name, email address, or reservation number in the search box. The list updates automatically after a 400 ms debounce pause. Search is case-insensitive.
Date Range Filter (DateRangePicker)
Click the calendar icon to open the date picker and select a start date and end date to narrow the visible date range.
| Setting | Behavior |
|---|---|
| Start date only | Shows reservations starting on or after the start date |
| End date only | Shows reservations starting on or before the end date |
| Both dates | Shows reservations within the specified period |
| Default | 7 days ago to 90 days ahead |
Reset Button
Click Reset to restore the date filter to its default (7 days ago to 90 days ahead), clear the text search field, and reset the status filter to "All".
Reservation Cards
Each card displays:
| Field | Description |
|---|---|
| Guest Name / Email | Name or email of the guest who made the reservation |
| Status badge | Current status (Application / Confirmed / Checked In / Cancelled) |
| Amount | Total reservation amount and currency |
| Unpaid badge | Shown if payment has not been completed |
| Source badge | Color-coded badge showing the booking source (Direct / iCal/Airbnb / OTA) |
| Check-In | Date and time of check-in |
| Check-Out | Date and time of check-out |
| Reservation Number | Internal reservation ID |
| Guest email address | |
| Notes | Any notes attached to the reservation |
Clicking a reservation card opens the Reservation Detail Drawer on the right side of the screen.
Source Color Coding
Reservation blocks and source badges are color-coded by origin:
| Color | Source | Description |
|---|---|---|
| Blue | Direct | Created manually in the dashboard, or via a direct booking URL |
| Sky blue | iCal / Airbnb | Imported from an iCal feed (e.g. Airbnb) |
| Coral | OTA | Reservations from other OTA channels |
Feature 2: Calendar Tab
The Calendar tab gives you a visual overview of reservation availability. You can click an empty area to create a new reservation on the spot, or click an existing reservation block to view its details.
Switching View Modes
Use the header controls to switch between three view modes:
| Mode | Description | Reservation Display |
|---|---|---|
| Month | Full-month occupancy overview | Reservation counts per day + [+] button |
| Week | 7-day grid × unit rows | Reservation bars per room unit |
| Timeline | Hourly view of unit occupancy | Time-based reservation bars |
Use the navigation arrows in the calendar header to move between months, weeks, or days.
Creating a Reservation from the Calendar
Clicking an empty area in the calendar opens the Reservation Creation Drawer on the right side. The date, unit, and time are pre-filled based on where you clicked.
| View Mode | Action | Auto-filled fields |
|---|---|---|
| Month | Click the [+] button on a day cell | Check-in date |
| Week | Click an empty cell | Check-in date + unit |
| Timeline | Click an empty area | Check-in date + unit + time |
Hourly and TimeSlot Reservations in the Calendar
Hourly and timeSlot reservation types now appear correctly in the Week and Timeline views.
| View Mode | Hourly / TimeSlot reservation display |
|---|---|
| Month | Not included in the availability gradient (short bookings do not block a full day — this is intentional) |
| Week | Shown as reservation bars in the unit row |
| Timeline | Shown as precisely positioned bars on the time axis |
Month view note: Hourly reservations are intentionally excluded from the month-view occupancy gradient. Switch to Week or Timeline view to see their details.
Auto-Confirmation of Free Hourly Reservations
Hourly and timeSlot reservations with a total amount of 0 (free) are automatically confirmed at booking time.
- No manual admin confirmation is needed.
- An available room is automatically assigned.
- The reservation appears immediately in the Week and Timeline calendar views.
Viewing a Reservation from the Calendar
Clicking a reservation block in the calendar opens the Reservation Detail Drawer on the right side.
Feature 3: Reservation Drawer
The Reservation Drawer is the 420 px panel that slides in from the right side of the screen when you click a calendar cell or a reservation card in the list. It has three modes.
Create Mode
A blank reservation form is displayed with date, unit, and time pre-filled from where you clicked.
Form Fields
| Field | Description | Required |
|---|---|---|
| Check-in date/time | Start of the stay | Yes |
| Check-out date/time | End of the stay | Yes |
| Stay type | Toggle between Nightly and Hourly | Yes |
| Room type | Select the room type | Yes |
| Plan | Select the plan for the chosen room type | Yes |
| Guest name | Name of the guest | No |
| Guest email | Email address of the guest | No |
| Notes | Admin-facing notes | No |
Post-Create Actions
After a reservation is created, two link cards appear:
| Link | Description |
|---|---|
| Unpaid reservation link | Slug-based URL for the guest to complete payment and check in |
| Paid reservation link | URL for guests who have already paid — delivers the key only |
Each card has a "Copy link" button and a "Send by email" button (available only when a guest email was entered).
Detail Mode
Displays a read-only summary of the reservation.
| Field | Description |
|---|---|
| Guest info | Name and email address |
| Dates | Check-in and check-out date/time |
| Amount and payment status | Total amount and paid/unpaid state |
| Access code | Guest-facing door code (if issued) |
| Source badge | Booking origin |
| Edit button | Switches to Edit mode |
Edit Mode
Click the Edit button in Detail mode to switch to Edit mode. The reservation form is shown with all current values pre-filled so you can update and save.
Feature 4: Plan Configs Tab
Reservation configs define the booking rules guests encounter when they use your facility's booking URL. Each config acts as a distinct booking "product" — you can have multiple configs for different room type combinations, pricing structures, or cancellation policies.
Config Card Information
Each config card shows:
| Field | Description |
|---|---|
| Config Name | Display name for this reservation config |
| Active / Inactive badge | Whether this config is currently accepting bookings |
| Currency | Currency used for payments |
| Min Advance | Minimum hours before check-in that a booking must be made |
| Max Advance | Maximum number of days ahead that a booking can be made |
| Policy Tiers | Number of cancellation policy tiers defined |
| Plans | Number of KEYVOX plans linked to this config via room-plan mappings |
Creating a New Config
Click the New button in the top-right of the Configs tab to open the reservation config creation form.
See the Reservation Config Form help for details on each field, including how to configure room-plan mappings.
Editing a Config
Click the pencil (edit) icon on a config card to open that config in the edit form.
Copying the Booking URL
Each config generates a unique guest-facing booking URL. To copy it:
- Click the link (copy URL) icon on the config card
- The URL is copied to your clipboard automatically
- A "Copied" confirmation appears briefly
The URL format (when a facility slug is configured):
https://booking.unlockos.io/{slug}?config=<config-id>
If no facility slug is set, the legacy format is used instead:
https://booking.unlockos.io?facilityId=<facility-id>&configId=<config-id>
Share this URL with guests (via email, your website, or messaging) to let them make reservations using that specific config. You can set the slug in Basic Settings under "App URL".
Deleting a Config
Click the delete icon on a config card to delete it:
- A confirmation dialog appears
- Click Delete to confirm — this action is permanent
Note: Deleting a config does not delete existing reservations that were made through it. Only the config itself is removed, preventing new reservations from being created with it.
Feature 5: Guest Form Tab

The Guest Form tab lets you manage the fields guests fill out during check-in. Setting your facility's host country automatically determines which identity documents are required based on each guest's nationality (passport for foreign guests, national ID for domestic guests).
What you can do here:
- Set the facility host country
- Review default form fields
- Add and delete custom fields
- Preview the form as guests will see it
For full documentation, see Guest Form Configuration.
Feature 6: Check-in Tab
The Check-in tab displays the guest-facing check-in URLs for all reservation sources connected to your facility — iCal feeds and site controller integrations alike. It sits between the Guest Form tab and the iCal Sync tab.
What is Shown
When iCal feeds or a site controller integration (e.g. Neppan) are registered, each connected source appears as a URL card:
| Field | Description |
|---|---|
| Config name | The name of the check-in config linked to this URL |
| Source badge | Color-coded badge showing the reservation source (iCal or the provider name such as neppan) |
| Room name | The room linked to the iCal feed, if applicable |
| Check-in URL | The URL to share with guests (displayed in monospace) |
| Copy button | Copies the URL to the clipboard |
When No Sources Are Connected
If no iCal feeds or site controller integrations have been set up, a warning message appears: "No reservation sources connected." Set up an iCal feed in the iCal Sync tab or a site controller in Connection Settings → External Integrations.
For full documentation see iCal Sync and External Integrations.
Feature 8: iCal Sync Tab
The iCal Sync tab lets you register iCal feeds from Airbnb and other OTAs to automatically import reservations. Registered feeds are synced periodically and the imported reservations appear in the Reservations list and Calendar.
Adding an iCal Feed
- Paste the iCal feed URL from your OTA into the iCal URL field
- Select the corresponding Room from the room dropdown (you can type to search)
- Set the Guest Form toggle to control whether guests must complete the guest form during check-in (default: ON)
- Click Add Feed
- After the feed is added, a success banner with a Go to Check-in Tab button appears — click it to find the check-in URL to share with guests
For full documentation of this tab, see iCal Sync.
Feed Table Information
Each registered feed row shows:
| Column | Description |
|---|---|
| Feed URL | The registered iCal URL |
| Room | The room this feed is linked to |
| Last Sync | Timestamp of the most recent sync |
| Events | Number of reservations imported in the last sync |
| Status | Success, Error, or Pending |
| Matching | Matching mode toggle for this feed |
| Guest Form | Whether the guest form is required for this feed (ON/OFF button) |
| Actions | Sync and Delete buttons |
Guest Form ON/OFF
Click the ON/OFF button in the Guest Form column to toggle whether guests must fill out the guest form (passport details, etc.) when checking in through this feed. The default is ON, which is recommended for accommodation compliance.
Matching Modes
Each feed can be set to one of two matching modes:
| Mode | Description |
|---|---|
| Guest verification | Guests authenticate themselves by entering their reservation number |
| Host managed | The host (admin) manages reservation matching and key issuance |
Click the toggle on a feed row to switch modes.
Manual Sync
Click the circular arrow (sync) button on a feed row to immediately fetch and update reservations from that feed.
Deleting a Feed
Click the Delete button on a feed row. A confirmation modal appears — click Delete to confirm. Automatic syncing stops after deletion. Reservations that were already imported are not deleted.
How to Set Up a Booking Flow (Step-by-Step)
Setting up online reservations for your facility requires two steps in this order:
Step 1: Create Plans
Go to Plan Management and create pricing plans for your room types. Use the "Accommodation" plan type for nightly stays.
Step 2: Create a Reservation Config
Go to the Plan Configs tab, click New, and:
- Enter a config name
- In the Room Type x Plan section, select which room type and plan combinations to offer guests
- Set currency, advance booking limits, and cancellation policy
- Save the config
- Copy the generated booking URL and share it with guests
Important: Only room types that have been added to at least one reservation config (via room-plan mapping) will appear on the guest-facing booking page. Completing this step is required for a room type to be bookable by guests.
Frequently Asked Questions
Q: Hourly reservations are not showing on the calendar
Switch to Week or Timeline view. Hourly and timeSlot reservations are intentionally excluded from the Month view occupancy gradient because short bookings do not block an entire day.
Q: Do I need to manually confirm free hourly reservations?
No. Hourly and timeSlot reservations with a total amount of 0 (free) are automatically confirmed and assigned to an available room at booking time.
Q: What is the difference between Application and Confirmed status?
Application means the reservation has been received but not yet processed. Confirmed means the reservation has been accepted and any access code has been issued.
Q: How do I create a reservation from the calendar?
Open the Calendar tab and click an empty area — the [+] button on a day cell in Month view, or any empty cell or area in Week and Timeline view. The Reservation Creation Drawer opens on the right side with date and unit pre-filled.
Q: Where can I see reservations imported from Airbnb?
Both the Reservations tab and the Calendar tab show iCal/Airbnb reservations. They are identified by a sky-blue source badge.
Q: Can I have multiple reservation configs?
Yes. You can create as many configs as needed. This is useful when offering different room types, pricing models, or cancellation policies through separate booking URLs.
Q: What happens to existing reservations if I delete a config?
Existing reservations are not affected. Only new reservations through that config's URL are prevented.
Q: The booking URL I copied — where should guests use it?
Guests open the URL in a web browser to view available dates and make a reservation. You can share it via email, embed it on your website, or include it in a QR code.
Q: A room type I created is not showing up on the guest booking page
A room type only appears on the guest-facing booking page if it has been linked to at least one active reservation config via a room-plan mapping. Check the following:
- Open the Plan Configs tab, edit your config, and verify the room type appears in the Room Type x Plan section with a plan assigned.
- If the room type has no plan mapping in any config, it will not be shown to guests even if it is active.
Q: I searched for a reservation but it did not appear
Text search matches guest name, email address, and reservation number. Reservations outside the current date filter range are also excluded. Try clicking Reset to return to default filter settings and search again.
Q: Older reservations are not showing up
The default date filter starts from 7 days ago. To view older reservations, use the DateRangePicker to set an earlier start date.
Q: How do I automatically import Airbnb reservations via iCal?
Open the iCal Sync tab, paste your Airbnb iCal export URL, select the corresponding room, and click Add Feed. After the feed is registered, copy the displayed check-in URL and add it to your Airbnb Arrival Guide so guests can check themselves in automatically.
Q: How often are iCal feeds synced?
Feeds are synced automatically on a recurring schedule. To sync immediately, click the Sync button on any feed card.
Related Pages
- Reservation Config Form (Create/Edit)
- Guest Form Configuration
- Guest Booking App (Manage Reservations)
- Check-In (How to Receive Your Access Keys)
- iCal Sync (Airbnb / OTA Integration)
- Plan List (Manage Pricing Plans)
- External Integrations (Site Controller)
- Shared Capacity Booking (Coworking Seat Booking)