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.

Booking Management Dashboard

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
Email 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:

  1. Click the link (copy URL) icon on the config card
  2. The URL is copied to your clipboard automatically
  3. 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:

  1. A confirmation dialog appears
  2. 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

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

  1. Paste the iCal feed URL from your OTA into the iCal URL field
  2. Select the corresponding Room from the room dropdown (you can type to search)
  3. Set the Guest Form toggle to control whether guests must complete the guest form during check-in (default: ON)
  4. Click Add Feed
  5. 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:

  1. Enter a config name
  2. In the Room Type x Plan section, select which room type and plan combinations to offer guests
  3. Set currency, advance booking limits, and cancellation policy
  4. Save the config
  5. 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:

  1. 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.
  2. 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.