# Product Requirements Document (PRD)

## 1. Executive Summary
**Product Name:** Calian Digital Hotel Platform  
**Property:** Calian Hotel (Plot 8A Robert Mugabe Road, Mbuya, Kampala, Uganda)  
**Target Market:** Corporate travelers, diplomatic corps, Kampala staycationers, international leisure travelers, event planners, spa/wellness patrons.  
**Core Purpose:**
1. Premium direct booking and marketing engine with luxury 2026 boutique hotel aesthetics.
2. Unified Property Management System (PMS) and Guest CRM for front desk, housekeeping, restaurant, spa, events, and management.

---

## 2. User Personas & Core Journeys

### 2.1 The Leisure / Staycation Guest
- **Goal:** Effortless booking of weekend packages, viewing real room photography, booking spa sessions and rooftop dining.
- **Journey:** Discovery via Google/Social -> High-converting availability search -> Package selection -> Upsell add-ons (massage, airport transfer) -> Pesapal payment -> Instant confirmation -> Self-service pre-arrival portal -> Post-stay feedback.

### 2.2 The Corporate & Diplomatic Booker
- **Goal:** Booking corporate negotiated rates, requesting VAT/invoices, billing to company credit accounts, scheduling airport transfers.
- **Journey:** Enters Corporate Promo/Rate Code -> Invoice address entry -> Multi-night booking -> Direct corporate billing or credit card -> Auto-generated tax-compliant PDF invoice.

### 2.3 Front Desk Receptionist
- **Goal:** Rapid check-in/out, visual room calendar lookups, posting folios (minibar, dining, laundry), processing payments.
- **Journey:** Front desk dashboard -> One-click check-in with ID capture -> Real-time folio posting -> Settlement via Cash/Card/MoMo/Pesapal -> Instant printed/emailed receipt -> Housekeeping auto-notification.

### 2.4 Housekeeping Attendant & Supervisor
- **Goal:** Updating room cleaning status on mobile/tablet, logging minibar charges, reporting maintenance problems, recording lost & found items.

### 2.5 General Manager & Revenue Director
- **Goal:** Real-time visibility into Occupancy, ADR (Average Daily Rate), RevPAR, cashier shift reconciliation, channel performance, and staff audit trails.

---

## 3. Functional Requirements

### 3.1 Public Guest Engine
- Fully responsive editorial luxury website.
- Direct booking engine with real-time physical inventory calculation and 15-minute booking hold locks to eliminate overbooking.
- Multi-currency support (USD default, dynamic UGX conversion with configurable exchange rate).
- Digital interactive restaurant and rooftop lounge menus with table reservations.
- Spa menu and treatment appointment booking with therapist scheduling.
- Meetings and events RFP builder with dynamic quote generation.
- Kampala and Mbuya destination marketing journal for organic SEO.

### 3.2 Property Management System (PMS)
- Real-time room status tracking: `Available`, `Reserved`, `Occupied`, `Dirty`, `Cleaning`, `Clean`, `Inspected`, `Out of Order`, `Maintenance`.
- Interactive visual room rack calendar (daily, weekly, monthly views).
- Guest Folio system supporting multi-outlet charges, discounts, partial payments, split folios, and refunds.
- Housekeeping operations workflow with attendant assignment, priority ranking, and inspection signoff.
- Maintenance ticket tracker with automatic room inventory block when marked `Out of Order`.
- Cashier shift opening float, live transaction audit, closing reconciliation, and variance tracking.

### 3.3 Finance & Integrations
- Pesapal 3.0 API with server-to-server IPN listener and transaction audit logs.
- Offline payment recording (Cash, MTN/Airtel Mobile Money, Bank Transfer, Physical POS).
- Branded PDF generation for booking vouchers, registration cards, invoices, receipts, and event quotes.

### 3.4 Installation & Administration
- Guided web installer at `/install` with requirements check, database configuration, admin setup, and lockfile creation.
- Granular Role-Based Access Control (Super Admin, GM, Front Desk, Housekeeping, Sales, Accounts).
- Full CMS for pages, hero sliders, galleries, journal articles, and SEO meta tags.
