Designing Contact Cards in Bitrix24 CRM
Designing Contact Cards in Bitrix24 CRM
A contact in Bitrix24 is an individual person linked to one or more companies and deals. It seems like a simple entity: name, phone, email. But when a CRM accumulates several thousand contacts and managers start searching for "who at company X makes procurement decisions" — it turns out the data exists, but the card structure doesn't allow finding and using it quickly.
The Contact's Role in the CRM Architecture
A contact (crm_contact, table b_crm_contact) is the central connection point between people and business processes. In Bitrix24, a single contact can be:
- linked to multiple companies (many-to-many via
b_crm_contact_company); - a participant in multiple deals;
- a recipient of notifications and mailing campaigns;
- the source of inbound calls (if telephony integration is configured).
The difference between a contact and a lead is fundamental: a lead is a "one-time inquiry," a contact is a long-term record of a person. The fields of a contact card should reflect not a single transaction, but a personal profile.
Key Card Zones
Identification fields. NAME, LAST_NAME, SECOND_NAME — standard. Add job title (POST) and salutation (HONORIFIC). If the CRM works with international contacts — a preferred language as a custom list field.
Contact data. Phone in Bitrix24 can have multiple values with types (work, mobile, home) — stored in b_crm_field_multi with type PHONE. Same for email and messengers. It's important to design which phone types are actually used in the business. Three types that nobody distinguishes between are just noise.
Company relationship. Job title, department, role in the decision-making process (decision-maker / influencer / user) — custom fields that are critical for B2B. Without them, the CRM cannot answer the question "who specifically should we talk to."
Custom fields are stored in b_uts_crm_contact. Added via crm.contact.userfield.add or through the interface. Field type is critical: "procurement role" is a list, not a string.
Designing for Segment
The contact card is heavily dependent on the type of business:
B2B. Priority — professional data: company, job title, role in the decision-making unit, date of next contact, preferred method of communication. Personal data is minimal.
B2C. Priority — personal profile: date of birth, gender, purchase history, preferences, loyalty program. If the CRM is integrated with e-commerce — RFM analysis segments also appear here.
Professional services (lawyers, consultants, agencies). Fields needed: how they came to you (referral from / channel), current projects (links to deals), documents (data processing consent, NDA).
Configuration for Different Roles
Just like for leads and deals, the contact card is configured via crm.defaultConfiguration.set for each role. Typical segmentation:
- Manager: sees contact data, linked deals and activities — does not see source fields and marketing tags.
- Head of department: sees everything, including history of responsible person changes and first contact date.
- Marketer: sees tags, segments, source, mailing history — does not see financial data from deals.
Case Study: Contact Card for a Medical Equipment Distributor
Client — a distributor working with hospitals and private clinics. Contacts are doctors, chief physicians, procurement officers, and IT directors. Each has a different role in the equipment purchase decision.
Initial problem: 4,200 contacts in the CRM, but a manager cannot quickly find "who at clinic N is responsible for ultrasound equipment procurement." The "Job Title" field was filled in inconsistently: "Chief physician," "chief physician," "Chief Physician," "ch.physician" — four variants of the same thing.
Solution:
Standardized job titles. Replaced the POST field with a custom list field with a fixed set: Chief Physician, Deputy Chief Physician, Department Head, Procurement Specialist, IT Specialist, Other. Existing data was migrated via script using crm.contact.update.
Added role in the decision-making process (list: Initiator / Influencer / Decision-Maker / User / Not Defined). The field is mandatory when moving a linked deal to the "Proposal Sent" stage.
Added specialization (list of medical specialties) — allows filtering contacts by profile when sending invitations to industry events.
Hidden UTM and marketing fields from managers — visible only to the marketer.
After implementation, managers started using the "Decision-Maker + specialization" filter to build call lists — over 3 months, the number of unproductive "cold" calls declined, as managers began reaching the right people.
Timeline
Designing and configuring a contact card takes 2–4 business days. When designing multiple entities simultaneously (contact + company + deal) — the work proceeds in parallel, with a total timeline of 8–12 days including approvals.







