Maintenance
Raise work orders for defects, take a room out of order while it is fixed, and resolve and close the order so housekeeping can return the room to sale.
Maintenance is the list of every work order at the property. A work order is a single defect — Shower mixer broken, AC not cooling — with a reference such as WO-2026-0012, a category, a priority and a status. Most work orders are raised by housekeeping attendants while they are in the room; the maintenance desk then acknowledges, fixes and resolves them here. Open it at /maintenance; the page is not in the sidebar, but every taken off sale notification links straight to it.
The important side effect of a work order is saleability. When you raise an order with Take room out of order ticked, the room leaves sellable inventory immediately and stays out until the order is resolved (or until a date you choose). Resolving the order lifts the block, leaves the room Dirty and raises a follow-up clean, so a room never goes straight from the technician's hands back to a guest.
Where it lives
- Maintenance (
/maintenance) — the work order list and detail sheet described on this page. - Housekeeping → Rooms — each room tile has a Raise work order action that opens the same dialog with the room already chosen.
- My rooms (the attendant's task runner) — the Report issue quick action raises a work order linked to the task the attendant is working on.
- A housekeeping task's detail sheet shows its Linked work orders.
Key terms
Reference — WO-<year>-<sequence>, assigned by the server when the order is created.
Saleability — Sellable or Out of Order; the latter shows until <date> when the block is bounded.
Blocks sale — the flag behind Take room out of order. It requires a room; a common-area order cannot block sale.
Follow-up task — the Full clean housekeeping task the server creates when an order is resolved, with the note Post-maintenance clean before the room returns to sale.
Raise a work order
Choose the room first
The Raise work order button on the Maintenance page opens the dialog without a room — it creates a common-area order. To attach the order to a room (and to be able to take that room out of order), raise it from the room's tile on Housekeeping → Rooms or from Report issue in the attendant's task runner. Ticking Take room out of order on a room-less order is rejected by the server with blocksSale requires a roomId.
Open the dialog
Click Raise work order (needs maintenance: write; the button is disabled otherwise). From a room tile the dialog subtitle reads Report a maintenance issue for room 204.
Describe the issue
Fill in Title (required — Brief issue summary) and, optionally, Description (What was observed?). Pick a Category and a Priority; they default to Other and Normal.
Decide whether the room can still be sold
Tick Take room out of order if the defect makes the room unusable. A Blocked until date appears; leave it blank for an open-ended block that lasts until the order is resolved, or set a date to block only up to that day.
Raise it
Click Raise work order. You see Work order WO-2026-0012 raised. If the room had a confirmed reservation inside the blocked period, the server still proceeds but returns a warning, shown as a second toast and as a Server warning banner at the top of the order's detail sheet — move that reservation before the guest arrives.
When an order blocks sale, everyone at the property receives a housekeeping notification titled Room 204 taken off sale (WO-2026-0012) that opens the order. The event is also written to the activity log as a Work order raised entry.
Fields
| Field | Values | Notes |
|---|---|---|
| Title | free text | Required |
| Description | free text | Optional |
| Category | Electrical, Plumbing, Hvac, Furniture, Appliance, It, Safety, Cosmetic, Other | Defaults to Other |
| Priority | Low, Normal, High, Urgent | Defaults to Normal |
| Take room out of order | checkbox | Only meaningful when a room is attached |
| Blocked until | date (YYYY-MM-DD) | Optional; blank = open-ended |
Find and filter work orders
The list shows Reference, Room, Title, Saleability, Status and Priority, ordered by status, then priority, then newest first. Type in Search reference, title, or room… to narrow it, and use the status dropdown (All statuses by default) to show one status at a time. Click a row to open its detail sheet.
Statuses
| Status | Meaning | How it is reached |
|---|---|---|
Open | Raised, nobody has picked it up | On creation |
Acknowledged | The maintenance desk has seen it | Acknowledge on an Open order |
In progress | Work has started | API only — not offered in the sheet today |
Blocked | Waiting on a part or a contractor | API only — not offered in the sheet today |
Resolved | The defect is fixed; the room is released | Mark resolved |
Closed | Reviewed and filed | Close work order on a Resolved order |
Cancelled | Raised in error | API only |
Changing status needs maintenance: close. Without it the sheet shows You do not have permission to change this work order's status and the buttons are hidden.
The detail sheet
The header shows the title, the reference and Room 204. Below it: the status, priority and category badges; a Saleability badge; the Description; and a grid of Created, Due by, Reported by and Assigned to (Unassigned when nobody is). Once resolved, a Resolution block shows the notes and Resolved <timestamp>.
The action row offers whichever of Acknowledge, Mark resolved and Close work order apply to the current status. Each shows Work order marked <status> on success.
Coming soon
Editing an existing order — reassigning it to a technician, setting a due date, changing priority — and typing resolution notes when you resolve it are supported by the server but have no form in the sheet yet. Assigned to and Due by display what the API holds; they cannot be changed from this screen today.
Resolve an order and return the room
Mark it resolved
Open the order and click Mark resolved. This is allowed from Open, Acknowledged, In progress or Blocked.
The server releases the room
If the order blocked sale, the out-of-order period is cancelled (a bounded block) or the condition is lifted (an open-ended one). The room is set to Dirty, never straight to Ready — it needs a clean before it can be sold again. This happens once, on the first transition into Resolved or Closed; resolving again later changes only the status.
A follow-up clean appears in Housekeeping
A Full clean task is created for today with the origin Maintenance follow-up and the note Post-maintenance clean before the room returns to sale. One follow-up per work order, even if the order is resolved twice. Once housekeeping completes and verifies it, the room is back in inventory.
Close it
When the desk is satisfied, click Close work order. Closed is the terminal, filed state.
Common mistakes
- Raising a room defect from the Maintenance page. The dialog there has no room picker, so the order is a common-area one and cannot take a room off sale. Start from the room tile in Housekeeping → Rooms instead.
- Expecting a resolved room to be sellable immediately. It is Dirty with a follow-up clean pending. The room returns to sale when housekeeping finishes that task.
- Ignoring the server warning. An open-ended block is allowed over a confirmed reservation; the warning is your only prompt to move the guest.
- Filtering by
In progressorBlockedand finding nothing. The sheet does not set those statuses yet; orders moveOpen→Acknowledged→Resolved→Closedfrom the UI.
Related
- Housekeeping — where attendants report issues and where the follow-up clean lands
- Rooms & Rates — room conditions and out-of-order blocks
- Users & Permissions — granting
maintenanceactions - Activity Logs — Work order raised and Work order resolved entries
Overview
Track defects as work orders, take rooms off sale while they are fixed, and keep physical stock (linen, amenities, minibar, cleaning) counted and replenished.
Stores & Stock
The Stock tab in Stores — on-hand balances against reorder points, booking in deliveries, correcting counts and writing off damaged stock.

