FreshSales
Customer Relationship Management
Overview
Freshsales is a widely used Customer Relationship Management (CRM) platform that supports sales, marketing, and support teams by leveraging cloud technology to connect more efficiently with customers, partners, and prospects.
Integrating CleverTap with Freshsales helps you sync CRM data into CleverTap for personalized, event-driven engagement. With this integration, you can:
- Onboard new leads with product tour messages.
- Re-engage lost deals with targeted feature updates.
- Move leads down the funnel with timely nudges.
- Convert high-intent leads with automated follow-ups.
Prerequisites for Integration
The following are the prerequisites for this integration:
- A valid Freshsales account.
- A CleverTap account with a valid Account ID and Passcode.
Integrate Freshsales with CleverTap
To sync data from a Freshsales module (such as Contacts, Accounts, or Deals) to CleverTap, perform the following three major steps:
Create Workflow in Freshsales
Consider a use case where a SaaS business wants to send automated product tour campaigns to new leads created in Freshsales. When a lead is created or updated in Freshsales, the information should be synced to CleverTap, triggering a welcome campaign.
To create a new Freshsales workflow, define which data should be synced as follows:
- Log in to your Freshsales CRM account.
- Go to Admin Settings > Term & Territories and select Workflows.

Create a new workflow in Admin Settings
- Click Create Workflow and select the required Freshsales module (in this example, Contacts) to be synced with CleverTap.
Note
Freshsales supports one module per workflow. Create individual workflows for each additional module.
- Select the Contacts module to track new or updated leads.

Select Contacts Module to Sync Leads.
- Under When to trigger this workflow?, define the trigger conditions when the workflow should run:
- Define the Trigger when Contact is created or updated.
- Define the intervals when the workflow should Run.
- (Optional) Add a filter to sync only relevant records (for example, Lead Status is New ). This ensures the sync only occurs for relevant leads.
- Under What actions should be executed?, select Trigger Webhook. This action will send contact data to CleverTap when the trigger conditions are met.
In the next step, you will configure this webhook to call CleverTapโs API with the right authentication and payload.
Set Up Webhook with CleverTap APIs
Use CleverTapโs API to configure the webhook to push data from Freshsales to CleverTap. In the Freshsales dashboard. To do so, perform the following steps:
- In Trigger Webhook, select the Advanced option.
- Enter the CleverTap's API endpoint used for uploading data to CleverTap. For more information, refer to Upload User Profiles API or Upload Events API.
https://<RegionValue>.api.clevertap.com/1/upload
- Set method to
POST
and the encoding format toJSON
. - In the Custom Headers section, add the following:
Key | Value |
---|---|
X-CleverTap-Account-Id | Your CleverTap Account ID |
X-CleverTap-Passcode | Your CleverTap Passcode |
Content-Type | application/json |
- Using Insert Placeholder , map Freshsales fields (such as first name, email, and phone number) to the payload.
- After you map the fields, define the payload using the Example payload or Advanced Example Payload (User Preferences & Subscriptions).
After mapping and pasting the payload, you can test this webhook (optional but strongly recommended).
Example Payload
Use this basic payload structure to upload a user profile from Freshsales to CleverTap. Using dynamic placeholders, it maps common fields such as name, email, and phone.
{
"d": [
{
"objectId": "{{email}}",
"type": "profile",
"profileData": {
"Name": "{{first_name}}",
"Email": "{{email}}",
"Phone": "{{phone_number}}",
"Lead Source": "{{lead_source}}"
}
}
]
}
Advanced Example Payload
This extended payload includes user messaging preferences (DND flags), subscription categories, and a dynamic date of birth field. Use this format if you are managing advanced profile attributes in CleverTap.
{
"d": [
{
"objectId": "{{email}}",
"type": "profile",
"profileData": {
"MSG-dndPhone": true,
"MSG-dndEmail": true,
"category-unsubscribe": {
"email": ["Newsletters", "Promotions"]
},
"category-resubscribe": {
"email": ["Football", "Movies"]
},
"DOB": "{{dob_timestamp}}"
}
}
]
}

Configure Webhook
Test and Activate Workflow
Verify that the webhook is correctly set up and that CleverTap receives the data as expected.
- In the Freshsales dashboard, click Test this Webhook.
- In the CleverTap dashboard, verify that a new user profile has been created.
- Once testing is complete, click Save in Freshsales to activate the workflow.

Verify Data in CleverTap
Once activated, the configured Freshsales workflow sends lead and contact data to CleverTap whenever the trigger conditions are met. This data can be used to trigger campaigns, update user profiles, and power targeted engagement.
Updated about 5 hours ago