Full customer profile — beyond what the sheet shows
The customer sheet (opened from a row tap on the Customers page) handles the 80% case: quick read, send a message, add a booking. This page is for the remaining 20% that needs full scroll height: long booking histories, plan changes, payment methods, the audit log.
- Profile — name, contact, plan tier, member since, avatar, customer ID; editable inline.
- Plan + hours — current plan, hours used this period, recent overages, add-ons, scheduled renewals. Operator can change plan or comp hours from here.
- Booking history — every booking ever, with filters (this year / all time / by bay / by status). Click-through to the individual booking detail.
- Payments — every charge, refund, credit, payment method on file. Add/remove cards, retry a failed charge, issue a refund.
- Notes + Caddie suggestions — full note thread (operator + Caddie + customer-facing notifications), with timestamps and authors.
- Marketing — opt-in status, last email open, last SMS sent.
- Audit log — every state change (plan switches, comps, refunds) with timestamp + actor. Required for disputes + compliance.
- Danger zone — deactivate, merge into another profile, request data export, delete (per privacy policy).
Backend wiring pending. GET /operator/customers/<id> in the live app; same shape regardless of how the operator landed here.