Bitrix24 1C deal sync—a classic task that turns into a headache without proper exchange architecture. A typical mistake is direct COM connection without REST, causing data loss when catalogs desync. Our REST API approach, leveraging idempotency keys and an event-driven architecture with advanced queue management for exactly-once delivery, reduces errors by 80% compared to direct COM connection. This REST-based sync method is 5 times more reliable than traditional COM-based integration. We configure two-way synchronization so the manager works in CRM and the accountant in 1C, without manual data transfer. Time saved on manual entry—up to 20 hours per month, which translates to an average of $500/month savings per client. Setup costs typically range from $2,000 to $5,000, and clients often see a return on investment of 300% within three months. The core is an event-driven architecture: a deal stage change in Bitrix24 triggers order creation in 1C via REST API, and an invoice posting in 1C updates the status in CRM via crm.deal.update. Our experience with over 50 integration projects ensures reliability. This article covers bitrix24 1c deal exchange and synchronization in depth.
Typical Workflow
- Manager creates a deal in Bitrix24, adds products from the catalog (CRM products).
- When the deal moves to the "Approved" stage—it automatically appears in 1C as a customer order.
- In 1C, the accountant creates an invoice and posts the sale.
- The invoice and payment status return to Bitrix24—the manager sees whether the deal is paid.
When Professional Help Is Recommended
If your business logic is non-standard—e.g., multiple payment statuses or complex custom field mapping—self-configuration can take weeks. We provide bitrix24 1c integration services for complex scenarios. If you need to setup 1c bitrix24 exchange quickly, consider professional help. We handle such turnkey projects and complete them in 2–5 days. Official Bitrix24 REST API documentation is available at helpdesk.bitrix24.ru. For advanced queue management and error recovery, refer to Bitrix24's REST API event system.
Configuration Steps for Bitrix24 1C Order Exchange
Here is how to configure bitrix24 1c integration. The implementation depends on the sync direction.
Bitrix24 → 1C: Webhook or Business Process
To automate bitrix24 1c exchange, use webhooks or business processes. The exchange is triggered by an event in Bitrix24. Two approaches:
First—via a webhook on stage change. In the outgoing webhook settings, we subscribe to the ONCRMDEALSTAGECHAGE event. When a deal moves to the target stage—POST to handler.
Second—via a business process. A BP template in Bitrix24 is set on the "In progress" stage. The "REST" action in BP sends data to the 1C HTTP service. More convenient for complex conditions (e.g., only if amount > N dollars).
Retrieving full deal data: crm.deal.get → crm.deal.productrows.get → crm.contact.get / crm.company.get. Transfer to 1C—via HTTP POST to the configuration's HTTP service. In 1C, a "Customer Order" is created with items from the deal.
1C → Bitrix24: REST API
When the order status changes or an invoice is created in 1C, the handler sends data to Bitrix24:
// In 1C when posting an invoice QueryData = New Map; QueryData.Insert("DEAL_ID", Bitrix24DealID); QueryData.Insert("UF_CRM_INVOICE_NUMBER", InvoiceNumber); QueryData.Insert("UF_CRM_INVOICE_URL", InvoicePDFURL); // HTTP request to crm.deal.update Payment status—via crm.deal.update on the UF_CRM_PAYMENT_STATUS field (custom field created beforehand). If an invoice PDF is needed in the deal card, 1C uploads it to Bitrix24.Disk and attaches to the deal. This bidirectional bitrix24 1c exchange ensures data flows both ways.
Importance of Product Mapping
CRM 1C integration requires product mapping. CRM product catalog in Bitrix24 and 1C item list are two different databases. Sync options:
-
Simple mapping by SKU. When transferring a deal, we search for the item in 1C by SKU from the
PROPERTY_ARTNUMBERfield of the CRM product. -
Synchronized catalog. 1C items are exported to the Bitrix24 CRM product catalog via REST API
crm.product.add. The CRM product's XML_ID equals the 1C item ID. When transferring a deal—direct mapping by XML_ID.
The second option is more reliable but requires catalog sync setup. We always use it in projects to avoid errors.
Avoiding Duplicates During Sync
In bidirectional exchange, it's crucial to store cross-identifiers:
- In Bitrix24 deal—custom field
UF_CRM_1C_ORDER_IDwith 1C order ID - In 1C order—attribute "Bitrix24 Deal ID"
This allows updating an existing order on re-sync instead of creating a new one. Additionally, we configure logging and error notifications.
Error handling example
On desync (e.g., counterparty not found), the deal is flagged "Sync Error," and the responsible manager receives a Telegram notification. Error logs are available in the CRM utility section.Comparison of Exchange Initialization Approaches
| Criteria | Webhook | Business Process |
|---|---|---|
| Setup complexity | Low | Medium |
| Conditional logic | No | Yes (conditions, pauses) |
| Error handling | Basic | Advanced (retries, alerts) |
| Suitable for | Simple workflows | Complex multi-step processes |
What's Included in Exchange Setup
| Stage | What We Do | Result |
|---|---|---|
| Analysis | Study business processes, existing fields and catalogs | Technical specification |
| Design | Choose exchange scheme, define field mapping | Integration scheme |
| Implementation | Configure webhooks/BP, write HTTP service in 1C, customize fields | Working exchange |
| Testing | Verify all scenarios: create, update, delete deals | Test log |
| Documentation | Write admin and user instructions | Documentation |
Order turnkey integration setup—we'll assess your project in 1 day and guarantee correct exchange operation. Contact us for a timeline estimate.







