Calendly booking → Salesforce status update, logged task + Slack alert
Booked meetings land on the Salesforce record within a minute, with a task and an alert.
A booked call should change the CRM, not just the calendar. When someone books on the Calendly event types you choose, the workflow finds the matching Lead or Contact in Salesforce by email. The status moves to Meeting Booked, a Task records the time and the invitee's answers, and the record owner hears about it in Slack. Bookings with no CRM match go to Slack for a person to attach instead of creating duplicates.
How it works
- Ca
Trigger
New booking on a chosen event type (invitee.created webhook)
Calendly
- if
Step 1
Keep bookings on the sales event types only
The webhook carries the event type URI, and the first node keeps the ones you list at setup, such as Discovery call, and drops everything else.
- SF
Step 2
Find the Lead or Contact by the invitee's email
A SOQL query checks Leads first, then Contacts, on the invitee's email; the match, or the absence of one, decides which branch runs next.
- if
Step 3
Branch on Lead, Contact or no match
Leads go to the status update, Contacts go to their open Opportunity if one exists, and an unmatched booking skips to the Slack step with a no-record flag.
- SF
Step 4
Set the status or stage to Meeting Booked
For a Lead the Status field is set to Meeting Booked; for a Contact the most recent open Opportunity has its StageName set to the stage you map, and nothing is written if neither exists.
- SF
Step 5
Log a Task on the record with the meeting details
Its subject names the event type, its due date is the meeting date, and its description holds the meeting time, the Calendly link and the invitee's answers to your booking questions.
- S
Step 6
Alert the record owner in Slack
The owner's email is matched to a Slack member through the mapping, and the message carries the invitee's name, the meeting time and a link to the record; an unmatched booking carries the invitee's details instead so someone can attach them.
What changes once it runs
- The Salesforce record shows Meeting Booked within a minute of the booking, with no rep involved.
- A Task on the record holds the meeting time and the invitee's answers, where the next person looks.
- Owners are told in Slack, with a link straight to the record.
- Unmatched bookings are surfaced for a human rather than turned into duplicate Leads.
- Only the event types you name trigger it; internal and support bookings pass through untouched.
What you get
- The n8n workflow export with the three-way branch already built
- Make and Zapier versions of the same flow, with the branch as a Router and as Paths respectively
- Setup guide covering the Calendly webhook, the Salesforce connected app and the status mapping
- Field-mapping sheet: which Calendly answers land in which Task and Lead fields
- Recorded walkthrough of a test booking moving a Lead to Meeting Booked
Before you start
- Calendly Standard plan or above (webhooks are not on the free plan) and a personal access token for the n8n Calendly Trigger
- Salesforce Enterprise, Unlimited or Developer edition; Professional edition needs the API access add-on
- Connected App or integration user in Salesforce with rights to read and edit Leads, Opportunities and Tasks
- Lead Status and Opportunity Stage values named Meeting Booked, or the names you want mapped instead
- Slack with an app that can post to a channel or send direct messages
- A short mapping of Salesforce owner emails to Slack member IDs, filled in once during setup
Built for
Questions before you buy
- What happens when the invitee cancels?
- A second, smaller workflow in the package listens for invitee.canceled. It marks the Task completed with a cancelled note and tells the owner in Slack. The status is left for the owner to decide, because a cancelled call is not always a lost lead.
- Should it create a Lead when nobody matches?
- It can, and the setup guide shows the one switch that turns that on. The shipped default posts unmatched bookings to Slack instead, because an unmatched booking is often an existing customer using a second email address, and a new Lead would be a duplicate.
- Can it update a Contact without an Opportunity?
- Yes. When a Contact matches but has no open Opportunity, the Task is still logged on the Contact and the owner is still alerted. Nothing is written to a stage field that does not exist.
- Does it run on Make or Zapier?
- Both versions ship in the package. Calendly, Salesforce and Slack have native modules on each platform, and the branch is a Router in Make and Paths in Zapier. Paths need a Zapier Professional plan or above.
Nearby on the shelf
Whole catalog- HQBCUSMade to order
HubSpot Closed Won → QuickBooks customer, ClickUp onboarding + Slack #wins
Won deals hand themselves to finance and onboarding within a minute of the stage change.
Sales & CRM hygiene$199 - PSMade to order
Pipedrive stale deals → Slack nudge to the owner + follow-up activity
Idle deals get a follow-up activity and a Slack nudge every weekday morning.
Sales & CRM hygiene$99 - SFGSMade to order
Salesforce opportunity changes → live pipeline sheet in Google Sheets
One Google Sheet that matches Salesforce, row for row, without anyone exporting.
Sales & CRM hygiene$49
