← Back to home

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.

GAPE flow screenshot (web)
GAPE flow screenshot (PWA)

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”.