✦ Hotel Experience Management Platform

Your guests deserve
extraordinary experiences

A complete booking platform for hotel activities — from sunset sailing to cooking classes. Stripe payments, QR check-in, email confirmations and a full admin dashboard, all in one.

Open Admin Dashboard → Explore API
Activities supported
Stripe
Native payments
QR
Staff check-in app
API
REST-first architecture
Platform capabilities

Everything your hotel needs,
nothing it doesn't

Built for single-tenant hotel deployments. One codebase, one hotel, zero overhead.

🛒

End-to-end booking flow

Guests browse activities, select a date and time slot, fill their details and pay via Stripe — all in under 2 minutes. Instant email confirmation with QR code and .ics calendar attachment.

💳

Native Stripe payments

Real PaymentIntents with webhook processing, automatic refunds on cancellation, retry logic for failed payments and full idempotency. Test and live keys managed from the admin panel.

📱

QR check-in app

Staff scan QR codes at the activity meeting point. Offline-capable with batch sync. Works on any phone without installing anything — just a browser.

🗓️

Flexible availability

Admin sets slots directly — specific dates, times and capacities per slot. No recurring rule complexity. Generate bulk slots by day-of-week or create them one by one.

📧

Branded transactional emails

Confirmation, cancellation and reminder emails with hotel branding pulled live from the database. SMTP settings configurable from admin. 4-hour opt-in reminders via cron.

📊

Reports & analytics

Revenue by period, top activities, booking status breakdown, Stripe vs cash split — all built-in without third-party analytics tools. Filterable by custom date range.

👥

Two-role staff access

Admin has full control — pricing, settings, financials, reports. Front office can manage bookings, activities and categories but cannot touch sensitive settings or revenue data.

🔐

My Bookings OTP flow

Guests access their bookings via a one-time password sent to their email — no account needed. Rate-limited, email-enumeration-proof and token-expiry managed automatically.

⚙️

Brand & settings from admin

Colors, fonts, hero image, welcome text, SMTP, Stripe keys, cancellation windows, reminder hours — all configurable from one admin settings page. No deployments needed.

From browsing to check-in
in four simple steps

A frictionless experience for your guests, full visibility for your team.

1

Browse & select

Guests explore published activities on the Next.js portal — filtered by category, price or date. Featured activities surface at the top.

2

Choose a slot & book

Pick a date and time, select the number of adults, children and babies. The live price updates automatically based on activity pricing rules.

3

Stripe payment

Secure Stripe Payment Element — card, Apple Pay, Google Pay. The slot is held immediately on booking creation and released if payment isn't completed within 30 minutes.

4

Confirmation & check-in

Instant confirmation email with QR code and calendar invite. Staff scan the QR at the meeting point to mark attendance in real time.

Technology

Modern stack,
sensible choices

Built for shared hosting and VPS environments — no Redis, no Horizon, no Forge required. Just PHP, MySQL and a cron job.

Backend

Laravel 12 (PHP 8.3+) Filament v5 Admin MySQL 8.0+ Laravel Sanctum Stripe PHP SDK Database Queue Spatie Permissions

Frontend

Next.js 16 (App Router) React 19 TypeScript 5 Tailwind CSS 4 Stripe Elements

Ready to go live?

Run the seeder, add your Stripe keys in settings and point your domain. That's it.

Open Admin Dashboard → API Status