The client
Boat tours are one of the busiest tourism activities in Mauritius, and most operators are small teams. Bookings come in from walk-ins, hotels and partners, online travel agencies and direct messages, and are usually tracked in chat threads and notebooks.
The problem
When bookings live in WhatsApp, double-bookings, missing passenger details and crew mix-ups are routine, and the owner has no clear view of the day’s trips or revenue.
Any replacement had to work for staff on a boat with weak signal, and customers could not be asked to install an app just to book a trip.
What they needed
- Customers book through a shared web link, with no app to install
- Bookings from direct, walk-in, partner and online travel agency sources in one calendar
- Boats, activities, add-ons, taxes and pricing managed by the operator
- Crew roles, schedules and trip assignment, with a separate staff login
- Passenger check-in that still works offline at sea
- Several operators on the same platform, each seeing only their own data
What we built
We built a native iOS and Android staff app in React Native, a web portal for operators, a super-admin console for managing companies and subscriptions, and public booking pages that customers open from a link.
The backend runs on Firebase: authentication with Google and Apple sign-in, Firestore for bookings and fleet data, push notifications, and scheduled Cloud Functions that send morning and evening reports and remind passengers 24 hours and 6 hours before departure, all timed to Mauritius time.
Every record belongs to a company, so each operator sees only their own boats, crew and bookings. Staff sign in with an access code set by their operator.
Delivered features
- Online booking link and public availability calendar
- Booking calendar with blocked dates and time-slot overlap checks
- Boats, boat types, activities, add-on services and taxes
- Crew roles, crew schedule and trip assignment
- QR code passenger check-in with the phone camera
- PDF vouchers and receipts
- Trip postponement with reasons
- 24h and 6h passenger reminders, morning and evening reports
- Revenue view and fuel log
- Offline mode for check-ins with poor signal
- English, French and Greek interface
- In-app subscriptions for operators
Challenges we solved
Working without signal
Check-ins happen at the jetty and on the water. The app keeps working offline and syncs when the connection returns, with a visible offline badge so staff know what state they are in.
No double-bookings
Trips of different lengths overlap in complicated ways. Time-slot validation checks every new booking against the boat’s existing trips before it is saved.
One platform, many operators
Company-scoped data, per-company staff access codes and a super-admin console let many operators share the platform without ever seeing each other’s data.
The result
Zenith Boat gives Mauritian boat operators a single place for bookings, fleet, crew and check-in, on their phones and on the web, with customers booking from a simple link. During early access in Mauritius the app is free for operators.