Developing a CRM Integration Module for 1C-Bitrix
Site sells, CRM manages sales pipeline. Bitrix lacks built-in CRM — leads, opportunities, sales funnels require separate system or module. Integration module synchronizes orders to external CRM and back: customer info, order details, payment status, delivery status.
Supported CRMs
- Bitrix24 — via REST API
- AmoCRM — REST API
- Pipedrive — REST API
- HubSpot — REST API
Data Sync
Orders → CRM (Contact + Deal)
On order creation, create contact and deal in CRM:
$contact = $crm->createContact([
'first_name' => $orderBuyer['NAME'],
'phone' => $orderBuyer['PHONE'],
'email' => $orderBuyer['EMAIL'],
]);
$deal = $crm->createDeal([
'title' => "Order #{$orderId}",
'contact_id' => $contact['id'],
'amount' => $order->getPrice(),
'currency' => $order->getCurrency(),
'status' => 'New',
'custom_fields' => ['bitrix_order_id' => $orderId],
]);
CRM → Orders (Status Updates)
When deal status changes in CRM, update order status in Bitrix. Configure mapping: CRM_STATUS_WON → D (delivered), CRM_STATUS_LOST → C (canceled).
Custom Fields
Map Bitrix custom order properties to CRM:
-
COMPANY→ CRM company field -
MANAGER_ID→ CRM assigned user -
UTM_SOURCE→ CRM source field
Webhooks
CRM sends webhook on deal change → update Bitrix order → notify customer.
Development Timeline
| Stage | Duration |
|---|---|
| Base CRM integration, 1 CRM | 7–9 days |
| Multiple CRMs, field mapping | 14–18 days |
| Webhooks, bidirectional sync | 20–25 days |







