LayaHotels.lk
Version 3 (Extended)
An enterprise-grade online reservation platform, booking engine, and property management ecosystem designed for the Laya Hotels chain (Laya Beach, Laya Leisure, Laya Safari, and Laya Waves). Developed as a Final Year Project of the Bachelor of Information Technology (External) University of Moratuwa (UOM).
This system integrates with the Laya Billing System (v3 Live Link) and features the unreleased Layabill System Version 4 (Web) integration module which bridges offline hotel terminals with cloud databases in real time. (Please note: The platform is not officially launched to production as it is an academic research-based deployment project).
Part 1: Static Hotel Website & UI Showcase
The frontend web interface acts as the initial digital entry point for the Laya Hotels brand. It presents a cohesive aesthetic that spans four major premium hotel destinations in Sri Lanka:
Laya Beach (Wadduwa)
Charming seaside luxury resort focus. Features sea-facing rooms, custom beach dining events, and water activities.
Laya Leisure (Kukuleganga)
Forest and nature adventure theme. Provides details about luxury villas, outdoor activities, sports complex, and nature trails.
Laya Safari (Yala)
Wildlife and dry-zone luxury cabana focus. Details include national park game drives, outdoor campfires, and premium dining.
Laya Waves (Kalkudah)
Modern beach resort showcasing beautiful bay vistas, luxury suites, and customized east-coast tours.
Key Features of the Static Website:
- Dynamic Navigation & Brand Uniformity: Consistent navigation bar linking sub-destinations while keeping their unique color codes and visual assets active.
- Rich Imagery & Virtual Walkthrough: CSS grids combined with optimized image carousels highlighting the premium quality of deluxe rooms, suites, pools, and recreational zones.
- SEO Optimization & Semantic Layouts: Implemented structured schemas, rich meta tags, semantic HTML headers, and clean page layouts to drive organic discovery.
Part 2: Real-time Booking Engine & Specifications
The booking engine converts site visitors into guests. By dynamically linking to local database variables, the booking engine processes inquiries in real-time, matching input dates with true inventory parameters.
Core Processing Specifications
Checks room status via index records to confirm total available inventory for requested dates, preventing double booking during peak holidays.
Applies custom rules based on seasonality, day-of-week variables, and selected half-board / full-board room additions.
Maintains guest reservation choices in secure PHP session arrays. Holds reservations to allow payment completion before releasing slots.
Sanitizes all form inputs via regex validation rules and parameterized queries before writing reservations to the remote server.
Upon finalizing selection details, the engine builds a checkout package, calculating taxes (VAT, SSCL), service charges, and discount coupon codes, outputting standard invoice parameters to the payment gateway module.
Architectural Concurrency & Design Decisions
BIT Final Year Thesis Engineering Note: Although fully simulated in the architectural design patterns of the platform, the concurrency controls, 10-minute hold states, and SMS authentication bridges represent advanced architecture specifications mapped to resolve real-world high-volume reservation issues.
Dynamic 10-Minute Room Lock
To prevent real-time double bookings (when multiple users try to reserve the same physical room simultaneously), the checkout process triggers a temporary lock.
- The system locks the room inventory and sets a
LOCK_TIMESTAMP. - Generates a dynamic 10-minute hold window for payment completion.
- If checkout succeeds, the status updates to
RESERVED. Otherwise, a background daemon automatically releases the lock.
Real-World Enterprise Readiness
Architectural decisions implemented to scale the platform:
- Decoupled Microservice Sync: High availability ensures the booking API and local billing terminals remain active even during cloud outages.
- Transactional Integrity: Implements atomic writes to the central database ledger.
- API Authorization Checksums: Webhook payloads signed with SHA-256 HMAC for zero trust communication.
Part 3: Customer Portal & Account Claiming
The Customer Portal offers guests a personal self-service space to manage bookings and customize their stay options, enhancing overall satisfaction and reducing manual reception desk queries.
SMS OTP Account Activation Flow
A crucial design aspect of this system handles customers who originally booked offline at the front desk or via phone (meaning they exist in the core DB but never registered an online account):
- Database Lookup: The customer types in their registered phone number or email address on the online registration portal.
- OTP Dispatch: The system queries the customer database, triggers a secure SMS OTP to the matching verified phone number, and sends a backup link to their email address.
- Account Linking & Completion: Upon entering the correct OTP, the guest completes their credentials (password, preferences) and links their online profile to all historical booking data recorded offline by the Laya Billing System (v3).
Protected Accounts
Secure user registration, password hashing (bcrypt), and account validation routines.
Booking History
Full log of completed, active, and cancelled bookings with detailed receipts.
Invoice Downloads
Download system-generated PDF statements and invoices instantly.
Part 4: Administration Panel & Analytics
The Administration Panel allows branch managers, front-office personnel, and system admins to oversee reservations, coordinate inventory parameters, and analyze branch metrics.
Executive Analytics Dashboard
Displays real-time occupancy rates, revenue metrics by property, and forecasting trends via responsive visual charts.
Dynamic Room Allocation Matrix
Drag-and-drop calendar view to coordinate room status, adjust physical check-ins/check-outs, and assign guest suites.
Role-Based Access Control (RBAC)
Separates duties: Front-office staff handles bookings, managers adjust rate structures, and system engineers manage network variables.
Part 5: Interaction Flow with Layabill System v4 (Web)
The integration between the Laya Booking Engine (Web) and the unreleased Laya Billing System Version 4 (Web) represents a unified digital operations landscape. Every online event automatically syncs with administrative POS units and database tables.
Automated Messaging & Notifications Stack
To ensure real-time user notification and transparent booking states, the system binds two notification modules:
- Transactional SMS System: Fires instant booking receipts, check-in confirmations, security OTPs, and checkout statements directly to the guest's mobile device via API gateway.
- Transactional Email System: Dispatches rich HTML emails containing reservation vouchers, PDF receipts, and self-service portal recovery details.
Online Booking to Billing Synchronized Flow
Guest Books Online
Selects dates on layahotels.lk
Webhook / Event Trigger
Transmits REST payload securely
Layabill v4 Action
Locks physical room, sets invoice state
Step-by-Step System Operations Flow:
PENDING_CHECKIN, and reserves the room number across the booking platform schema.
Academic Deliverables
Specification Details
- Specification Version v3 (Extended)
- Academic Degree BIT (External) UOM
- Release Status Unlaunched Academic Project
- Billing Sync Target Layabill v4 (Web)
- Concurrency Control 10-Min Pessimistic Lock