GAPE: aligned web bookings and mobile operations
Integrated case: an admin web surface and a field PWA sharing the same database.
Client problem
Overbooking, manual coordination between admin and beach staff, and double data entry that did not always match.
Why PostgreSQL (via Supabase) instead of only spreadsheets
Supabase is used as a managed layer on PostgreSQL: server rules, auth, and real time so web and PWA read and write the same booking state without duplicating logic in the client.
Why a PWA
Staff needed fast mobile access, usable sessions in the field, and updates without app store friction.
Why WhatsApp Business API
Customers already confirm on WhatsApp: sending structured booking details reduces friction and miscommunication.
Web ↔ mobile flow
Screenshots: admin web (left) and PWA (right); the same booking appears on both after sync.
Concrete learnings
- Design data contracts for two clients (admin web + PWA) from day one.
- Prioritize idempotent booking actions to avoid double charges or duplicates.
- Test on real 3G before assuming offline mode “just works”.