Tutorial - Using Zapier, how to connect Calendly with Salesforce and Monday

Illustration by Insight Bundle in collaboration with OpenAI Dall·E

Introduction

This tutorial shows step by step how to integrate Calendly to Salesforce, Salesforce with Monday and Outlook. We will use the official Calendly Salesforce Package, and Zapier’s no-code solution.

Image: Architecture of project, flowchart of information.

Table of Contents

Summary

In order to do the integration, the steps we will follow are, first set up Calendly meetings so when someone books an appointment through Calendly a lead in Salesforce. Next, on Salesforce we will configure Einstein Activity Capture (a tool that will allow us to connect our Salesforce events to our email calendar) and follow the procedure to connect our e-mail account to Einstein.

On Monday, we want to sync our Salesforce leads with Monday, this will be done by creating a board to store the leads.

In order to do the integration between Salesforce and Monday we use Zapier, by creating 3 zaps: One to create a new task on the Monday board each time a new lead is created on Salesforce. And two other programs to update the information on Monday directly from Salesforce and vice-versa.

Demo Video

Video: Demo showcasing the integration done between Salesforce andMonday using Zapier

Software used

The integration is done using the following software

Calendly

Used to schedule meetings, you can integrate it to your own website or you can send the link to prospective clients. For this project you need Calendly Profesional.

Salesforce

Cloud-based CRM ( Customer Relationship Management) that will help us to track all of our Calendly leads.

Outlook

Known and used for emails in most business, part of Microsoft Office tools.

Monday

Versatile tool that helps you in project management. Will help us follow-up and do proper project management for our clients.

Zapier

Allows quick no-code automation between applications, helps integrate workflows, for a no-code solution we are using it.

Pricing Plans Used

For this project, it is necessary to use Monday Standard Plan or above, to make integrations and automations with other platforms. In this case, integrate with Salesforce and automate the creation of tasks.

Image: Pricing Plans for Monday

For Zapier we have to use the Starter plan or above, this is to make a connection with Salesforce. As it is considered a Premium app.  The starter plan has a limitation of 3 premium apps, Professional and the other paid plans have unlimited premium app connections. 

Image: Zapier Pricing Plans

For Calendly we use the Teams Version,  Teams and Enterprise are the only plans that will allow us to connect to Salesforce. You can choose which one of both to use. For demonstration purposes, we will use Teams. 

Image: Calendly Pricing Plans

For Salesforce we used the Developer Edition. For Salesforce we don’t have any limitations on this project, so you can use the Edition of your preference. We used Developer Edition, as this was our preference. 

Calendly Integration

The first step is to connect Calendly and Salesforce, for Calendly they already include a quick integration, this way any lead that we get is sent to Salesforce from Calendly.

Setting up Salesforce integration

We will establish the direct integration that Calendly offers with Salesforce.

a) In Calendly go to the tab “Integrations”, select “Sales and CRMs”, and select Salesforce. 

Image: Integrations Menu from Calendly

b) It will now request permission to access Salesforce. If you haven't already signed it, it will prompt you to log in with your credentials.

c) After signing in, click the "Approve" button.

d) Once you've approved Calendly's authorization, make sure the integration's status is "Good!" when done.

Image: Connection with Salesforce done

Personalizing our Calendly Invitation Link 

a) Click the settings icon and then "Edit" to change the functionality of the link.

Image: Editing button for our invitation link

b) Select "Invitee Questions," where you may add questions to elicit information from the user. This information will be saved as a Lead in Salesforce later.

c) Press the "Get it now" button.

Image: Invitation link settings

d) Save your Calendly invitation link because we will be needing it for the testing phase. This link is located on your home page. 

Image: Calendly Invitation Link

e) If the previous steps were followed correctly, Salesforce will have generated the 'CreateEvent Template' Flow, which may be changed, saved, and deployed as a new Flow. A new Meeting in Calendly is designated as an Event for the Lead creation on Salesforce with the help of this flow.

Image: CreateEvent Template Flow located in Salesforce

Now that we have successfully integrated Calendly with Salesforce, we can proceed to personalize our Calendly invitation link.

Monday Configuration

Now that we have Calendly synced with Salesforce and Salesforce Sync with Outlook, it’s time to sync Monday and Salesforce, remember to check the pricing plan needed at the top section in order to sync Monday and Salesforce.

On Monday, tasks will be created directly from the leads we created on Salesforce. One lead is created on Salesforce, as result, a new task will be added to the board on Monday. This step will be done on Zapier.

Zapier requires the ID number of the Board to which we want to add the new Leads to.

a) Make sure you copy this number and keep it as a reference for later steps.

Image: Locating the board ID on Monday

b) To let Zapier access our Monday account, we need to provide our API Token             

  •      Hover over the profile icon and select the settings tag.

c)     Go to the API tag, which will show us our Personal API Token. We will need this when we make the integration with Salesforce using Zapier. Save this for later.   

Image: Personal API Token for Monday

d) Create a custom fields on Monday to store the Salesforces ID’s information to use on Zapier. As shown below the custom fields we had to add are the ones that have “ID” labeled on them.  

Image: Board created on Monday

Salesforce Configuration

Now that we have Calendly setup, all the meetings booked through Calendly will go to our Salesforce. It’s time to configure Salesforce and Outlook so they are sync, that way a meeting in Calendly is also shown in your Outlook calendar. To do this we will be using Einstein Activity Capture.

Sync Events between Salesforce and Outlook Email Calendar using Einstein Activity Capture 

a) Before we start configuring Einstein Activity Capture, make sure that the users you wish to add have permission to access Einstein Activity Capture.   Head over to Setup, in the Quick Find Box search and click “Permissions Sets” and search for “Standard Einstein Activity Capture”, then click on its name. 

Image: Assigning Permission Sets for Einstein

b)·  Select the “Manage Assignments” tab, once it opens, then select “Add Assignments”.  

Image: Managing Assignments Button

c) Select the people we want to grant Einstein to in each box, then click the “Assign” button. This will allow you to use the email calendar feature. 

Image: Assigning Einstein Activity Capture permissions

Salesforce- Connect Salesforce to Exchange or Google 

You must link Salesforce and your Exchange or Google application before Einstein Activity Capture may access users' email and calendar data. The methods for connecting and authenticating people differ depending on the email and calendar program you select to use.

For this tutorial, we are connecting Einstein Activity Capture with User-Level Authentication. 

a) Type Einstein Activity Capture in the Quick Find box under Setup, and then click Settings. If this is your first time configuring Einstein Activity Capture, the setup flow will walk you through the processes. If you've previously set up Einstein Activity Capture and want to change the authentication method, reset it.

Image: Getting started with Einstein Activity Capture

b) Select the email and calendar application that your company uses. 

Image: Selecting our Email and Calendar Service

c) If you decide to choose Microsoft Office 365 or Microsoft Exchange as your authentication method, pick the user-level option. The user-level choice is the default if you chose Google.

Image: Choosing an Authentication Method

d) Write a name for the configuration we are going to create and what it does 

Image: Naming our configuration

e) Select the Sync Settings you want to be enabled or disabled 

Image: Enabling Sync Settings buttons

f) Then, the Advanced Settings menu will show, here you can personalize even further what filters and conditions each data flow will have, this settings menu lets you select what works out best for you. 

Image: Advanced Settings for the sync

g) Finally, you may add users or profiles to the Einstein Activity Capture Feature; only those who have their email calendar synchronized with Salesforce will have their email calendar synced.

  • Ensure that your users have access to Einstein Activity Capture; otherwise, they will not show on the menu.

  • After we've selected the users, click save to save the configurations.

Image: Adding Users and Profiles to Einstein

h) Whenever you add an email address or domain to the Excluded Addresses list, emails and events linked with the individual or company are not included in the activity timeline of related Salesforce Records.

Image: Exclude Addresses section

i) In this step, you can define how users share their activities, sharing settings only apply to activities that are automatically added to the activity timeline of related Salesforce records. 

Image: Setting Activity Sharing

j) Once we finish these steps, the configuration will be created and therefore, will be active. 

Image: Configurations saved on Einstein

Following this, consider the following: If you utilize a Microsoft Exchange on-premises server, ensure that network access is granted. For the sync to operate, the email address on your user record must be linked to Salesforce. To build another configuration for Einstein Activity Capture, select "New Configuration" and follow the same steps as previously.

End User Setup for Einstein 

For this part of the tutorial, we will be connecting using User-Level Authentication with Office 365 

a)     We have to connect an account to Einstein. To do this, navigate to your profile settings, and in the Quick Find Box search for “Email and Calendar Accounts”. 

b)     It will ask you to log in with the credentials of the account you wish to connect 

Image: Selecting an account to connect

c)      Once you log in to the selected account, the connection will already be established.

Image: Connected accounts section

After following all the previous sets of steps of each section, the Salesforce configuration will be done. We can now, create and configure our “Zaps” (automated workflow that connects our apps and services together) in Zapier.

Zapier Configuration

With the information from Monday we should be able to integrate Zapier and Salesforce, since we are using Zapier we need to create and cofigure 3 zaps: 

1.     New Record in Salesforce & Monday 

Whenever a new record is created on Salesforce, Zapier will detect it and automatically create an item on Monday with the information of the lead. 

2.     Update Monday from Salesforce 

When we modify information about the lead on Salesforce, Zapier will detect a change and trigger the action of updating it according to the changes. In other words, we can update Monday automatically when we make changes on Salesforce. (This update takes 15 minutes to show) 

3.     Update Salesforce from Monday  

Same functionality as the second zap, but this time when we modify Monday, the information on Salesforce will be automatically updated. (This update takes 15 minutes to show) 

Image: Active Zaps on Zapier

New Record in Salesforce 

When a new record is generated on Salesforce, Zapier will recognize it and create an item with the lead's details on Monday.

a) Open Zapier and select “Create Zap”. In the first phase of this zap, we choose a trigger (the action that will start the zap, in this example, when an Event is generated) and the app from which this action is originating (Salesforce). We specify which Salesforce account this is occuring in.

Image: Selecting the trigger for the Zap

b) The Action that the trigger will do is selected in the second phase of the zap. "Make an item on Monday.com." We choose the App and the account, the same as we did in the prior one.

In the Step Details box, we provide the board where the Item should be generated. We put up the stages just procedure as indicated below, with the information targeted on Salesforce on Monday.

Image: Creating an Item in Monday after the trigger

c) As a result, the leads created in Salesforce will be followed up by creating an item on the desired board on Monday. 

Update Monday from Salesforce

Now that any leads created will be displayed in Monday and Salesforce, we must update Monday in the event that a change is displayed in Salesforce.

The zap will be triggered when a modification is made to the lead information on Salesforce; once made, the changes will be visible on Monday.

a) Select the trigger "Updated Record in Salesforce," then enter the app, the event, and the account associated with your Salesforce Environment.

Image: Selecting a trigger for the zap

Image: Getting the Item by Column Value

b)     A conditional is used in this stage to prevent a loop from occurring. The application will only run if the updated date differs from the date the record was created.

Image: Conditional to avoid a loop

c) The purpose of this step is to search the column value using an ID supplied by Salesforce for that specific field. You may obtain these ids by following the steps outlined in the Salesforce section.

Images: Changing Multiple Columns Value

3.     Update Salesforce from Monday 

When we activate the Zap, any changes we make to the Monday Event will be reflected on Salesforce and Outlook Calendar.

a.  Select the trigger “Any Column Value Changed in Board in Monday.com”, the app is coming from, the account, and the Event. 

Image: Selecting the trigger for the zap

b. The process will only continue if a field isn’t locked. If we want the flow to continue, we will have to remove it manually. This is to avoid a loop. 

Image: Conditional to avoid a loop in the program

c. In this step, we will target the fields on Monday to make them appear on the corresponding Salesforce fields. In other words, the data we changed on Monday will now be available on Salesforce.

Image: The action that will be done after the conditional

d.    Change Multiple Columns Value  

  • Once the update has been done, it will turn the field to “Locked”. To avoid a loop. 

Image: Updating the values of the columns on Monday

Now, as we finally finished this zap. Any information we modify on Salesforce will now be updated on Monday.  

Conclusion

A more involved project would consider multiple sources of appointments, with a similar approach of centralizing information through Salesforce and automating information synchronization availability with AppExchange extensions or with custom Apex development. Reach out to us if the information provided in this tutorial is useful for your project but you have some specific question regarding implementation. We are able to restructure your Salesforce based workplace with different appointment or task management tools with solutions tailored for your specific industry/workplace needs.

Previous
Previous

Tutorial - How to connect your Mailchimp account with Salesforce Marketing Cloud Account Engagement

Next
Next

Tutorial – Available Icon for Shopify Product Page with Liquid & CSS