Integration of 1C-Bitrix with end-to-end analytics services

Website inquiries and orders in the accounting system live separately, and decisions are made from fragments of data. We set up end-to-end analytics turnkey: we connect the website, advertising, and accounting into a single report. Management sees the full customer journey and understands which channels bring sales.

Our competencies:

Frequently Asked Questions

Integrating 1C-Bitrix with end-to-end analytics: where tracking breaks

A website on 1C-Bitrix and an accounting system exchange data, but the chain "inquiry → deal → payment → report" breaks in several predictable places.

A request arrives twice — by email and as a record in the integration, hence duplicate orders and requests that are reconciled manually. The source label is lost when moving between domains or on a repeat visit: the deal is in the report, but the channel is not identified.

The second break is at the junction of deal and money. Payment is recorded by the payment service, a refund is issued as a separate document, and the deal status is updated manually or on a schedule with a delay.

The discrepancy between website and accounting system data accumulates in the report: open deals hang for months, revenue is calculated by request date, and the share of refunds is not separated from sales.

A separate area is record matching.

The customer comes from different devices and writes from different contacts; if merging is done by phone without normalization, the history falls apart into several cards, and the channel report shows not what happened but what managed to sync.

The cost of such a picture is decisions about allocating effort across channels made based on doubled figures, and lost repeat sales. We break down how this is closed: from the exchange scheme and record matching rules to reconciliation of payments and refunds.

What changes after integration: the effect in measurable terms

The integration of a website on 1C-Bitrix, the Bitrix24 portal, and the 1C accounting contour removes manual data transfer between systems. Below is what exactly changes in measurable terms after the exchange is tuned and runs on a schedule.

Reporting preparation time

The channel summary is assembled from events already recorded in the CRM and web analytics systems, rather than from exports and manual data.

The monthly report is generated on a schedule: instead of several hours of reconciliation, only checking discrepancies between systems remains.

Data completeness by channel

Source labels are assigned at entry and carried along the chain "request → deal → payment", so the result is broken down by channel, not only by closure. The share of requests with an identified source grows, and effort goes to the channels that actually generate sales.

Share of unlabeled requests

Requests without a label go into a separate queue and are labeled according to rules: phone number, transition link, form code. The share of unrecognized requests drops to single-digit percentages and stops distorting reporting.

Accounting downtime and a unified sales picture

An exchange interruption is recorded by a discrepancy flag, and data is recalculated for the missed period without manual recovery.

The manager receives a single report where the website, CRM, and accounting agree — and the unified sales picture no longer has to be assembled from emails and spreadsheets.

How to transfer data into reporting: comparison of approaches

The first question during integration is not "which service to connect", but how data gets into reporting. Approaches differ in data refresh delay and the point where reference data matching is corrected.

The choice is dictated by the acceptable lag between the report and reality: operational decisions need minutes, while periodic reconciliation can tolerate a day.

Option When it fits Limitations
Direct data exchange Requests, deal statuses, and amounts are needed at viewing time; the report is built on the current state Tight coupling of two systems: a failure on one side stops the flow, and a change in data structure requires edits on both sides
Regular exports Periodic reporting: reconciliation by periods, marketing slices, history for past months Refresh delay is set by the schedule and does not decrease without a manual run; a repeat run must not duplicate records; reference data discrepancies accumulate between cycles
Intermediate storage Multiple sources and consumers, a unified history is needed, and independence from changes on each side is required Requires separate maintenance: schema, loading rules, completeness control; an additional point of failure and write time appear

Matching reference data is the cause of most discrepancies in reports, so in any scheme we include a mapping table and a discrepancy log: an unmatched counterparty or item does not tear down the entire flow but goes into a queue for review.

We fix matching rules in the configuration, not in manual report edits — then a new source can be connected without rebuilding the logic.

Work order: from source audit to handover to support

The work order is fixed: an error in entity matching is the most expensive because it is discovered already at the reporting stage, when data has accumulated and the history has to be recalculated.

Therefore, we first analyze the sources, then describe the linking rules, and only then enable the exchange.

  1. Data source audit. We compile a list of systems that generate touchpoints: website, CRM, telephony, ad accounts, messengers, offline locations. For each source, we record the primary request identifier — request, customer, call, or visit number — and what happens to it when the channel changes.
  2. Entity matching scheme. We describe the rules for linking a request to a visit, an ad, and a deal. We separately discuss behavior in disputed cases: a repeat request from the same customer, a request without a visit identifier, several deals for one request.
  3. Setup of exchange and labeling. We connect data transfer between the website, CRM, and analytics services, and additionally configure forms, goals, and number substitution. We check each labeling parameter on a live pass, not on a test bench.
  4. Testing on real requests. We run the end-to-end path on actual requests, including non-standard ones: a call without a website visit, a request from a messenger, cancellation and reopening of a deal.
  5. Load testing of the exchange. We generate a peak event flow and see whether the exchange lags, whether records multiply, and whether errors are lost. We must check resending after a communication failure.
  6. Acceptance and handover to support. We reconcile reports with source data until they match, describe the exchange restart procedure, set up alerts for communication breaks, and hand over documentation to your team or to us for maintenance.

Set of schemes, settings, and procedures after launch

Launching the exchange is only half the work: after that, data must be checked and kept up to date by the customer's team.

Therefore, together with a working 1C-Bitrix integration and an end-to-end analytics system, we hand over a set of documents that can be used to independently find the point where a request is lost, reconcile discrepancies, and onboard a new employee into the data contour.

  • Data flow scheme — event sources (web form, telephony, messengers, offline visits), identifiers linking records, and a transfer log: it shows at which step a request stopped, in minutes instead of a day of searching.
  • Status matching rules — a mapping table "CRM status → accounting system status → funnel stage in the report", including deals without payment, partial shipments, and refunds: without it, channel costs are allocated to incorrect stages.
  • Data access policies — roles and visibility scopes: who sees revenue across all channels, who sees only their own deals, how exports are depersonalized for contractors and external platforms.
  • Discrepancy reconciliation procedure — frequency, order of comparing totals, list of typical causes (duplicates, manual edits, cancellations), and rules for closing them with an assigned owner.
  • Instructions for the marketing department — how to label sources and transitions, what to do when a label is missing, how to read the report by channel → campaign → deal.
  • Field and reference data map — correspondence of items, managers, and funnels between systems so that when a new product or employee is added, the exchange does not diverge.
  • Set of control checks — integrity reports that run after updates and configuration edits: regressions are caught before distorted figures enter reporting.

Case study: orders from the accounting system and website requests in one report

The customer is a wholesale company with a catalog on the website and accounting in 1C. Website requests went to a manager by email, who entered them into the accounting system manually, and the channel report was assembled weekly in a separate spreadsheet. Reconciliation of orders and payments took the accounting department almost a full working day.

What it was like before integration

For two weeks we took measurements: how many requests never reach the sales document, how much time manual matching takes, how often amounts on the website and in accounting diverge.

The issue turned out to be not advertising but the break between the website on 1C-Bitrix and the accounting system — the request and payment had no common identifier.

Metric Before integration After integration
Reconciliation of orders and payments about 6 hours per week manually reconciliation on a schedule; manually — only discrepancies
Share of requests lost between website and accounting around 12% less than 1%
Payment delay in the channel report 5–7 days within an hour
Amount discrepancy "website — sales document" found at the end of the month visible in the exchange log immediately

What we changed

The request received an end-to-end identifier that passes through the accounting system and returns to the website together with statuses: invoice, payment, shipment.

The exchange was made repeatable — running an export does not create duplicates, and a failed batch is retried and goes into the log with the failure reason.

Customer feedback: "The report has stopped being a reason for dispute — the figures match accounting, and it is clear which channel brings paid orders."

How does end-to-end tracking differ from a set of separate reports?

A set of separate reports answers the question "how many" but not "why". The ad account counts clicks, the CRM counts deals, the warehouse counts shipments, and each system keeps its own key: click ID, deal number, web analytics session.

They can only be brought together with manual exports, and at each junction some records are lost — usually deals without a last touch and requests from a phone.

The end-to-end data chain is built around a single customer identifier. It is assigned at the first contact and then carried through all systems: cart, request, deal, repeat sale, support request.

The touch history folds into one sequence rather than falling apart into fragments by channel, so it is clear which touch preceded the payment.

The reliability of summary figures is ensured not by reports but by processing rules: lead deduplication, attribution window, behavior of visits without cookies, linking offline deals by phone and email.

Each rule is versioned and documented — otherwise, six months later, no one will be able to explain the discrepancy between dashboards.

The difference is visible in the share of deals with a full chain: with manual reconciliation it is single-digit percentages of revenue, with end-to-end tracking it is the main part of it.

We build an integration on Bitrix with CRM, warehouse, and ad accounts: one event recording point, one customer key, one recalculation logic.

Common technical doubts before starting

Doubts before starting usually concern not the integration itself but compatibility with what is already working. Below are the questions we most often discuss with the customer's technical team.

Analytics is already deployed — will everything have to be migrated?

No. We connect to the current data model: website events and orders from accounting are brought to a unified identifier scheme, and sources converge in one funnel. Previous reports remain functional, and history is pulled in for the required period.

Part of the accounting lives in manual spreadsheets — will that get in the way?

We connect the spreadsheet as a reference source and update it on a schedule. We match rows by normalized order number and phone, and mismatched ones go into a data quality report — discrepancies are visible rather than dissolving in the summary.

How to delimit access by roles?

Rights are inherited from the accounting system roles: a manager sees their own deals and their sources, a department head sees a summary for the division, and security sees depersonalized slices. Access is revoked together with the account; there is no need to maintain a separate list.

What happens if the analytics service is unavailable?

Events accumulate in a local queue and are sent after recovery; calls are asynchronous. The failure affects the delay in data appearing in the report but not the website operation or order placement.

Can improvements be made without stopping the website?

Yes. We move changes into a separate module, run them on a test contour, and enable them with a flag on part of the traffic. Rollback is disabling the flag: the code remains, behavior returns to the previous one, and no exports or downtime are required.

Let's discuss the task: what to clarify before estimation

To come back with an estimate and a plan rather than generalities, several inputs need to be prepared for the discussion. The more precisely they are formulated, the fewer clarifying iterations and the more realistic the timelines in the work plan.

  • Task statement for the integration: which events from 1C-Bitrix and Bitrix24 we consider target (completed request, invoice, payment, repeat purchase), where the funnel ends, and what counts as success.
  • List of data sources: website, CRM, telephony, messengers, online cash registers, advertising platforms, exports from 1C — indicating which customer identifiers are currently present in them (phone, email, order number).
  • Reporting requirements: which slices are needed in the end — by channel, campaign, manager, direction — and with what update frequency; we will separately note where data will arrive with a delay and why.
  • System access procedure: who on the customer side grants access to the CRM, ad accounts, and accounting system, and whether there are restrictions on exporting personal data.
  • Limitations and rules: data retention periods, depersonalization requirements, handling several legal entities or branches in one reporting system.
  • Owners and approval points: who confirms the event linking logic and who accepts the result at the verification stage.
  • Work plan and estimate: after reviewing the inputs, we will return with stages, implementation order, and what can be launched in the first wave.

Describe the task in this scope — and we will return with an estimate, work plan, and solution options for your system configuration.