Reservation Creation and Editing Help

Overview

The Reservation Creation and Editing form lets administrators manually create or modify guest reservations. It appears as a slide-in drawer on the right side of the screen when you click an empty cell in the calendar. Clicking an existing reservation card in the list opens the drawer in Detail or Edit mode.

What you can do with this form:

  • Create a reservation with date, unit, and time pre-filled from the calendar
  • Choose between nightly and hourly stay types
  • Select a room type and plan
  • Enter guest information
  • Send payment and key links after creation

How to Access

Booking Management Dashboard → Calendar tab → click an empty cell (or the [+] button)

Or:

Booking Management Dashboard → Reservations tab → click a reservation card → Edit button


Features

Feature 1: Creating a Reservation from the Calendar (Create Mode)

When you click an empty area of the calendar, the date, unit, and time are pre-filled depending on the current view mode.

Auto-fill by View Mode

View Mode Action Pre-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

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 (per night) and Hourly (per hour) Yes
Room type Select the room type to reserve Yes
Plan Select the plan for the chosen room type Yes
Guest name Name of the guest No
Guest email Email address (used for sending payment and key links) No
Notes Admin-facing notes (not shown to guests) No

Feature 2: Post-Create Actions

After a reservation is created, a single guest link card appears.

The card has a "Copy link" button and a "Send by email" button (available only when a guest email was entered).

Where the link points depends on the facility's setup.

Facility state Link What the guest does
Has a check-in configuration Check-in link Checks in (and pays if required)
Has no check-in configuration Reservation link Reviews the reservation (and pays if unpaid)

The generated URL format (when a facility slug is configured):

# Facility with a check-in configuration
https://checkin.unlockos.io/{slug}?reservationId=...&reservationType=...

# Facility without one (handled entirely in the booking app)
https://booking.unlockos.io/{slug}?reservationId=...

If no slug is set, the legacy ?facilityId=... format is used instead.


Feature 3: Reservation Detail Mode

Clicking an existing reservation from the list or the calendar opens the drawer in Detail mode.

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 (Direct / iCal / OTA)
Guest link The link to hand the guest (copy / email). Where it points depends on the facility's setup
Edit button Switch to Edit mode
Unlock activity Actual unlock/lock history shown below the reservation code (see below)

Recording an on-site payment ("Received on-site")

For a reservation whose payment method is on-site (no online payment) and whose payment status is unpaid, a "Received on-site" button appears below the amount / payment status field.

Condition Behaviour
On-site + unpaid + amount greater than ¥0 + not cancelled The button appears
Reservation paid online (by card) The button does not appear — an online booking is settled by Stripe automatically, and recording it here as cash would double-count the stay
Already paid, or cancelled The button does not appear
  1. Click the button to open the receipt dialog
  2. Enter the amount received (defaults to the amount due), the payment method (cash / bank transfer / other), the date and time received, and an optional note
  3. Click "Record receipt" — the receipt is recorded and the key is issued immediately (the guest also receives it in the confirmation email)

No key is issued until the receipt is recorded. This button is the only settlement path for an on-site reservation. Changing the payment status dropdown directly to "Paid" does not record an amount, a method, or who received it, so recording through this button is the correct procedure (the dropdown remains available for corrections, but this button is the primary path).

A reservation only records an exact match. Entering an amount different from the amount due returns "The amount received does not match the amount due." If a discount is needed, edit the reservation's total first, then record the receipt (to partially clear an outstanding postpaid balance instead, use the receipt action on Check-in History, not this one).

If you see "recorded, but the key could not be issued". The receipt itself is already on the books, so there is no need to take the payment again. Pressing the same button retries only the key issuance, without recording a second receipt.

The button does not appear on a cancelled reservation. Once an on-site, unpaid reservation is cancelled, no key can be granted for it, so a receipt cannot be recorded against it either.

Unlock Activity

Below the reservation code field in Detail mode, an "Unlock Activity" section shows a timeline of the KEYVOX unlock/lock events tied to this reservation. It lets you see not just the reservation's intent (who is supposed to use the room and when) but what actually happened.

Item Content
Summary (unlock count, first unlock, last unlock) Shown only when there is at least one unlock
Post-checkout unlock warning A yellow notice banner appears if an unlock happened after the scheduled check-out time (possible overstay)
Timeline Time (Japan Standard Time), kind (unlock 🔓 / lock 🔒 / unlock failed ⚠️ / sync 🔄), entry/exit direction, method (PIN / QR / card / remote / manual / auto-lock), and lock name
"Inferred" badge Shown on unlocks that were matched to this reservation by lock + time window rather than by the exact reservation code (an exact match carries no badge)

A failed unlock is highlighted, not just iconified. It always shows the "Unlock Failed" label (not just an icon) with a red-tinted background, since it's the signal most worth not missing.

An empty list does not prove the room was never used. It shows "No unlock records," but the same empty state also appears for reservations from before this tracking started, or for facilities without lock integration configured.

Facilities that share a lock across reservations may show fewer entries than expected. When multiple reservations (or facilities) share the same entry lock, an unlock on that lock cannot be safely attributed to one specific reservation — so it is deliberately left out rather than risk showing it against the wrong reservation (misattribution is treated as worse than no attribution).

This section only appears in Detail mode — not while creating or editing a reservation — and is never shown to guests (it's internal, staff/owner-facing information).


Approving or rejecting a pending reservation

When a plan has reservation approval turned on, bookings on that plan arrive as "pending approval". Opening such a reservation shows an approval prompt in the detail panel.

Action Behaviour
Approve Confirms the reservation immediately
Reject A reason is required. The reject button stays disabled until you enter one

The rejection reason is used in the notification sent to the guest.

How this differs from the Responses tab: the same approve / reject is available from the Responses tab of the Forms screen, but that list only shows reservations that have a form response. Pending reservations on a plan with no form attached can only be handled from this reservation detail panel.


Feature 4: Reservation Edit Mode

Click the Edit button in Detail mode to switch to Edit mode. The form is pre-filled with the current reservation data so you can update and save.

Editable Fields

Field Description
Check-in date/time Start of the stay
Check-out date/time End of the stay
Stay type Nightly / Hourly
Room type Room type for the reservation
Plan Plan applied to the reservation
Guest name Name of the guest
Guest email Email address of the guest
Notes Admin-facing notes

Reservation Time Changes and Key Expiry

If you change only the check-in/check-out date and time without changing the room, the guest's issued key (PIN/QR) is not reissued. Instead, only that key's expiry is updated to match the new time — in either direction, whether you extend or shorten the stay. If the room is also changed, this does not apply; the key is reissued as before.

When you change the check-in or check-out time, a note appears below the calendar:

Changing the reservation time also updates the smart lock key's expiry to match. If the price changes, the difference is not charged automatically.

The price difference is not charged automatically. The recalculated total is shown on screen, but no additional charge is sent to Stripe — if you need to collect the difference, arrange it separately.

When you save, the key's expiry update is confirmed as actually applied before the save is treated as complete. If the update could not be confirmed, a warning appears after saving:

The reservation time was changed, but the smart lock key's expiry could not be updated. The guest's key will still expire at the original end time. Please check the key status.

If you see this warning, the key still expires at the original time. Saving this reservation again automatically retries the update, so in most cases simply saving again resolves it. If it doesn't, check the key status.

Cancelled and Completed Reservations Are Excluded

If a reservation's status is anything other than "Confirmed" (for example, cancelled or completed), saving a time change will not update that key's expiry — the same warning above appears. This is a safeguard against accidentally handing a new validity window to leftover key data on a reservation that is no longer active. Treat this reservation's key as expired, and do not attempt to reactivate it by changing the time.


Feature 5: SMS Phone Verification Status

If the facility uses SMS phone verification, the phone number field in the reservation drawer shows the verification status.

Display Meaning
✓ SMS Verified (green badge) This number has been confirmed with a one-time SMS code. Hover over the badge to see when it was verified
Nothing shown Not verified

Verify at the front desk (for guests who can't receive an SMS)

For a reservation with an unverified phone number (not shown while creating a new reservation), a "Verify at front desk" link appears below the phone field. Use it when you have confirmed the guest's identity in person (e.g. out of signal range, changed number, or using a foreign SIM) and want to mark the number verified without sending an SMS.

  1. Click the link to expand the confirmation message
  2. Read the warning, then click "Mark as verified"
  3. The badge immediately switches to "✓ SMS Verified"

This action creates a verified attribute without going through SMS. Who performed it is recorded, so only use it after confirming the guest's identity in person (e.g. checking an ID document).

See SMS Phone Verification for how the whole feature works.


Source Color Coding

Reservation 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

Frequently Asked Questions

Q: When I create a reservation from the calendar, how is the room type determined?

In Week and Timeline views, the room type is pre-selected based on the unit row you clicked. In Month view, you select the room type manually in the form.

Q: What is the difference between Nightly and Hourly?

Nightly is for multi-night accommodations billed per night. Hourly is for short-term rentals such as coworking spaces or meeting rooms billed per hour.

Yes. Open the reservation in Detail mode, add the email, then click "Send payment link" or "Send key link".

Q: Can I edit a reservation that was imported from iCal (Airbnb)?

iCal-imported reservations are read-only in the dashboard. Change dates on the source platform (e.g. Airbnb); the update is reflected automatically at the next iCal sync.

Q: How do I collect detailed guest information like address or passport number?

For reservations where guests check in themselves, configure the fields in Guest Form Configuration. For manually created reservations, enter guest information directly in the reservation form.

Q: I changed the reservation time, but the key's expiry did not update. Why?

The reservation's status may be something other than "Confirmed" (for example, cancelled or completed). For reservations in those statuses, the key cannot be given a new expiry by changing the time — this is by design. Treat that key as expired.

Q: The "Received on-site" button does not appear for an on-site reservation

Check that the payment method is set to "on-site" and the payment status is "unpaid". The button never appears for a reservation paid online (by card), or one that is already paid or cancelled. A plan priced at ¥0 is also excluded.

Q: Can I record a discounted amount when recording an on-site receipt?

No. A reservation's receipt only records an amount that exactly matches the amount due. To apply a discount, edit the reservation's total amount first, then record the receipt.


Open the MarkdownPaste it into an AI assistant.

Ask about this article

AI answers from this article's content.