Hotel Management
The Hotel Management module adds rooms, reservations, guest folios, and housekeeping to eSecured ERP, built on top of the existing Point of Sale → engine rather than a separate system — a restaurant bill and a room charge can land on the same guest folio, settle together, and fiscalize as one TRA receipt. It covers two capabilities under one license: Restaurant POS (table/tab service) and Room Management (rooms, reservations, guest folios, housekeeping).
- Hotel Management (which includes Point of Sale) isn't on the public price list — ask your service provider to set it up for your subscription.
- Add at least one Item of type Product to sell at the restaurant/bar, and at least one Room Type and Room (below) if you're using Room Management.
- Configure at least one active payment method in Settings → Point of Sale — the same tender types (Cash, M-Pesa, Airtel Money, etc.) settle both a restaurant sale and a guest folio.
Which of the two capabilities is actually active is controlled independently by your account — a property using only the restaurant side, or only room bookings, sees just that half of the nav.
Room Management pages sit under the Hotel menu. In the business-unit menu layout they're under Hotel & Hostel instead, which also has a Front Desk page — from there, the Housekeeping Board → link and 🍽️ Meals button open those two pages.
Restaurant POS
Checkout works exactly as described in the Point of Sale module → (the menu entry reads Take Order at a restaurant till), with these hospitality-specific additions:
- Table / Tab. An optional "Table / Tab" field on Checkout — held sales show as "Table 7" or a named tab in the held-sales list instead of an anonymous sale number, and the name carries forward across rounds of ordering to the same open tab.
- Food / Beverage category. Each Product item can be tagged 🍽️ Food or 🥤 Beverage, with a matching All / Food / Beverage filter on the Items list — useful for splitting bar stock from kitchen stock, matching how most hotels already track the two separately.
- Breakfast Item. With Room Management also on, a Product can be ticked as a 🍳 Breakfast Item so it's counted on the Meal Planning report.
- Charge to Room. Appears next to the payment methods once Room Management is also active and at least one guest is checked in at the same property as the till — see Guest Folios below.
Rooms & Room Types
Go to Hotel → Rooms, two tabs:
- Room Types — your own rate plans (code, name, base rate per night, max occupancy, amenities). Every hotel names its own tiers — nothing is hardcoded (e.g. Single/Standard/Deluxe/Apartment).
- Rooms — the physical inventory: room number, floor, which Room Type it belongs to, and a Housekeeping Status (Clean / Dirty / Inspected / Out of Order) plus a free-text Known Issues field for maintenance notes ("AC not cooling", "door lock sticking") — kept separate from cleanliness status since they're different concerns. Known Issues are edited here, not on the Housekeeping Board.
A room needs a Room Type to belong to before you can add it. Both tabs have search and status filters; rooms and room types are deactivated rather than deleted. Export to Excel is available on the Rooms tab. Adding and editing needs room.create / room.edit (Tenant Admin by default — not Front Desk).
A new room or room type is added to the first hotel property you can see — there's no property picker on the form, so with several properties, add rooms while signed in as someone assigned to the right property.
Reservations
Go to Hotel → Reservations and click + New Reservation.
- Book — guest name, phone, room, check-in/out dates, number of guests, the Agreed Rate / Night (filled from the room type, editable), source, an optional Deposit Collected (with its payment method), notes, and who's billed: the Guest directly, or a Company — an existing Customer, or a new one via New Company. Typing a phone number that matches an earlier stay shows a "Returning guest" note. The room can't already be booked for overlapping dates.
- Meals Included — optionally tick Breakfast / Lunch / Dinner if they're bundled into the agreed rate (not charged separately) — this feeds the Meal Planning report so the kitchen knows how many guaranteed covers to budget and shop for each day, separate from unpredictable walk-in restaurant volume. (Shown when Restaurant POS is also on.)
- Check In — flips the room to occupied and opens a Guest Folio pre-seeded with a room charge line (nights × the agreed rate); any deposit becomes the folio's first payment.
- Check Out — only offered once the folio is settled (or billed to a company); check-out automatically flips the room's housekeeping status to Dirty.
Click a reservation for a side panel (nights, rate, billing, guest history), or open the guest's full page. A reservation can be edited only while still Booked (room, dates, rate and the other booking details), and cancelled or marked no-show — if a deposit was taken, you're asked whether to Refund to Guest or Keep as Cancellation Fee, and the choice is recorded on the reservation. Recording it doesn't move any money or post anything — pay out a refund the way you normally would.
The Guests page is a searchable guest registry of every stay (In House / Upcoming / Checked Out), with Export to Excel and a link into each reservation.
Guest Folios
A guest's running bill, opened automatically at check-in. From the guest's full reservation page (Guest Folio — Activity shows every line, with total charges, paid and balance):
- Add Charge — any ad hoc charge (minibar, laundry, damage): a description and an amount.
- Charge to Room — at a Restaurant POS Checkout on the same property, click 🏨 Charge to Room and pick the guest's room; the whole sale goes onto that guest's folio instead of collecting payment at the till. It isn't fiscalized at that point — it's included when the folio is settled. Each such line has a 🧾 Receipt button on the folio.
- Settle — pick one active payment method and pay the full balance in one go (there's no split or part payment on a folio). If a register session is open on that property at the time, the settlement counts toward that till's own Z-report — the same reconciliation Restaurant POS already uses, not a separate hotel-specific one. Settling posts to the books if Accounting is set up, and opens the payment receipt.
- Bill to [Company] — for a corporate-billed reservation with a balance, drafts a real Invoice (in Draft) against the linked Customer and closes the folio, instead of collecting payment now.
- 🧾 Print Bill / 🧾 Print Receipt — a running bill mid-stay, or the receipt once the folio is settled. Both print in an 80mm slip layout (or save as PDF), and can be shared via WhatsApp if your tenant has it on.
Fiscalization
A folio settled directly by the guest fiscalizes as one TRA/VFD document covering the whole stay — room charges and any restaurant items charged to the room all appear on the single printed Legal Receipt with the correct per-line tax category, QR code, and Receipt Verification Code, the same TRA VFD/EFD Fiscalization integration Invoices and POS sales already use. The guest's page shows a ✅ Fiscalized / ⏳ Fiscalizing / ⚠️ failed status line; if it failed, use Retry, or ↻ Recover from VFD to look up whatever the provider already has on file rather than resubmitting (Recover is only available in sandbox/production fiscalization mode). A company-billed folio doesn't fiscalize here — it defers to the resulting Invoice's own Draft → Sent fiscalization instead.
Housekeeping Board
Go to Hotel → Housekeeping — a status board (Clean / Dirty / Inspected / Out of Order), not a full detail page, since that's all this role needs. Switch between a Grid of room cards (one tap to change status) and a List; search by room number, floor, type, or known issue. Each change is written to the audit log. Known Issues show on each room but are edited on the Rooms page.
Every room also shows same-day context pulled from Reservations, so a Dirty room turning over in an hour is visibly more urgent than one with no guest arriving today:
| Badge | Meaning |
|---|---|
| ⚡ Same-Day Turnover | A guest is checking out and a new guest is checking in today — the highest-priority case |
| 🚪 Departing Today | Checking out today, no same-day arrival |
| 🛬 Arriving Today | A new guest checks in today |
| 👤 Occupied | A guest is staying, not checking out today (shown instead of a redundant "Departing Today" when that already applies) |
The board defaults to Sort: Today's Priority (turnover rooms first, then a single departure/arrival, then everything else by room number); you can also sort by room number, status, floor, or room type. A Filter by occupancy chip row (All / Occupied / Vacant) sits alongside the status filter.
Meal Planning
Go to Hotel → Meals, two tabs:
- Today's Meal Counts — every in-house guest and which meals their rate includes (from Meals Included at booking), plus guest/pax stat tiles per meal — a daily guaranteed-covers count for the kitchen to budget and shop against.
- Breakfast Sales — today's POS sales of items ticked as a Breakfast Item on the Item itself, resolved back to the room/guest when the sale was charged to a room.
Both tabs export to Excel.
Dashboards & reports
- Front Desk (the Hotel Dashboard) — occupancy, arrivals and departures today, and outstanding balances; a one-click Check In for each arrival, each departing guest's balance, and room counts by housekeeping status. Front Desk users land here.
- Dashboard (Hotels & Hostels) — occupancy, arrivals/departures, rooms needing cleaning, open folio total, a room status grid, 7-day occupancy and 6-month folio revenue charts (plus hostel figures if you run Student Hostel). Shown to users with report access.
- Reports — needs
report.view; pick a date range for Reservations, Folio Revenue (exportable to Excel), and an Occupancy Summary (plus Leases for Student Hostel).
Front Desk shift handover
A hotel's front desk and restaurant typically share one physical till, not two separate ones. A folio settlement is attributed to whichever register session is currently open on that property, folded into the same Z-report cash/tender totals a restaurant sale already produces — POS Reports → Register Sessions and Reconciliation show a guest folio's contribution alongside ordinary sales, not as a separate report.
Properties (multi-location)
A hotel property is a location →, managed in Settings → Company → Properties (called Branches & Properties if you also run POS stores) under the Hotel Properties tab. A hotel property doubles as its own restaurant/front-desk till, so Checkout, Charge to Room and folio settlement all work there. If your restaurant or bar keeps its own stock, add it as a separate location under the Restaurants tab.
With 2+ hotel properties, a user assigned to one property in Settings → Users & Access (Assigned Location) sees only that property's rooms, reservations, housekeeping board and Front Desk dashboard — unless their role holds "View All Stores' Data".
Roles
Two roles are purpose-built for this module, alongside any general-purpose role or the existing POS Manager/Cashier:
| Role | Scope | Lands on |
|---|---|---|
| Front Desk | Reservations (view/create/edit/cancel), check-in/check-out, view rooms, and the full guest folio (view/charge/close) — no financial reports, no room/room-type management | The Front Desk (Hotel) Dashboard — today's arrivals/departures, occupancy, quick actions into Reservations/Rooms/Meals |
| Housekeeping | Room status only (view the board, mark Clean/Dirty/Inspected/Out of Order) — nothing else | Straight onto the Housekeeping Board itself |
See the Permissions Reference → for the full permission grid, including the room.*, reservation.*, housekeeping.*, and folio.* permission prefixes this module adds.
Not yet built
- Seasonal / variable rate pricing — Room Types have one flat rate; no weekday/weekend or seasonal pricing yet.
- OTA integrations — no Booking.com or similar channel-manager connection.
- Housekeeping staff assignment / time tracking — the board is a simple status grid, not a task-assignment workflow.
Related
- Point of Sale module reference → — the checkout, register session, and reporting engine this module extends
- Invoicing → — corporate/Bill-to-Company folios draft a real Invoice here
- TRA VFD/EFD Fiscalization → — the fiscal receipt integration a settled folio reuses
- Permissions Reference → — full permission grid including Front Desk and Housekeeping