Connecting Rooms (Suite / Adjoining Rooms) Help

Overview

The Connecting Rooms feature lets you sell Room A and Room B individually while also offering them as a combined "AB Suite" package. When a guest books the suite, inventory for both A and B is consumed simultaneously. If Room A is booked individually, the AB suite is automatically blocked — and vice versa.

Common use cases:

  • Sell two adjacent hotel rooms as a suite
  • Offer a two-room family package
  • Bundle a private room with a living room as a set

iCal Sync (OTA Integration): iCal sync is not supported in this release. Do not enable this feature for facilities that are connected to Airbnb or other OTAs. Full iCal support is tracked in Issue #1052.


Features

Feature Description
Create connecting rooms Combine 2–16 existing physical rooms into a suite
Automatic inventory sync Booking the suite consumes both individual room inventories
Auto-block Booking Room A individually automatically blocks the AB suite (and vice versa)
Name and type Assign a custom display name and room type to the connecting room
Edit / Delete Modify or remove connecting rooms at any time (deletion blocked while active bookings exist)
KEYVOX key auto-issuance At check-in, keys for all member rooms are issued automatically in one step

Setup Steps

Prerequisites

Before creating a connecting room:

  1. Confirm physical rooms exist — Go to Facility Settings → Rooms tab → Room List and verify that the rooms you want to connect are already registered
  2. Create a suite room type — Go to Facility Settings → Rooms tab → Room Types and create a room type such as "AB Suite" (you will select it during connecting room creation)

Creating a Connecting Room

  1. Open Facility Settings (gear icon) from the main app top menu

  2. Select the Rooms tab (4th tab from the left)

  3. Click the Connecting Rooms subtab (5th tab)

  4. Click "+ Create Connecting Room"

  5. Fill in the form:

    Field Description Example
    Name Display name shown in booking and admin screens AB Suite, Family Suite
    Type Room type you created in advance Suite
    Member rooms Check 2–16 physical rooms to include in the suite Room 101, Room 102
  6. Click "Save"

After saving, the connecting room appears as a row in the list. The booking page will show Room A, Room B, and the AB suite as three separate options.

Editing a Connecting Room

  1. Find the row in the connecting room list
  2. Click "Edit" at the right end of the row
  3. Update the name, type, or member rooms, then click "Save"

Deleting a Connecting Room

  1. Find the row in the connecting room list
  2. Click "Delete" at the right end of the row
  3. Confirm by clicking "Delete" in the confirmation dialog

Note: Deletion is blocked while active reservations are linked to the connecting room (a 409 error is shown). Cancel all existing reservations before deleting.


Booking Flow (Guest Perspective)

Once a connecting room is created, guests see the following on the booking page:

  1. The booking page shows Room A, Room B, and the AB suite as separate selectable options
  2. When a guest books the AB suite, inventory for both Room A and Room B is consumed simultaneously
  3. If another guest tries to book Room A individually, the AB suite is automatically blocked
  4. At check-in, if KEYVOX is configured, PIN codes / QR codes for all member rooms are issued together

Frequently Asked Questions

Q: What happens if I try to delete a connecting room that has active reservations?

Deletion is blocked and an error is shown (409 Conflict). Cancel all reservations linked to the connecting room first, then delete it. The member rooms (Room A and Room B) themselves are not affected and remain registered.

Q: Are KEYVOX keys issued automatically?

Yes. When a check-in occurs for a connecting room reservation, keys (PIN / QR) for all member rooms are issued together automatically. Guests receive a key for Room A and a separate key for Room B.

Important: Key issuance is treated as an atomic operation. A partial state where Room A's key is issued but Room B's fails cannot occur. If the entire issuance fails, the reservation is automatically cancelled with a full refund (FATAL refund).

Q: Can this feature be used with facilities that have Airbnb (OTA) iCal sync?

Not in this release. Combining connecting rooms with iCal sync is not yet supported. Do not enable this feature for OTA-connected facilities. iCal support is planned in Issue #1052.

Q: Can I nest a connecting room inside another connecting room as a member?

No. Connecting rooms are not available as member room options in the picker (this is also enforced by a database trigger). Member rooms must always be physical rooms.

Q: Can I add rooms from a different facility as member rooms?

No. Only physical rooms in the same facility can be selected as member rooms. Any attempt to assign rooms from another facility is blocked at the database level.

Q: Where do I set up a pricing plan for the connecting room?

Creating a connecting room does not automatically attach a pricing plan. Go to Booking Management → Plan Settings to create and link a plan for the connecting room using the RoomPlanMappingEditor.

A plan quick-link shortcut (Issue #1055) is planned for Phase 2.

Q: Can I manage connecting room reservations from the Frontdesk app?

Frontdesk app support for connecting rooms is planned in Issue #1056. For now, use the Calendar and Reservation List in the main app.


Troubleshooting

"A connecting room cannot be selected as a member room"

Connecting rooms cannot be used as member rooms (composite-of-composite is not allowed). Only physical rooms appear in the member room picker.

"No member rooms appear in the picker"

If no eligible rooms are found, the form shows "No rooms available." Register physical rooms in the Room List tab first.

"Save failed with a validation error"

  • Name is empty — The name field is required
  • No room type selected — Select a room type from the dropdown
  • Fewer than 2 member rooms selected — Select at least 2 member rooms
  • More than 16 member rooms selected — Reduce the selection to 16 or fewer

"Delete returned a 409 error"

Active reservations are linked to this connecting room. Cancel all related reservations before attempting to delete.

"KEYVOX keys are not being issued"

  • Verify that each member room has a KEYVOX unit (keyvox_units) correctly assigned
  • Check the assignment status in Rooms → Lock Assignment tab
  • If key issuance fails, a FATAL refund is triggered and the reservation is automatically cancelled