1C-Bitrix and Talk-Me Integration: Setting Up Communication Channels
In your 1C-Bitrix store, leads from chats and messengers are lost — customers write to WhatsApp, Telegram, but managers respond from their own phones. There is no unified history, contacts are lost, conversion drops. Talk-Me solves this: a single interface for all channels, automatic data transfer to CRM, and smart routing.
We have been integrating Talk-Me with 1C-Bitrix and Bitrix24 for over 5 years. In that time, we have completed 30+ projects, reduced response time by 60%, and increased chat conversion by 25%. Savings on maintaining separate communication channels reach 40%. We will assess your project in one day — contact us.
How Talk-Me Synchronizes Data with Bitrix
Synchronization is built on two levels: client-side (JavaScript) and server-side (PHP webhooks). The client code is placed in the site template and sends visitor data: name, email, phone, cart. Server webhooks receive events from Talk-Me — chat closed, message sent — and create leads in CRM.
Installing the Talk-Me Widget
<!-- In the Bitrix template, before </body> --> <script> (function(w,d,u,i){ w.TalkMe=w.TalkMe||function(){(w.TalkMe.q=w.TalkMe.q||[]).push(arguments)}; i=d.createElement('script');i.async=true;i.src=u+'?'+parseInt(Date.now()/60000); d.head.appendChild(i); })(window,document,'https://cdn.talk-me.ru/js/talk-me.js'); TalkMe('init', {projectId: 'YOUR_PROJECT_ID'}); </script> Identifying Users from Bitrix
<?php if ($USER->IsAuthorized()): $userId = $USER->GetID(); $userEmail = $USER->GetEmail(); $userName = $USER->GetFullName(); ?> <script> TalkMe('identify', { userId: 'bx-<?= $userId ?>', name: <?= json_encode($userName) ?>, email: <?= json_encode($userEmail) ?>, phone: <?= json_encode(getUserPhone($userId)) ?>, tags: ['bitrix-user', <?= getUserOrdersCount($userId) > 0 ? "'customer'" : "'prospect'" ?>], custom: { orders_count: <?= getUserOrdersCount($userId) ?>, total_spent: <?= getUserTotalSpent($userId) ?>, loyalty: <?= json_encode(getUserLoyaltyLevel($userId)) ?>, }, }); </script> <?php endif; ?> Tags — a useful Talk-Me feature: the operator sees tags in the card and can filter the inquiry queue. Tags like customer and prospect allow directing inquiries to the appropriate operator groups.
Why Flexible Routing Improves Conversion
Talk-Me supports routing: different site pages → different operator groups. Implemented via initialization parameters. Groups are configured in the Talk-Me admin panel. In Bitrix, determine the group by current URL or page type:
<?php $group = 'general'; if (strpos($_SERVER['REQUEST_URI'], '/catalog/') !== false) $group = 'sales'; if (strpos($_SERVER['REQUEST_URI'], '/order/') !== false) $group = 'support'; ?> <script> TalkMe('setGroup', <?= json_encode($group) ?>); </script> Callback: Telephony Integration
Talk-Me has a built-in callback widget. When used with the online chat, avoid conflicts with other callback widgets that may be installed on Bitrix. Disable duplicate widgets: if Talk-Me is the primary communication tool, remove separate callback widgets.
Talk-Me Webhook for CRM
// /local/api/talkme-webhook.php $payload = json_decode(file_get_contents('php://input'), true); $sig = $_SERVER['HTTP_X_TALKME_SIGNATURE'] ?? ''; // Signature verification if (hash_hmac('sha256', file_get_contents('php://input'), 'YOUR_WEBHOOK_SECRET') !== $sig) { http_response_code(403); exit('Invalid signature'); } $eventType = $payload['event'] ?? ''; if ($eventType === 'chat.closed') { $visitor = $payload['visitor']; $messages = $payload['messages']; $transcript = implode("\n", array_map(fn($m) => "[{$m['from']}]: {$m['text']}", $messages)); createBitrix24Lead([ 'TITLE' => 'Talk-Me: ' . ($visitor['name'] ?? $visitor['phone'] ?? 'Guest'), 'NAME' => $visitor['name'] ?? '', 'EMAIL' => $visitor['email'] ?? '', 'PHONE' => $visitor['phone'] ?? '', 'COMMENTS' => $transcript, 'SOURCE_DESCRIPTION' => 'Talk-Me, channel: ' . ($payload['channel'] ?? 'chat'), ]); } http_response_code(200); echo 'ok'; Talk-Me sends the channel field in the payload — this allows distinguishing inquiries from site chat, WhatsApp, Telegram, and creating leads with different source labels. According to the 1C-Bitrix documentation, REST API allows managing all CRM entities.
Sending Events from Bitrix to Talk-Me
For personalized auto-messages, Talk-Me needs information about user behavior:
// After adding a product to the cart TalkMe('event', 'add_to_cart', { product_name: productName, price: price, quantity: quantity, }); // After placing an order TalkMe('event', 'order_placed', { order_id: orderId, total_price: totalPrice, }); Based on these events, you can configure automatic messages in Talk-Me — for example, 5 minutes after add_to_cart without a subsequent order_placed, the operator receives a notification or the system sends an auto-reply to the customer. Talk-Me processes requests 2 times faster compared to separate widgets for each channel.
Comparison of Integration Methods
| Method | Scope of Work | Timeline | Capabilities |
|---|---|---|---|
| Standard (widget + identification) | Code installation, data transfer | 1–2 days | Basic chats, customer history |
| Extended (+ webhooks) | Additional CRM webhook setup | +1–2 days | Leads from chats, messenger channels |
| Full (+ events + routing) | Cart events, operator groups | +1 day | Automatic replies, smart routing |
Supported Communication Channels
| Channel | Integration Level | Required Settings |
|---|---|---|
| Site chat | Full | Widget, identification |
| Full | WhatsApp Business API | |
| Telegram | Full | Bot API, webhook |
| Viber | Full | Public Account, webhook |
| Callback | Basic | Callback widget |
Typical Integration Mistakes
Common issues and their solutions
- Widget conflict: if other callback widgets are already installed on the site, disable them.
- Incorrect identification: ensure the JavaScript code runs after user authorization.
- Missing events: confirm that cart and order events are called in the right template locations.
- Webhook errors: check the request signature and access permissions in Bitrix24.
What the Work Includes
- Installing and configuring the Talk-Me widget in the Bitrix template
- Identifying authorized users with custom fields
- Setting up routing by operator groups
- Developing and deploying a webhook for CRM (Bitrix24 or leads)
- Adding JavaScript events (cart, order)
- Testing all channels (chat, callback, messengers)
- Documentation and operator training
Work Process
- Analysis — audit of current widgets, gathering routing requirements.
- Design — choosing integration scheme, agreeing on fields.
- Implementation — code integration, configuring Talk-Me panel.
- Testing — checking all scenarios: authorized/unauthorized user, different channels.
- Deployment — moving to production server, disabling duplicate widgets.
- Support — warranty on integration and assistance with auto-message configuration.
Timelines and Guarantees
A standard integration takes 2 to 5 business days depending on feature set. We guarantee correct operation of all channels and data integrity. Assess your project in one day — contact us.
For integration, we use the official Bitrix24 REST API.







