AmoCRM Integration Guide: Connecting Telegram Lead Generation with Your Sales Pipeline
Step-by-step guide to integrating Telegram lead generation with AmoCRM: webhook setup, lead creation, pipeline automation, and data sync.
AmoCRM Integration Guide: Connecting Telegram Lead Generation with Your Sales Pipeline
Generating leads is only half the battle. Without CRM integration, leads get lost in spreadsheets, follow-ups slip through cracks, and pipeline visibility disappears.
This guide covers integrating Telegram lead generation with AmoCRM: from webhook setup to full pipeline automation.
Integration Architecture
Telegram Outreach -> Lead Response Detected -> Webhook to AmoCRM
-> Lead Created -> Pipeline Stage Updated -> Sales Team Notified
-> Follow-up Scheduled -> Deal Tracked to Close
What You Need
- AmoCRM account with API access enabled
- AmoCRM OAuth token (generated once, refreshable)
- Webhook endpoint (your server or AmoCRM's built-in triggers)
- 24GO backend with webhook configuration
Step 1: AmoCRM API Setup
Generate OAuth Token
- Go to AmoCRM Settings > Integrations > API
- Click "Generate Token"
- Copy the access token and refresh token
- Store securely (never in plain text)
Configure API Permissions
Required permissions:
leads-- Create and update leadscontacts-- Create and update contactstasks-- Create follow-up taskspipelines-- Read pipeline stages
Step 2: Webhook Configuration
In 24GO Dashboard
- Go to Settings > Webhooks
- Click "Add Webhook"
- Configure:
Name: AmoCRM Lead Sync
URL: https://www.amocrm.ru/api/v4/leads
Method: POST
Headers:
Authorization: Bearer YOUR_AMOCRM_TOKEN
Content-Type: application/json
Events: lead.qualified
Lead Data Mapping
Map 24GO lead data to AmoCRM lead format:
{
"name": "{{lead.name}}",
"price": {{lead.value}},
"status_id": 142,
"pipeline_id": 123456,
"custom_fields_values": [
{
"field_code": "PHONE",
"values": [{"value": "{{lead.phone}}", "enum_code": "WORK"}]
},
{
"field_code": "EMAIL",
"values": [{"value": "{{lead.email}}", "enum_code": "WORK"}]
},
{
"field_code": "TG_USERNAME",
"values": [{"value": "{{lead.telegram_username}}"}]
}
]
}
Step 3: Pipeline Stage Automation
Recommended Pipeline Stages
| Stage | Trigger | Action |
|---|---|---|
| New Lead | Lead response detected | Auto-create in AmoCRM |
| Contacted | First message sent | Update stage |
| Qualified | BANT criteria met | Move to qualified |
| Meeting Scheduled | Meeting booked | Create task |
| Proposal Sent | Proposal delivered | Update stage |
| Negotiation | Price discussion | Notify manager |
| Closed Won | Deal signed | Final update |
| Closed Lost | No response/declined | Archive |
Stage-Specific Automation
New Lead Stage:- Auto-create contact in AmoCRM
- Assign to appropriate sales rep based on lead source
- Create follow-up task for 24 hours
- Trigger notification to closer
- Create discovery call task
- Set reminder for 3-day follow-up if no meeting booked
- Create calendar event
- Send preparation email
- Set reminder for 1 hour before call
Step 4: Data Sync
Bi-Directional Sync
24GO sends to AmoCRM:
- Lead data (name, contact info, source)
- Conversation history
- Qualification score
- Pipeline stage changes
AmoCRM sends to 24GO:
- Deal status updates
- Revenue data
- Sales rep assignment
- Task completion status
Sync Frequency
| Data Type | Frequency | Notes |
|---|---|---|
| New leads | Real-time | Immediate webhook |
| Stage changes | Real-time | Event-driven |
| Contact updates | Every 15 minutes | Batch sync |
| Deal updates | Every 30 minutes | Batch sync |
Step 5: Reporting Setup
Key Reports to Configure
Lead Source Report:- Which Telegram groups produce the most qualified leads
- Response rate by source group
- Cost per lead by source
- Average time in each stage
- Conversion rate between stages
- Bottleneck identification
- Revenue by lead source
- Revenue by campaign
- ROI by outreach channel
Common Integration Issues
Issue 1: Duplicate Leads
Symptom: Same lead appears multiple times in AmoCRM. Fix: Implement deduplication logic:- Check for existing contact by Telegram username
- Check for existing contact by phone/email
- If found, update existing lead instead of creating new one
Issue 2: Missing Data
Symptom: Lead created in AmoCRM but missing key fields. Fix: Validate data mapping:- Check custom field codes in AmoCRM
- Verify webhook payload format
- Test with sample data before going live
Issue 3: Sync Delays
Symptom: Leads appear in AmoCRM minutes after response. Fix: Check webhook delivery:- Verify webhook URL is correct
- Check AmoCRM API rate limits
- Monitor webhook delivery logs
Advanced: Custom Integration Script
For complex integrations, use AmoCRM's API directly:
import requests
def create_amocrm_lead(lead_data, token):
url = "https://www.amocrm.ru/api/v4/leads"
headers = {
"Authorization": f"Bearer {token}",
"Content-Type": "application/json"
}
payload = {
"name": lead_data["name"],
"price": lead_data.get("value", 0),
"status_id": 142,
"pipeline_id": lead_data["pipeline_id"],
"custom_fields_values": [
{
"field_code": "TG_USERNAME",
"values": [{"value": lead_data["telegram_username"]}]
}
]
}
response = requests.post(url, json=payload, headers=headers)
return response.json()
Conclusion
AmoCRM integration transforms Telegram lead generation from a manual process into an automated pipeline. Set up webhooks, map data fields, automate stage transitions, and track revenue attribution. The integration pays for itself in saved manual hours and improved lead conversion.