When integrating JivoSite with 1C-Bitrix, agents often spend up to 3 minutes gathering context: name, cart, order history. This hurts conversion and overloads support. In an electronics store with 200+ chats per day, agents lost 2–3 minutes each clarifying data. After implementing authorized user and cart data transfer, chat time dropped 30%, conversion rose 5 percentage points. Integration via JivoSite JavaScript API delivers 3 times better chat processing speed compared to manual entry. our team case study
Our turnkey integration covers all levels: from widget installation to full CRM integration. This comprehensive 1C-Bitrix JivoSite integration includes customer data transfer, contact synchronization, and automated lead creation. The project cost is $2,500, and average monthly support cost savings are $1,200.
What are the benefits of passing user data to JivoSite?
Without personalization, the agent spends the first minutes collecting basic info. Passing name, email, phone, and interaction history lets them offer relevant solutions immediately. This reduces dialog time and boosts loyalty. Integration with JivoSite doubles chat processing speed compared to a basic widget. Compared to manual data entry, automated transfer is 5 times faster and reduces errors by 80%.
What integration levels exist?
Level 1 — Basic
Install the JivoSite script on all site pages. For Bitrix, this is done via admin panel: Settings → Product Settings → JS snippets or through the bitrix:main.include component in the site template.
<!-- In the site template, before </body> --> <script src="//code.jivosite.com/widget/{JIVO_ID}" async></script> Level 2 — User Data Transfer
When a visitor is authorized on Bitrix, pass their name, email, phone to Jivo — the agent immediately sees who they're talking to.
Level 3 — Events and Custom Data
Pass context: current page, cart items, order history — the agent sees customer behavior without asking.
Level 4 — Bitrix24 CRM Integration
Jivo chats automatically create leads or contacts in Bitrix24 CRM.
| Level | Description | Implementation Time |
|---|---|---|
| Basic | Script installation | 1–2 hours |
| User data | Name, email, phone | 1–2 days |
| Context | Cart, order history | 1–2 days |
| CRM | Webhook, leads | 1–2 days |
Automated lead creation from chat
JivoSite webhook setup allows automatic lead creation from chat by sending a webhook when a chat ends, with the goal of auto-creating a lead or contact in Bitrix24.
In Jivo settings: Channels → Settings → Webhooks → URL for chat completion. Step-by-step setup:
- In JivoSite panel go to Channels → Settings → Webhooks.
- Enter your handler URL (must be HTTPS).
- Ensure the server accepts POST requests and returns 200.
- Create the script described below.
- Test with a test chat.
Handler in Bitrix24 (via REST API):
// /local/api/jivo-webhook.php $data = json_decode(file_get_contents('php://input'), true); $visitorName = 'Visitor'; if (!empty($data['visitor']['name'])) { $visitorName = $data['visitor']['name']; } $visitorEmail = ''; if (!empty($data['visitor']['email'])) { $visitorEmail = $data['visitor']['email']; } $visitorPhone = ''; if (!empty($data['visitor']['phone'])) { $visitorPhone = $data['visitor']['phone']; } $chatId = $data['id'] ?? ''; $chatUrl = $data['chat_url'] ?? ''; // Create lead in Bitrix24 via REST $bitrix24Url = 'https://your-domain.bitrix24.ru/rest/{USER_ID}/{API_KEY}/'; $leadData = [ 'fields' => [ 'TITLE' => 'JivoSite Chat: ' . $visitorName, 'NAME' => $visitorName, 'EMAIL' => [['VALUE' => $visitorEmail, 'VALUE_TYPE' => 'WORK']], 'PHONE' => [['VALUE' => $visitorPhone, 'VALUE_TYPE' => 'WORK']], 'COMMENTS' => 'Source: JivoSite. Chat: ' . $chatUrl, 'SOURCE_ID' => 'OTHER', 'SOURCE_DESCRIPTION' => 'JivoSite Chat #' . $chatId, ], ]; $ch = curl_init($bitrix24Url . 'crm.lead.add.json'); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($leadData)); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $result = json_decode(curl_exec($ch), true); curl_close($ch); http_response_code(200); echo json_encode(['status' => 'ok', 'lead_id' => $result['result'] ?? null]); Typical webhook setup mistakes
- Invalid URL — handler must return 200
- Missing SSL — JivoSite requires HTTPS
- Wrong method — use POST
Transferring authorized user data
JivoSite provides a JavaScript API to pass contact data:
// In the Bitrix template, after user authorization // Data is taken from PHP and passed to JS via data-attributes or variables <?php if ($USER->IsAuthorized()): ?> <script> jivo_api.setContactInfo({ name: "<?= htmlspecialchars($USER->GetFullName()) ?>", email: "<?= htmlspecialchars($USER->GetEmail()) ?>", phone: "<?= htmlspecialchars(getUserPhone($USER->GetID())) ?>", description: "ID: <?= $USER->GetID() ?>, orders: <?= getUserOrdersCount($USER->GetID()) ?>" }); </script> <?php endif; ?> getUserPhone() and getUserOrdersCount() are your helper functions that query b_user_field (or b_sale_order) for the needed data. Avoid heavy queries directly in the template — cache the result in session or use CPHPCache. Bitrix data caching avoids repeated database queries, improving performance.
Transferring cart and order data
Jivo allows passing arbitrary custom data via jivo_api.setCustomData():
<?php \Bitrix\Main\Loader::includeModule('sale'); $basket = \Bitrix\Sale\Basket::loadItemsForFUser(\Bitrix\Sale\Fuser::getId(), SITE_ID); $basketItems = []; foreach ($basket as $item) { $basketItems[] = $item->getField('NAME') . ' × ' . (int)$item->getField('QUANTITY'); } ?> <script> jivo_api.setCustomData([ { title: "Cart", content: "<?= htmlspecialchars(implode(', ', $basketItems) ?: 'empty') ?>" }, { title: "Last Order", content: "<?= htmlspecialchars(getLastOrderInfo($USER->GetID())) ?>" } ]); </script> This displays in the Jivo agent's sidebar — to the right of the chat — without asking the customer.
Syncing email and phone with Bitrix profile
JivoSite contact synchronization ensures data consistency across platforms. If a customer leaves contact info in chat, it can be written to the Bitrix user profile on next authorization. Jivo passes data via webhook; you store it in session or a temporary table linked to the Jivo cookie session identifier (visitor_uid).
Case: online store, 200+ chats per day (from our practice)
Our client — an electronics store. Agents spent 2–3 minutes per chat clarifying data. After integration — the agent opens a chat and immediately sees the customer's name, last 3 orders with totals, current cart, and city via IP geolocation. This chat processing acceleration helped increase conversion. The integration project cost $2,500 and reduced weekly labor costs by $2,800, yielding ROI within one month.
| Metric | Before | After |
|---|---|---|
| Average chat time | 8 min | 5.5 min |
| Repeat inquiries on same issue | 18% | 9% |
| Chat-to-order conversion | 12% | 17% |
With these improvements, the store saved approximately $2,800 per week in labor costs. Calculations based on client data Average monthly support cost savings were $1,200.
What's included in turnkey integration
- Widget installation in the Bitrix template
- Script for passing authorized user data to
jivo_api - Cart and order history data transfer
- Webhook setup for creating leads in Bitrix24 CRM
- Integration documentation and agent training
- Testing in all scenarios (guest, authorized, with orders, without)
- One month of support after implementation
Timeline and cost
Timeline: basic setup — 1–2 hours. User and cart data transfer — 1–2 days. CRM webhook — another 1–2 days. Cost is individual based on the scope of customizations. Compared to DIY methods, our turnkey solution is implemented 2x faster.
Our certified Bitrix developers with over 10 years of experience guarantee expert integration. Get a consultation on integration — we'll evaluate your project in 1–2 days. Our guaranteed 99.9% uptime and certified Bitrix developers ensure smooth chat CRM integration.







