1C-Bitrix Integration with Kontur.Focus
Kontur.Focus is a counterparty verification service providing access to the Unified State Register of Legal Entities (EGRUL/EGRIP), arbitration cases, financial statements, and affiliated entities. Integration with 1C-Bitrix is valuable when a manager enters a company's TIN into a CRM record or during legal entity registration on the website — and expects the system to automatically pull the registration details and flag any risks.
Kontur.Focus API
Kontur.Focus provides a REST API. Documentation: https://api.focus.kontur.ru/. Authentication is via an API key passed as the query parameter ?key={api_key}.
Key endpoints:
-
GET /api/req?req={inn_or_ogrn}&key={key}— search by TIN/OGRN, returns basic registration details -
GET /api/brief?inn={inn}&key={key}— company summary card: status, legal form, address, director -
GET /api/financials?inn={inn}&key={key}— financial indicators (revenue, profit for recent years) -
GET /api/risks?inn={inn}&key={key}— consolidated risk profile: negative factors, sanctions lists
The response is JSON. The status field contains ACTIVE, LIQUIDATING, LIQUIDATED, or BANKRUPT. For CRM integration this is the key field: a deal with a company in liquidation warrants extra scrutiny.
Integration with Bitrix24 CRM: Auto-filling Registration Details
The most common scenario: a manager enters a TIN into the CRM company record → the system queries Kontur.Focus → automatically populates the KPP, OGRN, legal address, and director's name.
This is implemented via an event handler CRM::ON_BEFORE_COMPANY_UPDATE (on-premise Bitrix24) or webhooks in cloud Bitrix24. When the TIN field changes, a request is sent to Kontur.Focus and the returned data is written back to the record.
In cloud Bitrix24 via REST API:
// Hook on company update via BX24.callMethod
BX24.callMethod('event.bind', {
event: 'ONCRMUPDATECOMPANY',
handler: 'https://your-app.ru/focus-handler/'
});
On the handler side: retrieve the TIN from the UF_INN field or the standard requisite field, query Kontur.Focus, and update the company record via crm.company.update.
Risk Screening and Notifications
The second scenario: counterparty verification before a deal. Attach a trigger to a Bitrix24 business process — when a deal moves to the "Contract" stage, automatically request the risk profile from Kontur.Focus.
If risks.negative_factors contains critical indicators (mass registration address, disqualified director, enforcement proceedings for a significant amount) — the deal is tagged "requires review" and a task is created for the security team.
This is configured via CRM robots (Bitrix24 cloud) or business processes (on-premise). Condition: "if field UF_FOCUS_RISK exceeds threshold → create task → notify manager."
API Request Caching
Kontur.Focus is a paid API with request limits based on the subscription plan. For large CRM databases (1,000+ companies) with frequent record updates, caching is mandatory.
Cache API results in Redis or in a Bitrix table (\Bitrix\Main\Data\Cache). TTL: 24 hours for basic registration details, 1 hour for status (status can change rapidly during liquidation). For forced refresh — add an "Update data from Focus" button to the CRM record.
Integration at Legal Entity Registration on the Website
For 1C-Bitrix (not Bitrix24): the legal entity registration form — the user enters a TIN, an AJAX request is sent to a site endpoint, which queries Kontur.Focus and returns the details for auto-fill. After registration, save the counterparty status and risk assessment in user properties (b_uts_user).
Estimated Timelines
| Scenario | Timeline |
|---|---|
| Auto-fill registration details from Focus on TIN entry | 3–5 days |
| Risk screening in a CRM business process | 5–10 days |
| Full integration (details + risks + notifications + cache) | 2–3 weeks |
Pricing is calculated individually after analyzing the counterparty verification business processes and CRM architecture.







