Setup of Counterparty Verification by INN in CRM Bitrix24
Manager creates a company in CRM, types INN manually — and doesn't know the counterparty was liquidated three months ago, or that the INN belongs to a different legal entity. Verification by INN right in CRM card excludes work with invalid companies and saves time on manual checks through third-party services.
Data Sources
INN verification is performed via external APIs. Main options:
-
DaData (
dadata.ru/api/find-party) — returns company status (active, being liquidated, liquidated, bankrupt), registration date, address, manager name. Free — 20 requests/day, tariffs from 2000 rub/month for 5000 requests. -
FNS API (
api-fns.ru) — direct access to registry data. Slower than DaData, but closer to source. -
EGRUL/EGRIP directly — via service
egrul.nalog.ru, but without proper API, only HTML-parsing. Not recommended for automation.
For Bitrix24 DaData is the standard choice: built-in support in cloud tier and ready integrations for on-premise.
Built-in Verification in Cloud B24
In cloud tiers "Professional" and "Enterprise" INN verification is already built into CRM requisites module. When filling INN field in company requisites B24 automatically calls DaData and shows suggestions with name, address and status.
Setup: CRM → Settings → Requisites → Integration with DaData. Enter API-key (if using your DaData account) or leave built-in (with tariff limit).
Limitation of built-in mechanism — it fills data but doesn't block saving company with invalid INN. For strict validation you need customization.
Verification Through Business Process
Scenario: when creating or changing company, a business process runs, checking counterparty status and notifying manager.
- Trigger — company creation or change of "INN" field in requisites
-
Webhook Activity — sends GET-request to DaData
https://suggestions.dadata.ru/suggestions/api/4_1/rs/findById/partywith body{"query": "INN"}and headerAuthorization: Token <key> -
Condition — parse response: if
state.status == "LIQUIDATED"orstate.status == "BANKRUPT"— mark company as unreliable -
Action — set custom field
UF_VERIFICATION_STATUS(verified / liquidated / not found), send notification to manager
What We Configure
- DaData API connection (key, tariff, limits)
- Auto-suggestions when entering INN in company card
- Business process for counterparty status check on company creation
- Custom field
UF_VERIFICATION_STATUSin "Company" entity - Manager notification when problematic counterparty detected
- Testing: verification on active, liquidated and non-existent company







