CRM Appointment Scheduling: Build It So It Doesn’t Lie to You

Booking into a CRM is a data-modelling decision, not plumbing. Search before you create, and design for the cancellation nobody tells you about.

Connecting a booking tool to a CRM sounds like a plumbing job. It isn’t. It’s a data-modelling decision, and the teams who get it wrong end up with a CRM full of duplicate contacts, a pipeline full of deals that were never real, and a sales manager who no longer trusts the numbers.

Here’s how to wire booking into a CRM so that doesn’t happen.

What “CRM integration” should actually mean

Three things, in this order of value:

  1. The person exists in the CRM. Someone booked a call; their name, email and whatever else you asked for at booking are on a contact record.
  2. The meeting is on their timeline. Not in someone’s inbox — on the record, where the next person to open it will see it.
  3. The state is right. The deal moved to the right stage. And critically: if they cancelled, the CRM knows that too.

Most integrations get the first two and quietly fail the third. That failure is the subject of half this page, because it is the one that costs you money.

How Bookafy connects

Two routes, and they suit different teams:

Route Good for Watch out for
Zapier or Make (Pro plan) Teams with no engineer. Point-and-click. Genuinely fine for most businesses. Polling, not real-time — Zapier checks every 15 minutes on its free plan. And no cancellation trigger (below).
The API and webhooks Anyone with engineering capacity, or a Pro+ account with custom API development. It’s a project, not an afternoon. But it’s the only route that handles cancellations properly.

Through Zapier, the events available from Bookafy are New Appointment, New Customer, New Appointment Type and New User, and the actions are Create Appointment and Create Customer. That list is worth reading twice, because of what isn’t on it.

The gap: there is no cancellation or reschedule trigger

Bookafy’s Zapier app has no trigger for a cancelled or rescheduled appointment. Nothing fires. Your automation does not find out.

Play that forward in a CRM, because it’s not theoretical:

Two honest ways to handle it:

  1. Build on the API/webhooks rather than the Zapier polling app, and handle the cancellation event properly. This is the real answer for any team where the pipeline drives decisions.
  2. Don’t let the booking move the deal. Let the booking create the contact and log the meeting — the safe, additive part — and let the rep move the stage after the meeting actually happens. Less elegant. Never lies to you.

Option 2 costs nothing and takes ten minutes. Most teams should start there and graduate to option 1.

The build order that avoids a CRM full of duplicates

This is the single most common wreck, and it comes from one lazy step. When a booking arrives, do not start with “Create Contact”. Start with a search.

  1. Find or create the person, matching on email. Existing customer books a call → their existing record is used. If you skip this, every repeat booking spawns a second “Jane Smith”.
  2. Find or create the company/account, if you’re B2B.
  3. Find or create the deal/opportunity — and only if one should exist. An existing customer booking a support call does not need a new deal in your pipeline. Half the “our pipeline is nonsense” complaints trace back to exactly this.
  4. Create the activity/meeting on the record, with the time, the appointment type, and whatever the customer typed into your booking form.

Search first, create second. That’s the whole trick.

Ask better questions at booking than “name and email”

The booking form is the one moment a prospect will happily give you information, because they’re getting something for it. Custom fields at booking flow into the CRM record. Two or three good questions — company size, what they’re trying to solve, which product — are worth more to a rep than any amount of enrichment tooling.

Don’t overdo it. Every field costs you bookings. Three is usually the ceiling.

Which CRM?

Bookafy has dedicated pages for the ones people actually ask about: Salesforce, HubSpot, Pipedrive and Zoho. One budget note that catches people: Salesforce is a Zapier Premium app, so it requires a paid Zapier plan. HubSpot is not. That difference has decided more than one integration.

What Bookafy will not do

Not available Reality
Routing by lead score or deal size Bookafy routes by skill and round robin. It doesn’t read your CRM before assigning. Qualify before the booking, in the form.
Two-way sync of CRM records Data flows out of Bookafy into the CRM. Editing a contact in the CRM does not update Bookafy.
Real-time events via Zapier Polling, every 15 minutes on Zapier’s free plan. Use webhooks if seconds matter.
Cancellation-aware automations out of the box Stated above, and worth restating: no cancellation trigger. Design for it.
Anything on the Free plan Zapier, Make and the integrations start at Pro ($7/user/month, billed yearly).
Try it on your own calendar.

Bookafy’s Free plan is $0 for one user with unlimited appointments. The 7-day trial of Pro+ needs no credit card.

Start free

Frequently asked questions

How does Bookafy connect to my CRM?

Through Zapier or Make on the Pro plan, or directly through the API and webhooks. Zapier is point-and-click but polls for new data; the API is real-time and is the only route that handles cancellations properly.

Will a cancelled appointment update my CRM?

Not through Zapier — there is no cancellation or reschedule trigger. Either build on the API and webhooks, or let the rep move the deal stage manually so your pipeline never reflects a meeting that did not happen.

How do I avoid duplicate contacts?

Always search before you create. Find-or-create the person by email, then find-or-create the deal, then log the meeting. Starting a Zap with “Create Contact” is what fills a CRM with duplicate records.

Which CRMs are supported?

Salesforce, HubSpot, Pipedrive, Zoho and anything else reachable through Zapier, Make, or the API. Note that Salesforce is a Zapier Premium app and needs a paid Zapier plan; HubSpot does not.

Can Bookafy route bookings based on lead score?

No. Routing is by skill or round robin, and Bookafy does not read your CRM before assigning. Qualify in the booking form instead, using custom fields.

How fast does data reach the CRM?

Through Zapier, as often as Zapier polls — every 15 minutes on its free plan. Through webhooks and the API, effectively immediately.

Related reading


Keep reading

If you are still working out which tool you need, start with the overview: appointment scheduling software — what it does, what it costs, and when you should buy something else.

Also useful: every Bookafy integration, in three honest lists — what is native, what needs Zapier, and what we simply do not do. And the pricing page, where the feature matrix is the real answer to “is that on the free plan”.

Bookafy


"See why +25,000 organizations in 180 countries around the world trust Bookafy!

Feature rich, beautiful and simple. Try it free for 7 days"

Casey Sullivan

Founder

Bookafy



"See why +25,000 organizations in 180 countries around the world trust Bookafy for their online appointment booking app!

Feature rich, beautiful and simple. Try it free for 7 days"

Casey Sullivan

Founder