StackeyLabs

Case Study · Hospitality

Hotel & Hospitality Management System

An internal operations platform covering room reservations, food service ordering, staff roles, and a full audit trail.

Industry
Hospitality
Timeline
2025
What we did
Enterprise application development · Role-based access control · Audit & compliance logging

The Challenge

What the client was up against

Front desk, kitchen, and management each used a different tool, and none of them talked to each other. A room booked at reception wasn't visible to the kitchen. Worse, when something went wrong — a comped meal, a modified booking — there was no reliable record of who changed what, which made both internal accountability and external audits painful.

Our Approach

How we solved it

  1. Permissions before features

    We designed the role model first — front desk, kitchen, management, admin — and enforced it at the API layer rather than in the UI. Every endpoint checks the caller's role before it does anything, so an unauthorised action fails even if someone reaches the endpoint directly.

  2. One reservation, visible everywhere

    Reservations, room state, and food orders became a single connected model. When reception books a room, the kitchen sees it. When a guest orders room service, it attaches to the stay and lands on the folio automatically.

  3. Log it or it didn't happen

    Every state change writes an immutable activity record: who, what, when, and the before-and-after values. Management can answer 'who modified this booking' in seconds instead of reconstructing it from memory.

What We Built

Inside the solution

  • Room reservation management with live availability
  • Food service ordering tied to guest stays and folios
  • Role-based access control enforced server-side
  • Immutable activity log with before/after values on every change
  • Management reporting across occupancy and food service
  • Compliance-ready audit export

Technology

  • React
  • TypeScript
  • NestJS
  • PostgreSQL
  • Prisma

The Outcome

Consolidated reservations, food service, and staff permissions into one auditable system.

1
System replacing three disconnected tools
Full
Audit trail on every state-changing action
Seconds
To answer 'who changed this booking?'

Enforce permissions at the API, not in the UI. A hidden button is a suggestion; a rejected request is a rule.

Facing a Similar Problem?

Tell us what you're working on and we'll tell you how we'd approach it — no obligation.

Contact Us