Guests & CRM
Purpose and who uses it
ReceptionistHotel ManagerA profile for every guest, created by the booking wizard or by hand, that grows with each stay.
Guests is the hotel's CRM. Every booking points at a guest profile, a G-code, contact details, country, loyalty tier and notes, so the front desk recognises a returning guest and management can see who actually stays and spends. Profiles are usually created by the booking wizard; the New guest button is for adding someone before their first booking or setting up a corporate account.
- Receptionists search the directory during check-in, fix a phone number, read the notes (“prefers high floor”).
- Managers use the KPI strip and tier chips for loyalty and repeat-business figures, and export the list.
- Accountants and the restaurant have view-only access to look a guest up.
Screen anatomy
KPI strip, tier chips with counts, type and country selects, then a paged table (or cards) that opens a profile drawer.
- 1Page head“N guests on file”: every guest, never the filtered count. Search box, Export (Reports Full only) and New guest (Guests Edit) on the right.
- 2Tier chipsAll tiers · Platinum · Gold · Silver · Bronze, each with its count across the whole hotel.
- 3Type and country“Everyone / Corporate only / Individuals only” and “All countries” (countries actually on file). Clear appears when any filter is on.
- 4RowsGuest (name, corporate tag, code), Contact (phone or email), Country, Tier, Stays, Lifetime spend, Rating. Click a row to open the drawer.
- 6Pagination“N of M guests”, sorted by name. Page, search and filters live in the address bar.
Above the chips sit four KPI tiles when analytics are available: Total guests, Loyalty members(Silver tier and above), Returning rate (repeat stayers) and In-house now. Phones open the Cards view; the Table / Cards switch sits in the page head next to the search box.
Finding a guest and reading the profile
ReceptionistSearch by name, code, phone, email or company; the drawer shows stats, contact cards, notes and the last 25 bookings.
- 1Type in “Search name, code, phone…”Matches name, G-code, phone, email and company name. The list narrows as you type; the count reads “12 of 480 guests”.
- 2Narrow with the chips and selectsClick a tier chip, choose Corporate only, or pick a country. Filters combine. Clear resets all of them.
- 3Click the rowThe drawer opens with the guest's name and code (plus company for corporate guests).
- 4Read the three stat cardsTotal stays, Lifetime spend and Member since (the date the profile was created).
- 5Scroll the Stay historyUp to 25 most recent bookings, newest first: booking code, room and room type, dates, status badge (Checked In, Cancelled, …) and amount. “No bookings yet.” for a fresh profile.
Adding and editing a guest
ReceptionistNew guest for a walk-in-to-be or a company account; Edit in the drawer for contact details, tier and notes.
New guest
- 1Click New guestThe dialog reminds you: “Guests are also created automatically by the booking wizard”.
- 2Full nameRequired, at least two characters, otherwise “Enter the guest's name”.
- 3Phone, Email, Country, TierAll optional except Tier, which defaults to Bronze. Email must be a valid address. Tiers: Platinum, Gold, Silver, Bronze.
- 4Corporate accountTick it to reveal a Company name box. The list then shows a “corporate” tag next to the name and the drawer a Corporate badge.
- 5Notes, then Add guestUp to 500 characters. The toast reads “Guest Jane Doe added” and the profile drawer is ready to open.
Editing
Open the drawer and click Edit (Guests Edit needed). Name, Phone, Email, Country, Tier and Notes become fields; Save writes them and the toast “Guest updated” confirms. The corporate flag and company name are not on the edit form, set them when the profile is created. Every edit is written to the audit log.
How stays, spend and tiers are counted
Hotel ManagerAccountantStays are bookings that really happened; spend is money actually collected, minus refunds. Both are computed, never typed.
- Stays counts bookings whose status is Checked In or Checked Out. Cancellations, no-shows and reservations that have not arrived yet do not count, so a guest with three future bookings and no history still shows 0 stays.
- Lifetime spend is the sum of payments received on that guest's invoices, with refunds subtracted. It is not the billed total: an unpaid folio adds nothing until it is paid. A dash means nothing has been collected.
- Returning rate = guests with two or more real stays ÷ guests with at least one, as a percentage.
- Loyalty members = everyone not in Bronze. The tier chips count guests per tier across the whole hotel.
- In-house now = distinct guests with a booking currently checked in.
- Bronze → Silver
- Silver → Gold
- Gold → Platinum
Corporate guests
ReceptionistAccountantA company account is a guest profile with the corporate flag and a company name; bookings for its travellers hang off it.
Tick Corporate account in New guest and enter the company name. From then on:
- The directory shows a corporate tag next to the name and the “Corporate only” filter finds it.
- The drawer subtitle reads “G-… · Company Ltd” and shows a Corporate badge and a Company card.
- Search matches the company name as well as the contact person's name.
- Stays and spend accumulate on the company profile, so the account's real value is visible in one place.
Pick the company profile as the guest in the booking wizard and choose the Corporate booking source; invoices then carry the company as the billed party.
Guest fields
The profile record, what the forms accept and what is computed.
| Field | Type | Notes |
|---|---|---|
| Code | G-… | Assigned automatically on creation. |
| Full name * | text 2–100 | Person or contact name. Searchable. |
| Phone | text ≤ 40 | Shown as the Contact column when present. Searchable. |
| Must be a valid address if given. Used as Contact when there is no phone. | ||
| Country | text ≤ 60 | Free text; the country filter lists the values on file, so spell consistently. |
| Tier * | enum | Platinum / Gold / Silver / Bronze; defaults to Bronze. Changed by hand only. |
| Corporate account | yes/no | Create-time only. Adds Company name (≤ 100). |
| Notes | text ≤ 500 | Preferences, allergies, VIP handling. Shown in a grey box in the drawer. |
| Rating | 1–5 stars | Displayed in the list and drawer when present; there is no control on this screen to set it. |
| Stays · Lifetime spend · Member since | computed | Derived from bookings, payments and the creation date, never edited. |
Permissions
Guests View reads; Guests Edit creates and edits; the Export button needs Reports Full.
| Role | Guests | Reports |
|---|---|---|
| Super Admin | Full | Full |
| Hotel Manager | Full | Full |
| Receptionist | Edit | None |
| Accountant | View | Edit |
| Housekeeping Mgr | None | View |
| Maintenance | None | None |
| Restaurant Mgr | View | View |
| HR Manager | None | Edit |
| Security | View | None |
- Guests View: directory, drawer, analytics tiles. No New guest or Edit buttons.
- Guests Edit: New guest, Edit / Save in the drawer.
- Reports Full: the Export button (the file is produced by the Reports module).
Default roles: Receptionist has Edit; Accountant, Restaurant Mgr and Security have View; Housekeeping, Maintenance and HR do not see the module.
Tips
Export to Excel, bookmarkable filters, and keeping the country list clean.
- Export. Click Export in the page head. The toast reads “Guest export queued. Download it from Reports”: the workbook appears under Reports → Exports once it is built. The export is the full directory, not the filtered page.
- Bookmark a segment.
/guests?tier=Gold&country=Kenyareopens the same slice; share it with the sales team. - Country spelling. The country select only offers what has been typed before, so “Uganda” and “UG” become two entries. Fix stragglers with Edit.
- Notes at check-in. The booking drawer shows the guest's notes, so put anything the desk must know here rather than on a single booking.
- The typeahead in the booking wizard uses the same search rules (name, code, phone, email) and returns the top eight matches.
Errors you may see
Nothing here conflicts; what you can hit is validation and the occasional stale profile.
Validation failedGuest not foundClient-side: “Enter the guest's name” (blank name on New guest), “Could not add the guest”, “Could not save changes”, “Could not open guest”, “Could not queue the export” (export needs Reports Full and a working export queue).
- Real stay
- A booking that reached Checked In or Checked Out. The only kind that counts as a stay.
- Lifetime spend
- Collected payments on the guest's invoices minus refunds, cash in the till, not amounts billed.
- Tier
- Loyalty band (Platinum, Gold, Silver, Bronze). Set manually; Silver and above are “loyalty members”.
- Corporate account
- A guest profile flagged as a company, with a company name, used as the billed party for its travellers.