Bitrix24 Integration with Calltouch
The marketing department launches ads in Direct and Google Ads, with one phone number on the site. Calls come in, managers handle them. But which calls came from ads, and which from existing customers? How many calls did a specific banner generate? Without call tracking, these questions go unanswered. Calltouch substitutes numbers on your site and ties each call to an advertising source. Integration with Bitrix24 brings this data to your CRM — leads are created with channel, campaign, and keyword attribution.
How Calltouch Works
Calltouch uses dynamic number insertion (DNI). A script is installed on your site that replaces your main phone number with a substitute number — unique to each visitor or group of sources.
Two tracking modes:
- Dynamic call tracking. Each visitor sees their own number. Calltouch ties the number to the session: knows UTM tags, keyword, landing page. Maximum precision, but requires a number pool.
- Static call tracking. One number is assigned to one source (e.g., separate number for Direct, separate for organic). Cheaper, but no keyword-level detail.
When a call comes in, Calltouch records: caller number, substitute number (determines source), duration, status (answered/missed), call recording.
Sending Calls to Bitrix24
Calltouch transmits call data to your CRM in two ways:
| Parameter | Native Integration | Via REST API (Custom) |
|---|---|---|
| Connection | Calltouch Dashboard → Integrations → Bitrix24 | Webhook from Calltouch → handler → REST API |
| Lead Creation | Automatic on incoming call | Via crm.lead.add with custom fields |
| Source in CRM | Sends utm_source, utm_medium, utm_campaign |
Full control: UTM + keyword + landing page |
| Call Recording | Link in call card | telephony.externalcall.attachRecord |
| Missed Calls | Lead created with "missed" flag | Custom logic: task to manager + lead |
Native integration is set up in minutes: in the Calltouch dashboard, you provide the portal URL and REST API token. Calltouch sends a request to Bitrix24 on each call — a lead is created with UTM fields and call recording populated.
For advanced scenarios, use Calltouch Journal API — get full call history with detailed attribution.
Journal API: Syncing Call History
Journal API is the primary tool for deep integration. The /calls/journal endpoint returns an array of calls for a specified period with full attribution:
-
callerNumber— caller's number -
source— traffic source -
utmSource,utmMedium,utmCampaign,utmContent,utmTerm -
keyword— keyword from ad system -
duration— duration in seconds -
callUrl— call recording URL -
waitDuration— wait time on line -
status— successful, missed, busy
Typical scenario: a cron job polls Journal API every 5 minutes, fetches new calls, and creates records in Bitrix24. For each call:
- Search for contact by number:
crm.contact.listwithPHONEfilter. - Contact found — register call via
telephony.externalcall.registerbound to the contact. - Contact not found — create lead via
crm.lead.addwith UTM fields and custom fields populated. - Attach call recording:
telephony.externalcall.attachRecordwith URL fromcallUrl.
Custom fields for Calltouch data:
-
UF_CRM_CT_SOURCE— source from Calltouch -
UF_CRM_CT_KEYWORD— keyword -
UF_CRM_CT_LANDING— landing page from which the call was made
Callback Widget
Calltouch provides a callback widget: visitor leaves their number, the system calls the manager and connects them to the client. Callback request data is also sent to your CRM — a lead is created before the manager picks up the phone.
Integrating the callback widget with Bitrix24:
- On callback request, Calltouch sends a webhook with the client's number and session data.
- Handler creates a lead in CRM with "Callback" label and UTM tags.
- After connection, Calltouch updates the record: duration, status, recording link.
Offline Conversions
Calltouch lets you send back the results of handling calls — to optimize ads in Yandex Direct and Google Ads. When a deal in Bitrix24 closes as successful, the onCrmDealUpdate webhook sends data to Calltouch via the /calls/offline-conversion API. The ad system gets the signal: this click led to a payment — and optimizes delivery.
Implementation Timeline
| Scale | What's Included | Timeline |
|---|---|---|
| Basic | Native integration, lead creation from calls, call recordings | 2-3 days |
| Standard | Journal API, custom fields, callback widget, source mapping | 1 week |
| Extended | Offline conversions, multi-funnels, custom reports, team training | 1-2 weeks |
What We Configure
- Connect Calltouch to Bitrix24: authentication, choose integration mode
- Create custom fields in CRM for call tracking data
- Configure lead creation logic: deduplication by phone, repeated call handling
- Integrate via Journal API: sync script, cron job, error handling
- Connect callback widget with data transmission to CRM
- Tie call recordings to CRM records
- Set up offline conversion transmission for ad optimization
- Test: incoming call from substitute number → lead in CRM with UTM → call recording in timeline
- Training: reading call reports, monitoring missed calls, source analysis







