NXT-ePMS
Electronic Property Management System
Parkview Hotel CDO — Staff User Manual
Version 2.0 · June 2026 · Confidential — Staff Use Only
1 Introduction & Overview
NXT-ePMS is a web-based Hotel Property Management System designed for the Philippine hospitality market. It centralises all hotel operations — from reservations and check-ins to housekeeping, maintenance, billing, and management reporting — in a single browser-based application accessible by all authorised staff.
| Property | Parkview Hotel CDO, Cagayan de Oro |
| Rooms | 63 rooms across 4 floors, 16 room types |
| Currency | Philippine Peso (₱) |
| VAT | 12% (configurable in Settings) |
| Access | Any modern browser (Chrome, Edge, Firefox) on the hotel network |
| Booking Number Format | YYYY-MM-NNNNNN — e.g. 2026-06-000012 (year, booking month, 6-digit sequence) |
💡
NXT-ePMS is role-based — each staff member only sees the modules relevant to their job. This manual covers all modules; sections not relevant to your role can be skipped.
2 Getting Started
2.1 Logging In
- Open your browser and navigate to the hotel system URL provided by your administrator.
- Enter your Email Address and Password in the login form.
- Click the eye icon inside the password field to show or hide your password as you type.
- Tick Remember me if you are on a dedicated hotel workstation (do not use this on shared or personal devices).
- Click Sign In. You will be taken directly to the Dashboard.
Login Validations
- Both email and password are required — the form will not submit if either is blank.
- If the credentials do not match any account: "These credentials do not match our records."
- If the account exists but is deactivated: "Your account has been deactivated. Please contact your administrator." — the system does NOT reveal whether the password was correct, only that the account is inactive.
- After a successful login the system records your Last Login timestamp, visible on the Staff list to administrators.
2.2 Forgot Password
- Click Forgot password? on the login page.
- Enter your registered email address and click Send Reset Link.
- Check your email inbox for a message containing a password reset link. The link expires after 60 minutes.
- Click the link. You will be taken to a Reset Password page. Enter your new password and confirm it.
- A password strength meter appears below the field — aim for at least "Good" strength before submitting.
- Click Reset Password. You will be redirected to the login page with a success message.
⚠️
Reset links expire after 60 minutes. If your link has expired, simply request a new one by repeating the Forgot Password process. The old link becomes invalid as soon as a new one is issued.
2.3 Navigating the System
The white sidebar on the left is the main navigation. It only shows modules your role has access to. Clicking a module name takes you to that section. The currently active module is highlighted in teal.
The sticky top header shows the property name on the left and your name / avatar initials on the right. Clicking your name opens a dropdown with:
- My Profile — update your personal details and password
- Sign Out — end your session immediately
| Sidebar Group | Modules Included |
| Operations | Dashboard, Reservations, Check-In, Check-Out, Room Rack |
| Housekeeping | Housekeeping, Maintenance |
| Hotel | Rooms, Guests, Point of Sale, Calendar |
| Revenue | Rate Plans, Channel Manager, Reports, Billing |
| Admin | Settings, Staff, Roles |
2.4 Roles & Permissions
Every staff account is assigned exactly one role. The system has six built-in roles that cannot be deleted:
| Role | Access Summary |
| Super Admin | Unrestricted access to all modules and all actions, including force-deleting records |
| Manager | All modules except Staff Management and Roles Administration |
| Front Desk | Dashboard, Reservations, Check-In / Check-Out, Room Rack, Guests, Calendar |
| Housekeeping | Housekeeping module; view-only access to Maintenance |
| Maintenance | Full Maintenance access; view-only Rooms |
| Accountant | Reports, Payments, Billing, POS (view only) |
Custom roles with any combination of permissions can be created by the Super Admin (see Section 18).
2.5 My Profile
Access your profile by clicking your name in the top-right corner → My Profile. From here you can:
- Update your Full Name, Email Address, Phone Number, and Position / Job Title
- Change your password by entering your Current Password, then a new password twice
Profile Update Validations
- Email must be unique — if you change to an email already used by another staff account, the save will be rejected.
- To change your password, the current password must be correct; otherwise the form shows an error.
- New password must be at least 8 characters and must match the confirmation field.
- Leaving the password fields blank saves only the profile information without changing the password.
2.6 Dark Mode
Click the moon / sun icon in the top header to toggle between light and dark themes. Your preference is saved in your browser and persists across sessions on the same device.
3 Dashboard
The Dashboard is the first screen after login. It provides a live snapshot of today's hotel operations. All figures are calculated in real time from the database — refreshing the page updates them.
| KPI Card | What It Shows | How It Is Calculated |
| Occupancy Rate | Percentage of rooms currently occupied | Checked-in reservations ÷ total rooms × 100 |
| Arrivals Today | Guests scheduled to check in today | Reservations with check_in = today and status pending/confirmed |
| Departures Today | Guests scheduled to check out today | Reservations with check_out = today and status checked_in |
| In-House Guests | Guests currently checked in | Count of reservations with status = checked_in |
| Today's Revenue | Revenue from check-ins occurring today | Sum of reservation amounts where check_in = today |
| Available Rooms | Rooms ready for new reservations | Rooms with status = available |
Below the KPI tiles:
- Room Status Chart — colour-coded bar showing all 63 rooms by current status (occupied, dirty, clean, available, maintenance, out of order)
- Today's Arrivals — list of pending/confirmed guests due in today with a quick Check In button
- Today's Departures — list of checked-in guests due out today with a quick Check Out button
- 7-Day Revenue Trend — bar chart showing room revenue per day for the past week
- Booking Source Breakdown — pie/share breakdown of active reservations by channel (Walk-in, Booking.com, Agoda, Direct, Airbnb, Online)
- Recent Reservations — the 10 most recently created bookings with status badges and quick links
4 Reservations
The Reservations module handles the complete guest booking lifecycle. Navigate to Reservations in the sidebar.
4.1 Creating a Single Reservation
- Click + New Reservation in the top-right corner of the Reservations list.
-
Guest Details — enter:
- Guest Name (required)
- Contact Number (required)
- Email Address (optional)
-
Stay Details — enter:
- Check-In date (required)
- Check-Out date (required — must be after check-in)
- The number of nights is calculated automatically and displayed below the dates
-
Room Selection — select one or more room numbers from the list. Rooms that are occupied, dirty, maintenance, or out-of-order on the requested dates are excluded automatically. For a single room, pick one; for a group booking across multiple rooms, see Section 4.2.
-
Rate Plan (optional) — select a rate plan from the dropdown. The nightly rate and total amount update immediately in the rate preview panel on the right. If no plan is selected, the room's rack rate applies.
- Booking Source — select how the guest booked: Walk-in, Direct, Booking.com, Agoda, Airbnb, or another channel.
- Guests — enter the number of adults and children.
- Special Requests — enter any notes or room preferences (optional).
-
Discounts — if a Senior Citizen (SC) or Person with Disability (PWD) discount applies, tick the appropriate checkbox and enter the government-issued ID number. Both types qualify for statutory discounts under Philippine law.
- Click Create Reservation. A booking number is assigned automatically in the format YYYY-MM-NNNNNN.
Create Reservation Validations
- Guest Name and Contact Number are required — the form will not submit without them.
- Check-Out must be strictly after Check-In — same-day reservations are not permitted.
- At least one room must be selected.
- If the selected room is no longer available on the chosen dates (another reservation was created concurrently), the form returns a conflict error — select a different room.
- If a rate plan has a minimum nights requirement (e.g. 7 nights for a long-stay plan) and the stay is shorter, the plan cannot be applied — the form will show a validation message.
- If a rate plan has Valid From / Valid To dates, it cannot be applied to a stay outside those dates.
💡
The rate preview panel updates live as you change the room, dates, or rate plan. Check the total amount in the preview before clicking Create.
4.2 Group Bookings (Multi-Room)
A group booking allows one guest to reserve multiple rooms under a single booking reference. All rooms share the same guest name, check-in, and check-out. Each room gets its own reservation record within the group.
- On the New Reservation form, hold Ctrl (or Cmd on Mac) and click to select two or more rooms from the room list.
- Fill in all other fields as normal (guest name, dates, source, rate plan).
- Click Create Reservation. The system creates one Reservation Group record and one individual reservation per room.
- You are redirected to the Group Booking page which shows a summary of the group, total amount across all rooms, payments, and a per-room table.
Group Booking Number
The group receives a Group Reference in the format GRP-YYYY-NNNNNN (e.g. GRP-2026-000005). Each individual room also has its own booking number. The group reference appears as a purple Group badge on all related reservations in the list, check-in queue, and check-out queue.
Group Booking Page
Navigate to a group by clicking the Group badge on any reservation in the group, or by clicking the group reference link on the reservation detail page. The group page shows:
- Group reference number, guest name, check-in / check-out dates
- Total amount across all rooms
- Total paid (sum of all payments across all rooms)
- A per-room table: room number, room type, amount, balance due, current status
- A notes section
ℹ️
Payments for group bookings are recorded per room on each individual reservation's detail page, not on the group page. The group page shows consolidated totals only.
4.3 Reservation Lifecycle
Every reservation moves through a defined set of statuses. The current status controls which actions are available.
Pending
→
Confirmed
→
Checked In
→
Checked Out
| Action | From Status | To Status | Room Effect | Notes |
| Confirm | Pending | Confirmed | No change | Guest has confirmed; deposit received or guaranteed |
| Check In | Pending or Confirmed | Checked In | → Occupied | Guest has physically arrived and received key |
| Check Out | Checked In | Checked Out | → Dirty | Guest has departed; room added to housekeeping queue |
| No Show | Pending or Confirmed | No Show | No change | Guest did not arrive; room remains available |
| Cancel | Any active status | Cancelled | → Available (only if was Checked In) | Booking cancelled; payment history is preserved |
| Restore | Cancelled or No Show | Confirmed | No change | Re-activates a cancelled or no-show booking |
| Undo Check-In | Checked In | Confirmed | → Available | Reverses a check-in error; use promptly |
| Undo Check-Out | Checked Out | Checked In | → Occupied | Blocked if another guest is now checked in to that room |
⚠️
Confirmation dialogs: All status-change actions show a confirmation popup before taking effect. Read the message carefully — once confirmed, the action is applied immediately. Undo Check-Out is permanently blocked if the room has a new guest; resolve by checking out the new guest first if the reversal is truly needed.
Activity Log
Every status change, payment, room transfer, and edit is recorded in the Activity Log at the bottom of the reservation detail page. Each entry shows the action taken, the staff member who performed it, and the timestamp. This log is read-only and cannot be edited.
4.4 Payments
Payments are recorded per reservation. Open the reservation detail page and scroll to the Payments card in the right sidebar.
Recording a Payment
- Click + Add Payment.
- The payment form shows one row by default. Enter:
- Amount — in ₱ (required; must be greater than 0)
- Method — select from Cash, GCash, Maya, Credit Card, Debit Card, Bank Transfer, or Check (required)
- Reference — transaction ID, cheque number, or receipt number (optional but recommended for non-cash payments)
- To record a split payment (guest pays part cash, part GCash), click + Add Another Method. A second row appears with its own Amount, Method, and Reference fields.
- Set the Payment Date — defaults to today. Change this if recording a backdated payment.
- Add any Notes (optional).
- Click Record Payment(s). Each row is saved as a separate payment transaction.
Payment Summary Bar
The summary at the top of the Payments card shows at all times:
- Reservation Amount — the total room charge
- Total Paid — sum of all recorded payments
- Balance Due — Amount minus Total Paid (shown in red if outstanding)
- A green Fully Paid indicator when the balance reaches ₱0
Deleting a Payment
To correct an erroneous payment entry, click the trash icon on the payment row. A confirmation dialog appears. Deleted payments are permanently removed. Use this only for data-entry errors — do not delete payments to record refunds (use a notes field for refund tracking instead).
Payment Validations
- Amount must be a positive number greater than zero.
- Method must be selected — the field cannot be left blank.
- Payment Date defaults to today but can be any past or future date.
- The system does not prevent overpayment — you may record more than the reservation amount if needed (e.g. deposit collected before final amount is known).
4.5 Folio & Extra Charges
A folio is the complete bill for a guest's stay, including room charges and any additional charges posted during the stay (room service, minibar, telephone, laundry, etc.).
Adding an Extra Charge
- Open the reservation detail page.
- In the Folio Charges section, click + Add Charge.
- Enter the Description (e.g. "Minibar — Coca-Cola x2"), the Amount, and optionally the Charge Date (defaults to today).
- Click Save Charge. The charge appears in the folio and is reflected in the balance due.
Deleting a Charge
Click the trash icon next to any folio charge. Confirm the dialog. Deleting a charge reduces the total balance due immediately.
Printing the Folio
- On the reservation detail page, click Print Folio (or navigate to /reservations/{id}/folio).
- A printable folio opens in a new page with:
- Hotel header with BIR-registered name, TIN, and OR prefix from Settings
- Guest name, room number, booking number, check-in / check-out dates
- Room charge line item
- All extra folio charges with dates and descriptions
- Payments received, grouped by method
- VAT breakdown (12% inclusive)
- Balance Due
- Guest signature block
- Use your browser's Print function (Ctrl+P) or click Print to send to a printer or save as PDF.
💡
Print the folio during check-out and have the guest sign it as a final acknowledgement of all charges and payments. Keep the signed copy for your records.
4.6 Room Transfer (from Reservation)
If a checked-in guest needs to move to a different room (maintenance issue, guest request, upgrade, etc.), use the Room Transfer feature on the reservation detail page.
⚠️
Room transfer is only available for reservations with status Checked In. The action cannot be performed on pending, confirmed, or checked-out reservations.
- Open the reservation detail page for the checked-in guest.
- In the Room Info section of the sidebar, click Transfer Room.
- A modal appears showing the current room. Select the New Room from the dropdown — only rooms that are available or clean are listed.
- Select a Reason from the dropdown:
- Maintenance Issue
- Guest Request
- Upgrade
- Downgrade
- Noise / Disturbance
- Other
- Add optional Notes for the activity log.
- Click Confirm Transfer.
What Happens on Transfer
- The original room status changes to Dirty (it needs to be cleaned)
- The new room status changes to Occupied
- The reservation's room number and room type are updated
- An activity log entry is created: "Room transferred from [old] to [new] — Reason: [reason]"
Room Transfer Validations
- Reservation must be in Checked In status — the button does not appear for other statuses.
- Reason is required — the Confirm Transfer button remains disabled until a reason is selected.
- The target room must have status Available or Clean — occupied, dirty, maintenance, and out-of-order rooms are blocked both in the dropdown (reservation form) and at the server level.
4.7 Guest Reminders
Guest Reminders let you schedule tasks associated with a guest's stay — wake-up calls, amenity deliveries, transportation pick-ups, checkout reminders, or custom notes.
Adding a Reminder
- Open the reservation detail page.
- In the Reminders card on the right sidebar, click + Add Reminder.
- Select the Reminder Type:
- Wake-up Call
- Amenity Delivery
- Transportation Pickup
- Checkout Reminder
- Custom
- Set the Remind At date and time (required).
- Add any Notes (e.g. "Guest requested wake-up call at 5:30 AM for early flight").
- Click Save Reminder.
Viewing & Acting on Reminders
Reminders appear in two places:
- Reservation detail page — the Reminders card lists all reminders for that reservation, sorted by scheduled time, with their current status (Pending or Done).
- Check-In Queue — an amber "Today's Reminders" panel appears at the top of the Check-In page whenever any pending reminders are due today. Each entry shows the guest name, room, reminder type, time, and notes.
Completing a Reminder
- Find the reminder on the reservation detail page or the Check-In queue reminder panel.
- Click Mark Done. The reminder status changes to Done and the completed timestamp is recorded.
Deleting a Reminder
Click the trash icon next to any reminder to delete it. Confirm the dialog. Completed reminders can also be deleted if no longer needed for reference.
4.8 Editing a Reservation
From the reservation detail page, click Edit to open the edit form. You can change:
- Guest name, contact, and email
- Check-in and check-out dates
- Room (if not currently checked in)
- Rate plan — the total amount recalculates automatically on save
- Booking source
- Number of adults and children
- Special requests and notes
- Senior Citizen / PWD discount flag
⚠️
Editing is blocked for reservations that are currently Checked In or Checked Out. Use Undo Check-In first if a correction is genuinely needed. Cancelled and No-Show reservations can be edited after restoring them to Confirmed.
4.9 Trash & Recovery
Reservations can be moved to the Trash (soft-deleted) without being permanently destroyed. This preserves payment history, folio charges, and activity logs for audit purposes. Permanently deleting a reservation is restricted to Super Admins.
Moving a Reservation to Trash
- On the Reservations list, find the reservation you want to remove.
- Click the … (more actions) menu on the right of the row.
- Click Move to Trash (shown with a trash icon, below a separator line in the menu).
- Confirm the dialog. The reservation is moved to the trash and no longer appears in normal list views.
Trash Validation
- A reservation with status Checked In cannot be moved to the trash — check out the guest first.
- Moving to trash does not cancel the reservation or change the room status — cancel the reservation first if the room needs to be freed.
Viewing the Trash
- On the Reservations list page, click the Trash (N) button in the top-right area (only visible when there are trashed reservations; N = count).
- The list switches to Trash mode, shown with a red "Trash" heading and a back arrow to return to the normal list.
- Trashed reservations appear with strikethrough booking numbers and reduced opacity.
Restoring a Reservation
- In Trash view, find the reservation and click Restore.
- Confirm the dialog. The reservation returns to Confirmed status and reappears in the normal list.
Permanently Deleting a Reservation
🚫
Super Admin only. Permanent deletion removes the reservation along with all its payment records, folio charges, and reminders. This action is irreversible. Use it only for true test data or duplicate records — never for genuine guest stays.
- In Trash view, find the reservation (Super Admin accounts will see a Force Delete button; other roles do not).
- Click Force Delete and confirm the danger dialog (shown in red).
- The reservation and all associated records are permanently deleted from the database.
4.10 Reservations List
The main Reservations list displays all active (non-trashed) bookings with their status badges. Features include:
- Sorting — click any column header (Booking #, Guest, Room, Check-In, Check-Out, Amount, Status) to sort ascending; click again to sort descending. Sort direction is indicated by an arrow icon.
- Status filter — click the status tabs (All, Pending, Confirmed, Checked In, etc.) to filter by status.
- Search — type a guest name or booking number in the search box to filter results in real time.
- Group badge — reservations belonging to a group show a purple Group badge. Click it to open the Group Booking page.
- Quick actions — each row has a … menu with context-appropriate actions (Confirm, Check In, Edit, Move to Trash, etc.) depending on the current status.
5 Front Desk Operations
5.1 Check-In Queue
Navigate to Check-In in the sidebar. This page lists every reservation with a check-in date of today that has not yet been checked in (status: Pending or Confirmed).
Today's Reminders Panel
If any Guest Reminders are due today and still pending, an amber panel appears at the top of the Check-In page before the arrival list. It shows each reminder with the guest name, room, type, scheduled time, and notes. Use this panel to ensure reminders are acted on as guests check in. Click Mark Done next to each reminder once it has been handled.
ℹ️
The Today's Reminders panel only appears when there are pending reminders due today. It disappears automatically once all today's reminders are marked Done.
Arrival List
Reservations in the arrival list are ordered by expected arrival time. Reservations where the standard check-in time has passed are highlighted in amber (Overdue) to draw staff attention to waiting guests.
Each row shows: booking number, guest name, room number and type, number of nights, amount, and balance due.
Checking In a Guest
- Locate the guest in the arrival list.
- Verify their identity with a valid government-issued ID.
- Confirm the booking details (dates, room, rate) with the guest.
- If there is a deposit or advance payment to collect, open the reservation detail page first and record the payment (Section 4.4) before checking in.
- Click the Check In button on the row. A confirmation dialog appears.
- Confirm the dialog. The reservation status changes to Checked In and the room status changes to Occupied.
- Hand the guest their room key.
💡
For group bookings, each room in the group has its own row in the check-in queue. Check in each room individually, or open the group's reservation detail pages to process them one by one.
5.2 Check-Out Queue
Navigate to Check-Out in the sidebar. This page lists all guests currently Checked In whose check-out date is today or earlier (overdue departures).
Each row shows: booking number, guest name, room, check-out date, total amount, total paid, and Balance Due. Rows with an outstanding balance display the balance in red.
Checking Out a Guest
- Locate the departing guest in the list.
- Confirm all charges are settled — the Balance Due must be ₱0 before checking out. If there is a balance, click through to the reservation detail page to record the final payment or add folio charges.
- Optionally print the folio and have the guest sign it (see Section 4.5).
- Collect the room key from the guest.
- Click the Check Out button on the row. Confirm the dialog.
- The reservation status changes to Checked Out and the room status changes to Dirty. The room is automatically added to the Housekeeping queue.
⚠️
The system does not prevent check-out with an outstanding balance — it is the front desk officer's responsibility to collect all charges before the guest departs. The Balance Due column is shown prominently for this reason.
5.3 Room Rack
Navigate to Room Rack for a visual grid of all 63 rooms colour-coded by status. This provides an at-a-glance view of the entire hotel's occupancy.
Room Cards
Each card shows the room number, floor, room type, and status badge. For occupied rooms, the card also shows the guest's name, check-out date, and outstanding balance. For arriving rooms (today's arrivals not yet checked in), the card shows the guest name and expected check-in.
Filters
- Use the status filter pills at the top of the page to show only rooms with specific statuses (Available, Occupied, Dirty, Clean, Maintenance, Out of Order).
- Multiple statuses can be selected simultaneously.
- Clicking a selected status deselects it; clicking "All" resets to showing everything.
6 Housekeeping
Navigate to Housekeeping. This page manages room cleaning and readiness. It is divided into four sections:
| Section | Description | Priority |
| Priority — Arrivals Today | Dirty rooms with a new guest arriving today | Highest — service these first |
| Dirty Rooms by Floor | All other dirty rooms grouped by floor (1F, 2F, 3F, 4F) | Service in floor order for efficiency |
| Clean & Ready | Rooms in Clean or Available status | Awareness / inspection queue |
| Maintenance / Out of Order | Rooms blocked from service | Coordination with Maintenance team |
Updating Room Status
Each room card displays action buttons appropriate to its current status. All status changes take effect immediately and are reflected on the Room Rack, Dashboard, and Calendar.
| Button | From Status | To Status | When to Use |
| Mark Clean | Dirty | Clean | Room has been cleaned and is awaiting inspection |
| Mark Available | Clean | Available | Room has been inspected and is ready to sell |
| Mark Dirty | Any | Dirty | Room requires cleaning (early departure, guest request for service) |
| Mark Maintenance | Any | Maintenance | Repair needed; room must not be sold |
| Mark Out of Order | Any | Out of Order | Extended outage; room completely unavailable |
| Mark Available | Maintenance / Out of Order | Available | Room has been repaired and cleared for guests |
💡
Two-step readiness process: After cleaning, supervisors should mark the room Clean first. Once the room has been physically inspected (toiletries restocked, linen checked, minibar counted), mark it Available. This ensures rooms are verified before they appear as bookable in the reservation system.
7 Maintenance
Navigate to Maintenance to manage work orders for repairs, inspections, and upkeep across all areas of the hotel.
Creating a Work Order
- Click + New Work Order.
- Select the Category that best describes the issue:
- Electrical · Plumbing · HVAC · Furniture · Appliances · Structural · Other
- Set the Priority: Urgent (safety hazard, immediate action), High (impacts guest experience), Normal (scheduled repair), or Low (cosmetic / deferred).
- If the issue is in a specific guest room, select the Room Number from the dropdown. Leave this blank for common areas (lobby, corridors, car park, etc.) and describe the location in the notes.
- Write a clear Description of the problem and its location within the room or area.
- If the room must be taken out of service immediately, tick "Mark room as Out of Order". The room status updates the moment the work order is submitted.
- Click Submit Work Order. The work order is assigned an ID and appears in the Open queue.
Work Order List & Filters
The Maintenance list has three filter tabs: Open, In Progress, and Resolved. Within each tab, work orders are sorted by priority (Urgent first, then High, Normal, Low).
Work Order Statuses & Actions
| Status | Available Actions | Meaning |
| Open | Mark In Progress, View | Logged; repair not yet started |
| In Progress | Mark Resolved, View | Technician is actively working on it |
| Resolved | Reopen, View | Repair complete; optionally room released |
Resolving a Work Order
- Open the work order detail page.
- Click Mark Resolved.
- If the work order is linked to a room, a prompt asks whether to release the room to Clean or Available. Select the appropriate option and confirm.
- The work order is marked Resolved with a timestamp. The room status updates if selected.
Reopening a Work Order
If the original issue recurs or the fix was incomplete, click Reopen on a Resolved work order. It returns to Open status. A reason for reopening should be added in the notes.
8 Room Management
Navigate to Rooms. This module provides a complete directory of all 63 rooms across 4 floors.
Room List
The list shows room number, floor, type, rack rate, current status, and quick actions. Rooms are ordered by floor then room number.
Room Detail Page
Click any room number to view its detail page, which shows:
- Room number, floor, type, and rack rate
- Current status with colour-coded badge
- If occupied: the current checked-in guest's name, booking number, and check-out date
- Amenities list (e.g. Air Conditioning, Hot Water, TV, WiFi, Mini-fridge)
- Description / notes
- Maximum occupancy
Editing a Room
Click Edit to update the room's configuration:
- Room Type — one of the 16 defined types
- Description — free-text details
- Rack Rate — the base nightly rate in ₱ before any rate plan discounts
- Maximum Occupancy — maximum number of guests
- Floor — 1 to 4
- Amenities — checkbox list of available facilities
⚠️
Room status (Available, Dirty, Occupied, etc.) is managed through the Housekeeping and Maintenance modules and through check-in/check-out actions — it cannot be changed directly from the Edit Room form.
Room Types & Rack Rates
| Room Type | Rack Rate | Room Type | Rack Rate |
| Economy Twin | ₱699 | Junior Deluxe | ₱699 |
| Economy Double | ₱699 | Superior Deluxe | ₱849 |
| Ordinary Twin | ₱549 | Deluxe Twin | ₱899 |
| Ordinary Double | ₱549 | Deluxe Double | ₱899 |
| Standard Twin | ₱849 | Deluxe Trio | ₱1,249 |
| Standard Double | ₱849 | Barkadahan | ₱1,499 |
| Executive Suite | ₱1,749 | Family Room / Family Room 2 | ₱1,649 |
| Economy Junior | — | | |
9 My Calendar
Navigate to Calendar. The Calendar provides a Gantt-style timeline view of all reservations: rooms are listed on the vertical axis and dates run across the horizontal axis. Coloured bars represent reservation spans.
9.1 Reading the Calendar
| Bar Colour | Status |
| Green | Checked In (guest currently in the room) |
| Blue | Confirmed |
| Yellow | Pending |
| Grey | Checked Out |
- The teal column highlights today's date.
- Bars that extend past the start or end of the current month have rounded ends clipped to indicate continuation.
- Hover over any bar to see a tooltip with guest name, booking number, status, check-in and check-out dates, and number of nights.
- Click a bar to navigate to the full reservation detail page.
- Room labels are sticky — they remain visible as you scroll horizontally through the month.
Month Navigation
Use the ← Previous and Next → buttons to move between months. The URL updates with the selected month so you can bookmark or share a specific month view.
9.2 Filters
| Filter | How It Works |
| Status Pills | Toggle which reservation statuses are visible. Click a status pill to show/hide bars of that status. Multiple statuses can be active simultaneously. Deselecting all statuses hides all bars. |
| Floor Filter | Select a floor (1F – 4F) to show only rooms on that floor. Select "All Floors" to show all rooms. |
| Hide Empty Rows | Tick this checkbox to collapse room rows that have no reservations in the current month, making the timeline more compact. |
| Guest Name Search | Type part of a guest's name. Bars that do not match are dimmed to 20% opacity while matching bars remain fully visible, making it easy to locate a specific guest across multiple rooms. |
9.3 Drag-and-Drop Room Transfer
Checked-in reservations (green bars) can be transferred to a different room directly from the Calendar by dragging and dropping the bar onto another room row. This is a shortcut to the same Room Transfer feature available on the reservation detail page.
Visual Affordance
Draggable (checked-in) bars are visually distinguished from non-draggable bars by:
- A persistent green ring around the bar's border
- A six-dot grip icon on the left edge of the bar (brighter on hover)
- The cursor changes to a grab hand when you hover over a draggable bar
Non-checked-in bars (Confirmed, Pending, Checked Out) are not draggable and have no grip indicator.
Performing a Drag-and-Drop Transfer
- Locate the checked-in guest's green bar on the calendar.
- Click and hold the bar. The cursor changes to a grabbing hand.
- Drag the bar vertically to a different room row. As you drag over other rows, the target row highlights with a green glow to indicate it is a valid drop zone.
- Release the bar on the target room row. A Transfer Modal opens automatically.
- Review the transfer details shown in the modal:
- From Room — the guest's current room
- To Room — the room you dropped onto, with its current status
- If the target room is Occupied, Dirty, Maintenance, or Out of Order, a red blocking alert appears: "Room [X] is [status] and cannot accept a transfer." The Confirm Transfer button changes to "Room Not Available" and is disabled. You must close the modal and drag to a different room.
- If the target room is Available or Clean, the modal proceeds normally.
- Select the Reason for the transfer (required):
- Maintenance Issue · Guest Request · Upgrade · Downgrade · Noise / Disturbance · Other
- Add optional Notes.
- Click Confirm Transfer. The page reloads and the bar appears in its new room row.
Drag-and-Drop Validations
- Only Checked In reservations (green bars) are draggable. All other statuses are fixed and cannot be dragged.
- The Reason field is required — the Confirm Transfer button remains disabled until a reason is selected, regardless of room availability.
- The target room must be Available or Clean — the modal blocks submission and displays a red error for any other status (Occupied, Dirty, Maintenance, Out of Order). This is enforced both in the modal UI and on the server.
- Dropping a bar onto the same room it already occupies will open the modal but there is no functional transfer needed — simply cancel.
💡
The drag-and-drop room transfer on the Calendar is identical in effect to using "Transfer Room" on the reservation detail page (Section 4.6) — both update the reservation, room statuses, and activity log. Use whichever is more convenient for the situation.
10 Guest Profiles
Navigate to Guests to manage the guest database. Each profile stores personal details, contact information, and stay history.
Creating a Guest Profile
- Click + New Guest.
- Enter the guest's Full Name, Contact Number, and Email Address.
- Optionally enter Nationality, Address, and any notes.
- Upload a copy of the guest's Government-Issued ID (recommended for walk-in guests).
- Click Save Guest.
Guest Profile Page
The guest profile page shows all past and upcoming reservations linked to that guest, including dates, room, amount, and payment status. This provides an instant stay history for returning guests, which is useful for preferences tracking and loyalty recognition.
11 Point of Sale (POS)
Navigate to Point of Sale. The POS module handles food, beverage, and incidental retail sales separate from room charges.
Processing a Sale
- Click + New Transaction.
- Search for a product by name or scroll the product list. Click Add to put it in the order.
- Adjust quantities using the + and − buttons in the order panel.
- Select the Payment Method for this transaction.
- Optionally link the sale to an in-house reservation (allows charges to be tracked per guest).
- Review the total (including VAT) and click Complete Sale.
- A receipt is generated and can be printed.
Managing Products
Go to POS → Products to add new products or update existing ones. Each product record has a name, category, price, and active / inactive toggle. Inactive products do not appear on the POS transaction screen.
12 Rate Plans
Navigate to Rate Plans. Rate plans allow you to offer promotional, corporate, group, or long-stay pricing without manually adjusting each reservation's amount.
Rate Plan Types
| Type | How It Works | Built-in Example |
| Percent Off | Deducts a percentage from the room's rack rate. E.g. 10% off ₱849 = ₱764.10 per night. | ARP — 10% off rack |
| Amount Off | Deducts a fixed peso amount from the rack rate. E.g. ₱100 off ₱849 = ₱749 per night. | LONG — ₱100 off |
| Fixed Rate | Sets a specific nightly rate per room type regardless of the rack rate. A separate rate grid is entered for each room type. | CORP — fixed corporate rates per room type |
Creating a Rate Plan
- Click + New Rate Plan.
- Enter a descriptive Name (e.g. "Senior Citizen Discount") and a short uppercase Code (2–6 characters, e.g. "SCD"). The code must be unique across all plans.
- Select the Type. Based on the selection:
- Percent Off — enter the discount percentage (e.g. 20 for 20%)
- Amount Off — enter the peso discount per night (e.g. 100)
- Fixed Rate — a rate grid appears with one row per room type; enter the fixed nightly rate for each
- Set Minimum Nights — the minimum stay required for this plan to be applicable. Leave blank or set to 1 for no minimum.
- Set optional Valid From and Valid To dates to limit the plan to a promotional window. Leave blank for an always-active plan.
- Ensure Active is toggled on.
- Click Save Rate Plan.
Rate Plan Validations
- Code must be unique — duplicate codes are rejected.
- Percent Off value must be between 1 and 100.
- Amount Off and Fixed Rate values must be positive numbers.
- For Fixed type, rates are optional per room type — room types without a fixed rate fall back to the rack rate.
- Valid To must be after Valid From if both are set.
Using Rate Plans on Reservations
On the New Reservation or Edit Reservation form, the Rate Plan dropdown lists only Active plans whose minimum nights and date restrictions are met by the selected stay. Selecting a plan immediately shows the adjusted rate in the preview panel. The plan name and discount are shown as a badge on the reservation detail page.
Soft-Deleting a Rate Plan
Deleting a rate plan moves it to a soft-deleted state (it is no longer offered in reservation forms) but existing reservations that used the plan retain their rate and display the plan name historically. Contact your Super Admin to permanently delete a rate plan if truly needed.
13 Channel Manager
Navigate to Channel Manager. This module maps each booking source (channel) to a specific rate plan, so reservations from OTAs and other channels automatically receive the correct pricing.
Channel Performance Table
The top section shows statistics for each configured channel for the current period:
| Column | What It Shows |
| Channel / Source | Name of the booking channel (e.g. Booking.com, Agoda, Walk-in) |
| Bookings | Number of reservations from this source |
| Revenue | Total room revenue from this source (₱) |
| Avg Stay | Average length of stay in nights for this source |
| Share | This source's percentage of total bookings from all channels |
| Mapped Rate Plan | The rate plan currently assigned to new reservations from this source |
Mapping a Channel to a Rate Plan
- In the Rate Mapping section, find the channel you want to configure.
- Click the Rate Plan dropdown for that channel and select the appropriate plan (e.g. Booking.com → "OTA Rate").
- Click Save Mapping. New reservations created with that source will default to the mapped rate plan.
Adding a New Channel
- Click + Add Channel.
- Enter the Source Name (must match exactly how it will appear when creating reservations, e.g. "Expedia").
- Select the rate plan to map it to.
- Click Save.
ℹ️
The Channel Manager does not connect to external OTA extranets — it is an internal mapping tool. Reservations still need to be entered manually; the mapping simply pre-selects the correct rate plan for that channel.
14 Reports
Navigate to Reports. Three report types are available, each in its own tab. Reports include soft-deleted reservations so historical data remains accurate even after records are trashed.
Date Range Selector
All reports share a common date-range toolbar. You can type dates manually or use the quick-select presets:
- Today — single day
- This Week — Monday to today
- This Month — 1st of the month to today
- Last Month — full previous calendar month
The maximum allowed range is 365 days. If you enter a range longer than 365 days, the start date is automatically adjusted.
14.1 Occupancy Report
Shows day-by-day occupancy statistics for the selected date range. Navigate to Reports → Occupancy.
| Column | Definition |
| Date | Each calendar day in the selected range |
| Occupied Rooms | Number of rooms with a checked-in guest on that night |
| Occupancy % | Occupied Rooms ÷ 63 (total rooms) × 100, with a colour-coded bar |
| Revenue | Room revenue for that night — each reservation's total amount is distributed evenly across its nights (amount ÷ nights) |
| ADR | Average Daily Rate — Revenue ÷ Occupied Rooms for that day |
| RevPAR | Revenue Per Available Room — Revenue ÷ 63 total rooms for that day |
The Summary Row at the bottom shows period totals and averages: total occupied room-nights, average occupancy %, total revenue, average ADR, and average RevPAR.
14.2 Revenue Report
Shows revenue for reservations with check-in within the selected period. Navigate to Reports → Revenue.
Revenue is broken down four ways:
| Breakdown | What It Shows |
| By Room Type | Number of reservations, total revenue, ADR, and percentage share for each room type |
| By Booking Source | Revenue per channel (Walk-in, Booking.com, Online, etc.) with count, average stay, and share bar |
| By Rate Plan | Revenue generated under each rate plan (Rack Rate shown separately for reservations without a plan) |
| By Payment Method | Total collected per method (Cash, GCash, Credit Card, etc.) across all reservation payments in the period |
14.3 Night Audit
Select a single date to generate the full night audit for that day. Navigate to Reports → Night Audit.
The Night Audit contains four sections:
| Section | What It Shows |
| Arrivals | All guests with check_in = selected date (excluding cancelled/no-show), with room number, booking number, and amount |
| Departures | All guests with check_out = selected date (excluding cancelled/no-show), with room number and amount |
| In-House | All guests with status Checked In whose stay spans the selected date (checked in before, checking out after) |
| Payments Collected | All payment transactions recorded on the selected date, grouped by method with subtotals; individual transactions listed with guest name, booking number, amount, and reference |
💡
Run the Night Audit every morning for the previous day to reconcile cash, GCash, and card settlements before banking and starting a new shift. The Payments Collected section gives a full breakdown of everything taken in the previous 24 hours.
15 Billing
Navigate to Billing. The Billing module provides a list-level view of all reservations with outstanding or fully paid balances, and provides access to printable folios.
Billing List
The Billing list shows all reservations with their room charge, total paid, and balance due. Features include:
- Search — filter by guest name or booking number
- Balance Filter — show only reservations with outstanding balances to quickly identify unpaid accounts
- Summary Statistics — total room revenue, total collected, and total outstanding balance across the filtered view
Printing a Folio
From the Billing list or the reservation detail page, click Print Folio to open the printable folio for any reservation. See Section 4.5 for the folio layout details.
16 Property Settings
Navigate to Settings. This screen is accessible only to Super Admin and Manager roles. Settings configure property-wide information used across all modules.
| Setting Group | Fields |
| Property Details | Property name (displayed in the sidebar), address, phone, email, website URL |
| Tax & Billing | VAT rate (%, default 12%), BIR-registered business name, Tax Identification Number (TIN), Official Receipt prefix |
| Check-In / Check-Out Policy | Standard check-in time, standard check-out time, late check-out fee (₱) |
| Currency | Currency symbol (₱ default, used throughout the system) |
Click Save Settings after making any changes. Settings take effect immediately — the property name in the sidebar updates on next page load.
⚠️
Changing the VAT rate affects the VAT calculation on all future folio prints. It does not retroactively recalculate previously issued folios.
17 Staff Management
Navigate to Staff. This module is accessible only to the Super Admin. It manages all system user accounts — who can log in and what permissions they hold.
Staff List
The staff list shows each member's name, email, position, role, status (Active / Inactive), and last login timestamp. Active accounts are shown with a green dot; inactive with grey.
Adding a Staff Member
- Click + New Staff Member.
- Enter the staff member's Full Name, Email Address, Phone Number, and Position / Job Title.
- Select their Role from the dropdown — this determines exactly what they can access and do in the system.
- Enter an initial Password (minimum 8 characters) and confirm it. Use the eye icon to verify what you have typed.
- Leave Active checked (default).
- Click Create Staff Member. Share the login email and password securely with the new staff member and advise them to change their password via My Profile on first login.
Create Staff Validations
- Email must be unique across all staff accounts — duplicates are rejected.
- Password must be at least 8 characters and must match the confirmation field.
- Role is required — a staff member cannot be saved without a role.
Editing a Staff Member
Click Edit on any staff row to update their name, email, phone, position, or role. Leave the password fields blank to keep the existing password. Fill in the new password fields to change it. Role changes take effect immediately on the staff member's next page load.
Deactivating a Staff Member
When a staff member leaves or goes on extended leave, deactivate their account rather than deleting it — this preserves all records associated with their account (reservations created, payments recorded, etc.).
- Find the staff member in the list.
- Click Deactivate. Confirm the dialog.
- The account status changes to Inactive. The staff member is immediately unable to log in and receives the deactivated-account message.
To restore access, click Activate on the staff member's row.
🚫
You cannot deactivate your own account. If needed, have another Super Admin perform this action. The system blocks self-deactivation to prevent accidental lockout.
18 Roles & Permissions Management
Navigate to Roles. This module is accessible only to the Super Admin. It allows the creation and management of custom roles with tailored permission sets.
⚠️
The 6 built-in system roles (Super Admin, Manager, Front Desk, Housekeeping, Maintenance, Accountant) cannot be deleted. They can be edited, but exercise caution — changes affect all staff assigned to that role immediately.
Creating a Custom Role
- Click + New Role.
- Enter a Role Name. A URL-safe slug is generated automatically (e.g. "Night Auditor" → night-auditor).
- Add an optional Description for documentation purposes.
- In the Permissions Grid, each row is a module and each column is an action (view, create, edit, delete, etc.). Check the permissions this role should have:
- Click the module-level checkbox to select or deselect all permissions in that module at once
- The module checkbox shows an indeterminate state (dash) when only some permissions in the module are selected
- Click Create Role. The role is immediately available in the Staff management Role dropdown.
Permissions Reference
| Module | Available Permission Keys |
| Dashboard | view |
| Rooms | view, edit |
| Reservations | view, create, edit, cancel, check_in, check_out, undo, transfer_room |
| Front Desk | view (covers Check-In, Check-Out, Room Rack) |
| Housekeeping | view, update_status |
| Maintenance | view, create, resolve |
| Calendar | view |
| Guests | view, create, edit |
| Point of Sale | view, create |
| Billing | view |
| Rate Plans | view, manage (create/edit/delete) |
| Channel Manager | view, manage |
| Reports | view |
| Settings | view, edit |
| Staff | view, manage (create/edit/deactivate) |
| Roles | view, manage |
| Website | manage |
ℹ️
The Super Admin role bypasses all permission checks — it always has access to everything, regardless of the permission grid settings.
19 Public Website & Online Booking
Public Website
Parkview Hotel CDO has a public-facing website available to potential guests at the hotel's domain. The following pages are available without logging in:
| Page | URL | Content |
| Home | / | Hero section, highlights, call to action |
| Rooms Overview | /rooms-overview | All room types with photos and rates |
| Room Detail | /rooms-overview/{type} | Photos, amenities, and rates for a specific room type |
| About | /about | Hotel story, facilities, and team |
| Gallery | /gallery | Property photo gallery |
| Contact | /contact | Address, phone, email, map embed |
| Book Now | /book | Online booking flow |
Online Booking Flow
Guests can make reservations directly through the website in three steps:
- Date Search — guest selects check-in and check-out dates and clicks Search.
- Room Results — available room types for those dates are displayed with photos, descriptions, amenities, and rates. Guest selects a room type.
- Booking Form — guest fills in their name, contact number, email, number of guests, and any special requests, then submits.
- Confirmation — a booking confirmation page shows the booking number, room details, dates, and rate. An email confirmation is sent if email is provided.
Online reservations are created with:
- Status: Pending
- Source: Online
They appear in the Reservations list and Check-In queue immediately. Front desk staff should call or email the guest to confirm the booking and collect a deposit.
Website Content Management (CMS)
Navigate to Website (requires Super Admin or the website.manage permission). This admin panel allows updating all public website content without code changes.
| CMS Tab | What Can Be Edited |
| Homepage | Hero headline, subheadline, description, hero image |
| About | About page text, mission statement, team section |
| Contact | Address, phone, email, map embed code, opening hours |
| Gallery | Upload, reorder, or delete property gallery photos |
| Room Photos | Upload photos per room type; these appear on the Rooms Overview and Room Detail pages |
| Booking Settings | Booking page instructions, minimum advance booking days |
| SEO | Page title, meta description, and keywords used in search engine results |
Uploading Images
- Go to the relevant CMS tab (Gallery or Room Photos).
- Click Upload Photo and select an image file (JPEG or PNG recommended; max 5 MB).
- For room photos, select the room type from the dropdown before uploading.
- Click Save. The photo appears on the public website immediately.
- To delete a photo, click the red Delete button on the photo thumbnail. Confirm the dialog.
20 Room Status Reference
| Status | Meaning | Who Sets It | Can Be Sold? |
| Available | Cleaned, inspected, and ready for new guests | Housekeeping (Mark Available) | Yes |
| Clean | Cleaned but not yet inspected by supervisor | Housekeeping (Mark Clean) | Supervisor discretion |
| Occupied | A guest is currently checked in | System (on Check-In or Room Transfer) | No |
| Dirty | Recently vacated or requires cleaning | System (on Check-Out / Transfer) or Housekeeping | No |
| Maintenance | Under repair; not available for guests | Housekeeping or Maintenance module | No |
| Out of Order | Extended outage; completely unavailable | Housekeeping (Mark Out of Order) | No |
Standard Status Flow
Guest checks in→Occupied
Guest checks out→Dirty
Housekeeping cleans→Clean
Supervisor inspects→Available
Repair needed→Maintenance→ after repair →Available
Status and New Reservations
The New Reservation form only shows rooms with status Available or Clean on the selected dates. Rooms in any other status (Occupied, Dirty, Maintenance, Out of Order) are automatically hidden from the room selection.
21 Troubleshooting
| Problem | Likely Cause | Solution |
| Cannot log in — "credentials do not match" |
Incorrect email or password |
Use Forgot Password to reset. If the account is new, confirm the email with your administrator. |
| Account deactivated message on login |
Account has been deactivated by an administrator |
Contact your Super Admin or Manager to reactivate the account. |
| A module is missing from the sidebar |
Your role does not have permission for that module |
Ask your Super Admin to update your role's permissions or assign you a different role. |
| Password reset email not received |
Email may be in the spam/junk folder, or the system is in log-only mail mode |
Check spam folder first. If not found, ask your IT administrator to locate the link in the system mail log or configure SMTP email. |
| Room does not appear when creating a reservation |
Room is occupied, dirty, maintenance, or out of order on the selected dates; or another reservation conflicts |
Choose different dates or a different room type. Check current room status in Housekeeping or Room Rack. |
| Undo Check-Out is blocked |
Another guest has since been checked into that room |
Check out the current guest first (if this was truly an error), then attempt Undo Check-Out again. |
| Rate plan not appearing in reservation form |
Plan is inactive, outside its valid date range, or the stay is shorter than the minimum nights requirement |
Go to Rate Plans and check the plan's Active toggle, Valid From/To dates, and Minimum Nights setting. |
| Cannot move reservation to trash |
Reservation status is Checked In |
Check the guest out first, then move to trash. The system does not allow trashing an active in-house stay. |
| Drag-and-drop on Calendar does nothing |
The bar you are trying to drag is not a Checked In (green) reservation |
Only green bars (status: Checked In) are draggable. For other statuses, use the reservation detail page to make changes. |
| Calendar transfer modal says "Room Not Available" |
The target room is occupied, dirty, in maintenance, or out of order |
Close the modal and drag the bar to a different room row that is Available or Clean. |
| Confirm Transfer button is disabled in the transfer modal |
Reason has not been selected, or the target room is unavailable |
Select a Reason from the dropdown. If the button label reads "Room Not Available," the target room status prevents the transfer. |
| Report shows no data or partial data |
Date range has no matching reservations, or dates are set incorrectly |
Verify the date range in the toolbar. Check that reservations exist for that period in the Reservations list. |
| Cannot deactivate a staff member |
You are trying to deactivate your own account |
Ask another Super Admin to perform the deactivation. |
| Cannot delete a built-in role |
The 6 system roles are protected |
System roles cannot be deleted. You can edit their permissions, but be aware this affects all staff in that role. |
| Folio VAT amount looks incorrect |
VAT rate in Settings was changed after the reservation was created |
The folio uses the current VAT rate from Settings. Update the VAT rate in Settings to the correct value and reprint the folio. |
ℹ️
For technical issues not listed above, contact your property's IT administrator or the NXT-ePMS system provider at
EmberNXT —
[email protected].