SalesThumb already syncs one-way to Google Calendar out of the box. The two-way sync — also pulling personal blocks back into your shop calendar — needs a few extra clicks. Here's the full setup.
What two-way sync does
- Outbound: every booked appointment shows up on the assigned tech's Google Calendar within ~30 seconds.
- Inbound: any block on the tech's Google Calendar (dentist appointment, lunch meeting, vacation) shows up as an unavailable slot on the SalesThumb scheduler. New bookings can't land in that slot.
That second direction is the one that prevents double-bookings.
Step 1 — Connect Google Calendar at the org level
Settings → Integrations → Google Calendar → Connect. OAuth into the org's Google account. This connection grants read+write access to one calendar (the "shop calendar").
If you only want one-way sync (appointments out, not blocks in), stop here. Settings → Calendar → enable outbound sync.
Step 2 — Connect each tech's personal calendar
For two-way, each tech connects their own Google account at Settings → My profile → Calendar sync. They OAuth into Google personally. SalesThumb only reads "busy/free" availability — never the event titles or details (privacy).
If a tech doesn't connect their personal calendar, they only get outbound sync. Their personal blocks won't apply to SalesThumb scheduling.
Step 3 — Configure block translation
Settings → Calendar → Block rules. Decide how to translate Google Calendar blocks:
- All-day events — treated as full-day unavailable. Useful for vacation.
- Timed events — treated as unavailable for that exact window.
- Tentative events — by default we ignore these. Some shops want them respected; check the box if so.
- Events shorter than 15 min — by default ignored. Useful so "5 min coffee break" doesn't block scheduling.
Step 4 — Conflict handling
What happens if a customer tries to book a slot that a tech just blocked on their Google Calendar 30 seconds ago?
- Real-time check: the public booking page revalidates availability at the moment the customer hits "Confirm". If the slot is now blocked, we surface "Sorry, that slot was just taken. Please pick another." with the next 3 available slots.
- Already-booked appointments: if a tech's calendar blocks a slot AFTER the appointment is booked, you get an alert in the dashboard. Resolve manually — reassign to another tech or call the customer to reschedule.
Step 5 — Test the round trip
Pick a tech. On their personal Google Calendar, block "Doctor 2:00-3:00 PM tomorrow". Within 60 seconds, SalesThumb scheduler should show that slot as unavailable. Try to book a customer into it — the booking page should say "no availability". Then delete the block from Google Calendar; the slot becomes available again.
If the round trip works, you're done.
Troubleshooting
- Sync delay >2 minutes — Google sometimes rate-limits push notifications. Force a refresh via Settings → Calendar → Force resync.
- Tech connected but blocks don't apply — check Settings → My profile → Calendar sync. Their OAuth may have expired. Re-auth.
- Wrong calendar showing — if a tech has multiple Google Calendars (personal, work, family), they pick which one to sync at connect time. They can change this at Settings → My profile → Calendar sync → Calendar selector.