Rooms and rates

Physical rooms, room types, rate plans, derived rates, and inventory controls.

Both pages need canManageRooms.

Rooms

/dashboard/platform/rooms (hotelRoomOperations) shows readiness by floor with housekeeping and maintenance state. Change a room with updateRoomOperationalStatus.

Room.statusMeaning
vacantReady to assign
occupiedGuest in room
cleaningBeing cleaned
maintenanceUnder repair
out_of_orderRemoved from sale

A room with assignment history cannot change room type. Create a new room record to reclassify it.

Room types and rooms are created on the generic /dashboard/room-types and /dashboard/rooms pages. A RoomType holds name, descriptions, baseRateMinor, maxOccupancy, bedConfiguration (king, queen, double_queen, twin, double_twin, king_sofa, queen_sofa, suite), squareFeet, and images.

Rate plans

/dashboard/platform/rate-plans (hotelRateOperations).

FieldUse
baseRateMinorNightly rate in minor units
minimumStay, maximumStayStay limits
advanceBookingMin, advanceBookingMaxBooking window
cancellationPolicyflexible, moderate, strict, non_refundable
mealPlanroom_only, breakfast, half_board, full_board, all_inclusive
validFrom, validTo, applicableDaysWhen it applies
isPublic, isPromotional, promoCodeVisibility
statusactive, inactive, draft

Publish or unpublish with updateRatePlanPublication. Publication can require approval. SeasonalRate rows adjust a plan by date.

Derived rates

updateHotelDerivedRate creates a rate computed from another plan (hotelDerivedRateWorkspace).

Inventory controls

updateRoomInventoryControls sets day-level controls per room type on RoomInventory, such as closing a date or limiting sales.

On this page