Booking-sync workflow: Cal.com webhook (self-hosted) + Google Calendar poll #8

Closed
opened 2026-07-16 10:37:37 +02:00 by mivanchenko · 1 comment
Owner

Build/finish the booking-sync n8n workflow so bookings from both delivery styles land in the CRM bookings table:

  • self-hosted Cal.com → webhook → POST /crm/api/bookings
  • Google Calendar appointment schedule → scheduled poll → upsert

Depends on the booking upsert fix (idempotent POST) so re-delivered events don't 500.

Build/finish the `booking-sync` n8n workflow so bookings from both delivery styles land in the CRM `bookings` table: - self-hosted **Cal.com** → webhook → POST `/crm/api/bookings` - **Google Calendar** appointment schedule → scheduled poll → upsert Depends on the booking upsert fix (idempotent POST) so re-delivered events don't 500.
mivanchenko added the n8nbookingenhancement labels 2026-07-16 10:37:37 +02:00
Author
Owner

Closing as already done. Booking-sync is implemented via n8n/booking-sync.json — a single shared Easy!Appointments instance (deploy/booking/) syncs bookings into the CRM. The originally-scoped Tier-B-Cal.com-webhook / Tier-A-Google-Calendar-poll split was superseded by the tier-decoupling (see #2). Reopen only if we move to per-client Cal.com/GCal booking.

Closing as already done. Booking-sync is implemented via `n8n/booking-sync.json` — a single shared Easy!Appointments instance (`deploy/booking/`) syncs bookings into the CRM. The originally-scoped Tier-B-Cal.com-webhook / Tier-A-Google-Calendar-poll split was superseded by the tier-decoupling (see #2). Reopen only if we move to per-client Cal.com/GCal booking.
Sign in to join this conversation.