feat: Google Calendar sync for client bookings #10

Open
opened 2026-06-23 14:11:53 +00:00 by jmiller · 0 comments
Owner

Summary

Sync salon bookings to Google Calendar for both stylists and clients.

Requirements

  • Stylist calendar sync — push bookings to stylist's Google Calendar with client name, service, duration
  • Client confirmation — send Google Calendar invite to client email on booking
  • Two-way sync — block slots in MokoSuite when stylist adds personal events in Google Calendar
  • Google Meet — option to add Google Meet link for virtual consultations

Technical Notes

  • Reuse CRM's OAuthHelper and GoogleCalendarHelper patterns (same OAuth flow)
  • CRM already has Google Calendar webhook infrastructure (#42)
  • BookingHelper creates calendar events on book(), cancels on status change
  • Use class_exists() to check for CRM — if present, use shared OAuth; if not, standalone OAuth config
## Summary Sync salon bookings to Google Calendar for both stylists and clients. ## Requirements - **Stylist calendar sync** — push bookings to stylist's Google Calendar with client name, service, duration - **Client confirmation** — send Google Calendar invite to client email on booking - **Two-way sync** — block slots in MokoSuite when stylist adds personal events in Google Calendar - **Google Meet** — option to add Google Meet link for virtual consultations ## Technical Notes - Reuse CRM's OAuthHelper and GoogleCalendarHelper patterns (same OAuth flow) - CRM already has Google Calendar webhook infrastructure (#42) - BookingHelper creates calendar events on `book()`, cancels on status change - Use `class_exists()` to check for CRM — if present, use shared OAuth; if not, standalone OAuth config
Sign in to join this conversation.