Booking calendar integration — Cal.com, Calendly and Google Calendar
Let customers pick a time slot from the chat without you lifting a finger. Voxinly plugs into Cal.com, Calendly and Google Calendar so quoted jobs go straight onto the diary.
The fastest way to lose a booking is the phone tag back-and-forth. 'Are you free Tuesday?' / 'Yes, what time?' / 'Morning?' / 'Sorry, got a school run' / 'Wednesday then?'. Each exchange takes hours when both parties are busy. Most customers give up by the third message.
Calendar integration kills that loop. Once Voxinly knows the job, the postcode and your availability, it offers the customer a slot picker inside the chat. They tap a time, it's booked, the diary updates, you and the customer both get a confirmation. Total elapsed time: 15 seconds.
Which calendar should you use?
| Tool | Best for | Cost |
|---|---|---|
| Cal.com | Tradesmen who want full control + open source | Free tier covers most trades; paid £12/mo |
| Calendly | Tradesmen whose customers already know Calendly | Free tier limited; paid £8/mo |
| Google Calendar | Trades already on Google Workspace | Free with Workspace |
If you don't already use a booking tool, start with Cal.com. It's free, owns your data, and handles team scheduling well. Calendly is fine if you already have it. Google Calendar direct is only suitable if you're a solo tradesman with simple needs.
Cal.com setup
Create a Cal.com account
Sign up at cal.com (free). Create an 'event type' for each kind of job you'll book — e.g. 'Boiler service (90 min)', 'Quote visit (30 min)', 'Emergency callout (asap)'. Set buffer time between slots if you need driving time.
Connect to Voxinly
In Voxinly, go to /admin/integrations → Calendar → Cal.com → Connect. Authorise. Map each Cal.com event type to a Voxinly job category.
Test the chat flow
Open your widget in a private window. Ask for a boiler service. When Voxinly has the postcode and job confirmed, it should offer 'pick a time' — and show the next 3 available slots from Cal.com. Tap one, confirm. Check Cal.com — the booking is there.
Calendly setup
Connect via OAuth
In /admin/integrations → Calendar → Calendly → Connect. Authorise. Pick which Calendly event types Voxinly can offer.
Calendly has more brand recognition with UK customers — they've used it for dentist appointments, hairdressers, etc. — which can reduce the friction of clicking the slot picker.
Google Calendar direct setup
Connect via OAuth
In /admin/integrations → Calendar → Google Calendar → Connect. Choose which calendar(s) to read availability from. Voxinly looks at your real diary blocks and offers slots in the gaps.
How the chatbot offers slots
Once the chat reaches a quotable point, Voxinly says something like: 'Brilliant — I can book you in for that. Here are our next slots:' and shows three to five buttons:
- Tomorrow morning (9-11am)
- Tomorrow afternoon (2-4pm)
- Wednesday morning (9-11am)
- More times…
The customer taps one. Voxinly confirms, asks for any final details (access notes, gate codes, the dog), creates the booking in your calendar, sends a confirmation email + adds to the customer's calendar via .ics, and pings your team. Total elapsed time, start to finish, including the qualifying chat: under 4 minutes.
Buffer time and travel
Most trade bookings need buffer time for driving between jobs. Set this in your calendar tool, not in Voxinly. Cal.com calls it 'buffer time'; Calendly calls it 'minimum scheduling notice'; Google Calendar requires you to block driving as events. 15-30 minutes between jobs is typical for urban trades; 30-60 minutes for rural.
FAQ
Can the customer reschedule via the chat later?
Yes — they can return to the widget anytime and say 'I need to change Tuesday'. Voxinly recognises them (if they have a cookie or shared email), shows the booking, and offers reschedule.
What about emergency / same-day callouts?
Configure an 'urgent' Cal.com event type that only allows same-day slots and goes straight to SMS-confirm with the on-call tradesman. Voxinly routes urgency-flagged chats to that event type.
Will the customer see my full week?
No — they only see the available slots you've allowed for that event type. Your busy blocks stay private.
What if I want a phone-call confirmation before locking it in?
Set the event type to 'pending until confirmed'. Voxinly tells the customer 'we'll confirm shortly' and pings you to approve before the slot is locked.
