An AI agent without CRM integration is like a salesperson who never takes notes. Conversations happen, but nothing gets recorded, no follow-ups are scheduled, and insights are lost.
This guide covers everything you need to know about connecting AI agents to your CRM.
Why CRM Integration Matters
Without CRM Integration
- Conversations happen in a silo
- Agents don't know customer history
- No record of AI interactions
- Manual data entry required
- Follow-ups fall through cracks
With CRM Integration
- Full customer context in every conversation
- Automatic logging of all interactions
- AI updates records in real-time
- Triggers workflows and automations
- Unified customer view
Supported CRMs
Edesy integrates with major CRMs out of the box:
| CRM | Integration Type | Features |
|---|---|---|
| Salesforce | Native | Full read/write, triggers |
| HubSpot | Native | Contacts, deals, tickets |
| Zoho CRM | Native | Leads, contacts, deals |
| Pipedrive | Native | Deals, activities, persons |
| Freshsales | API | Leads, contacts |
| Microsoft Dynamics | API | Full CRM access |
| Custom CRM | REST API | Any API-based system |
What AI Agents Can Do With CRM
Read Operations
AI can access:
├── Contact/Lead information
├── Company/Account data
├── Deal/Opportunity status
├── Past interactions and notes
├── Custom fields and properties
├── Related records and associations
└── Activity history
Write Operations
AI can update:
├── Create new contacts/leads
├── Update existing records
├── Log conversation notes
├── Create tasks and follow-ups
├── Update deal stages
├── Add tags and categories
└── Trigger automations
Integration Setup: Salesforce
Step 1: Connect Salesforce
- Go to Integrations > CRM > Salesforce
- Click "Connect Salesforce"
- Log in with your Salesforce admin account
- Grant permissions (read/write access)
Step 2: Map Fields
Configure which Salesforce fields your AI can access and update:
Contact Fields:
├── First Name → AI can read/write
├── Last Name → AI can read/write
├── Email → AI can read only
├── Phone → AI can read/write
├── Lead Source → AI can write
└── Custom fields → Configure individually
Step 3: Configure Actions
Set up what your AI should do:
On New Conversation:
- Look up contact by email
- Create contact if not found
- Pull relevant history
During Conversation:
- Access past interactions
- Check deal status
- View custom fields
After Conversation:
- Log conversation transcript
- Update contact record
- Create follow-up task
- Trigger workflow
Example: Lead Qualification Flow
1. User starts chat
2. AI asks qualifying questions (BANT)
3. AI creates/updates Lead in Salesforce
4. AI sets Lead Score based on responses
5. If qualified: Creates Opportunity, assigns to rep
6. If not qualified: Adds to nurture campaign
7. Logs full conversation as Activity
Integration Setup: HubSpot
Step 1: Connect HubSpot
- Go to Integrations > CRM > HubSpot
- Click "Connect HubSpot"
- Select your HubSpot account
- Approve requested permissions
Step 2: Configure Objects
Choose which HubSpot objects AI can access:
- Contacts: Customer records
- Companies: Organization data
- Deals: Sales opportunities
- Tickets: Support cases
Step 3: Set Up Actions
Contact Actions:
- Create Contact
- Update Contact Properties
- Add to List
- Enroll in Sequence
- Log Activity
Deal Actions:
- Create Deal
- Update Deal Stage
- Associate with Contact
- Set Deal Amount
- Log Notes
Ticket Actions:
- Create Ticket
- Update Ticket Status
- Assign to Owner
- Add Comments
HubSpot Workflow Triggers
Your AI can trigger HubSpot workflows:
Trigger: AI qualifies lead as "Hot"
Workflow:
├── Send internal notification
├── Create task for sales rep
├── Add to "Hot Leads" list
└── Enroll in fast-track sequence
Integration Setup: Custom CRM
If you use a custom or less common CRM, connect via REST API.
Step 1: Get API Credentials
From your CRM, obtain:
- API endpoint URL
- API key or OAuth credentials
- Documentation for endpoints
Step 2: Configure in Edesy
- Go to Integrations > Custom API
- Add new integration
- Enter API details:
{
"name": "My CRM",
"baseUrl": "https://api.mycrm.com/v1",
"auth": {
"type": "bearer",
"token": "{{CRM_API_KEY}}"
}
}
Step 3: Define Actions
Create custom actions for each CRM operation:
Example: Create Contact
{
"name": "Create Contact",
"method": "POST",
"endpoint": "/contacts",
"body": {
"firstName": "{{first_name}}",
"lastName": "{{last_name}}",
"email": "{{email}}",
"phone": "{{phone}}",
"source": "AI Agent"
}
}
Best Practices
1. Start with Read-Only
Begin with read access only. Let AI pull customer data without writing. Once confident, enable write access.
2. Log Everything
Every AI conversation should create a record in your CRM. Future context depends on it.
3. Use Standard Fields
Map AI data to standard CRM fields when possible. Custom fields can create complexity.
4. Handle Duplicates
Configure duplicate detection rules. AI creating duplicate records is a common issue.
5. Set Up Error Handling
What happens when CRM API fails? Your AI should:
- Continue the conversation
- Queue the update for retry
- Alert your team
Real-World Examples
Example 1: Sales Qualification
Customer: "Hi, I'm interested in your enterprise plan"
AI Actions:
1. Looks up customer by email → Finds existing contact
2. Sees they're in "Prospect" stage
3. Notes: Last contacted 30 days ago
4. Previous interest: Professional plan
AI Response: "Welcome back, Sarah! I see you were
looking at our Professional plan last month. You
mentioned your team was growing - has that influenced
your interest in Enterprise?"
[Conversation continues with qualification questions]
AI Actions after conversation:
1. Updates Deal stage to "Qualified"
2. Logs conversation transcript
3. Creates task: "Schedule demo - Enterprise interest"
4. Triggers notification to account owner
Example 2: Support with Context
Customer: "My integration isn't working"
AI Actions:
1. Looks up customer → Enterprise account, $50K ARR
2. Checks recent tickets → 2 tickets last month
3. Checks product → Using API integration
AI Response: "I'm sorry to hear about the integration
issue, Michael. I see you're on our Enterprise plan
using the REST API. Is this related to the
authentication issue we resolved last week, or
something new?"
[Troubleshooting conversation]
AI Actions after resolution:
1. Creates ticket with transcript
2. Tags as "API - Authentication"
3. Updates customer health score
4. Logs resolution time for SLA tracking
Measuring Success
Track these metrics after CRM integration:
| Metric | Before | After | Goal |
|---|---|---|---|
| Manual data entry | 100% | 10% | <20% |
| Context availability | 0% | 90% | >80% |
| Follow-up completion | 60% | 95% | >90% |
| Lead response time | 4 hrs | Instant | <5 min |
| Data accuracy | 70% | 95% | >90% |
Troubleshooting
"AI can't find customer records"
- Check email matching logic
- Verify API permissions
- Review field mappings
"Duplicate records being created"
- Enable duplicate detection
- Match on multiple fields (email + phone)
- Use CRM's merge tools for cleanup
"Updates aren't syncing"
- Check API rate limits
- Verify write permissions
- Review error logs
"Wrong data being pulled"
- Check field mappings
- Verify object relationships
- Test with specific record IDs
Getting Started
Ready to connect your CRM?
- Log in to Edesy
- Go to Integrations > CRM
- Select your CRM
- Follow the connection wizard
- Configure field mappings
- Test with sample data
- Go live
Need help? Contact our integration team.