Overview of CRM
This section contains methods for working with CRM entities in Bitrix24. It covers leads, deals, contacts, companies, Smart Processes, funnels, stages, timelines, documents, requisites, and automation.
For example, you can create a Smart Process, configure its structure, and then interact with its elements through universal CRM methods.
If you are developing integrations for Bitrix24 using AI tools (Codex, Claude Code, Cursor), connect the MCP server so that the assistant can utilize the official REST documentation.
Quick navigation: all sections and methods
User documentation: CRM implementation steps
Universal CRM Methods
Universal CRM methods operate through entityTypeId and cover basic operations with entities: creation, reading, updating, and filtering. They are suitable for leads, deals, contacts, companies, estimates, invoices, and Smart Processes.
Entities are created using the crm.item.add method and updated with crm.item.update. A single entity can be retrieved by its ID using crm.item.get, while a list can be obtained with crm.item.list.
If the operation pertains to only one type of entity—such as the relationships between deals and contacts—use the methods from the relevant section: crm.deal.*, crm.lead.*, crm.contact.*, crm.company.*, crm.quote.*.
What is Included in a CRM Card
A CRM card combines the entity's data, the stage of work with it, and the history of interactions.
Fields. The card stores the entity's data, the composition of which depends on its type. A list of available fields can be obtained using the crm.item.fields method. Common fields are described in the article Fields of Main CRM Entities, while custom fields are configured using the userfieldconfig.add or userfieldconfig.update methods.
Funnel and Stage. For deals and Smart Processes, the card shows which funnel the entity is in and at what stage. To work with funnels, you need categoryId, which can be retrieved using crm.category.list. The list of stages with their ENTITY_ID codes can be obtained from crm.status.list.
Timeline. The timeline stores the history of interactions with the CRM entity: activities and comments. To add a record to the entity's card, you typically create an activity using the crm.activity.add method or a comment using the crm.timeline.comment.add method.
Documents. Documents in CRM are created based on templates from the document generator. Templates and numerators are added using the crm.documentgenerator.template.add and crm.documentgenerator.numerator.add methods. A document is created and linked to a CRM entity using the crm.documentgenerator.document.add method.
Automation. The card can participate in automation scenarios that depend on the entity's state. A custom trigger is registered using the crm.automation.trigger.add method and then executed for the desired element using the crm.automation.trigger.execute method. Both methods work only in the context of an application.
Typical use-cases and scenarios
Smart Processes
Smart Processes are custom types of CRM entities for business scenarios that go beyond standard leads, deals, contacts, and companies. They are used to describe contract approvals, internal requests, or equipment accounting.
For a Smart Process, unlike standard entities, the structure is configured first. The type is created using the crm.type.add method, which returns the entityTypeId of the new Smart Process. A list of existing types and their entityTypeId can be retrieved using crm.type.list.
Custom fields are added using the userfieldconfig.add method. If necessary, funnels can be configured separately using the crm.category.add method and stages using crm.status.add.
After configuring the structure, you can work with elements using the crm.item.* methods, just like with standard CRM entities.
User documentation
Widgets
You can embed an application into CRM entity cards and lists. This allows you to use the application without leaving the card or list.
There are two embedding scenarios:
- Use special embedding locations, such as a tab, a button above the timeline, or a menu item.
- Create a custom field where the application's interface will be loaded.
CRM Embedding Locations
Replace XXX with the entity code: LEAD, DEAL, CONTACT, COMPANY, QUOTE, SMART_INVOICE. For Smart Processes, specify the numeric identifier of the entity type, for example, CRM_DYNAMIC_183_DETAIL_TAB.
-
CRM_XXX_DETAIL_TAB— tab in the detail card -
CRM_XXX_DETAIL_ACTIVITY— button above the card's timeline -
CRM_XXX_DETAIL_TOOLBAR— dropdown menu item in the upper button of the card -
CRM_XXX_DOCUMENTGENERATOR_BUTTON— dropdown menu item for the document generator -
CRM_XXX_ACTIVITY_TIMELINE_MENU— context menu item for an activity in the card -
CRM_XXX_LIST_MENU— context menu item in the list of entities -
CRM_XXX_LIST_TOOLBAR— dropdown menu item above the list of entities -
CRM_XXX_ROBOT_DESIGNER_TOOLBAR— dropdown menu item in the upper button of the robot designer -
CRM_ANALYTICS_MENU— item in the left menu of CRM analytics -
CRM_ANALYTICS_TOOLBAR— dropdown menu item in the upper button of CRM analytics -
CRM_FUNNELS_TOOLBAR— dropdown menu item in sales funnels
Typical use-cases and scenarios
Key Identifiers
|
Identifier |
Meaning |
Where Used |
How to Obtain |
|
|
CRM entity type |
Universal methods, funnels, custom fields |
For standard entities — crm.enum.ownertype, for Smart Processes — crm.type.list |
|
|
CRM entity identifier |
Reading, updating, relationships between entities |
From the list of entities crm.item.list or after creating an entity crm.item.add |
|
|
Funnel identifier |
Deals and Smart Processes — needed when creating and filtering entities |
From the list of funnels crm.category.list |
|
|
Stage identifier |
Creating and filtering deal and Smart Process entities |
From the list of stages crm.status.list with a filter by |
Relationships with Other Entities
Users. The person responsible for the CRM entity is stored in the assignedById field. User data can be retrieved using the user.get or user.search methods.
Tasks. Tasks are linked to CRM entities through the UF_CRM_TASK field. The CRM entity identifier is passed to this field. The relationship is recorded when creating a task using the tasks.task.add method, and it can be read using the tasks.task.get method.
Catalog. Product items in deals and estimates are sourced from the product catalog. Products can be managed using the catalog.product.* methods.
Telephony. Calls create activities in the CRM timeline. The telephony.externalcall.finish method ends the call and returns the identifier of the created activity in the CRM_ACTIVITY_ID parameter.
Overview of Sections and Methods
Scope:
crmWho can execute the method: depending on the method
Reference Materials
|
Article |
Description |
|
What is |
|
|
Fields of key CRM entities in one place |
|
|
Practical scenarios and examples of using CRM |
CRM Entities
|
Section |
When to Use |
Key Methods |
|
For working with CRM entities and Smart Processes through |
||
|
For working with deals, their cards, and relationships with contacts |
||
|
When working with leads, their cards, and relationships with contacts |
||
|
For working with contacts, their cards, and relationships with companies |
||
|
When working with companies, their cards, and relationships with contacts |
||
|
For working with estimates and product items |
Settings and Directories
|
Section |
When to Use |
Key Methods |
|
For managing system lists in CRM: stages, sources, types |
||
|
When managing CRM currencies, base currency, and localization |
||
|
For working with requisites, addresses, and banking information in CRM |
Activities and Documents
|
Section |
When to Use |
Key Methods |
|
For working with activities, comments, calls, and other timeline records |
||
|
When creating call lists and managing their statuses |
||
|
For generating documents based on templates and managing templates and numerators |
crm.documentgenerator.document.add, crm.documentgenerator.template.list |
Automation and Analytics
|
Section |
When to Use |
Key Methods |
|
For registering webhook triggers and application triggers |
||
|
When linking traces to CRM entities and registering analytics sources |
Additional Tools
|
Section |
When to Use |
Key Methods |
|
For finding and merging duplicate CRM records |
||
|
When creating and configuring digital workplaces for Smart Processes |
||
|
For working with enumerations, multiple fields, and other auxiliary CRM objects |
||
|
For maintaining existing integrations on old method branches |
Individual Methods
|
Method |
Description |
|
Returns the current mode of CRM |
|
|
Returns the history of the entity's movement through stages |