Setting up 1C-Bitrix customer profiles

Our company is engaged in the development, support and maintenance of Bitrix and Bitrix24 solutions of any complexity. From simple one-page sites to complex online stores, CRM systems with 1C and telephony integration. The experience of developers is confirmed by certificates from the vendor.
Our competencies:
Development stages

Customer Profiles Configuration in 1C-Bitrix

Customer profiles in Bitrix are saved datasets for order checkout: delivery address, contact information, customer type (individual or legal entity). A customer can have multiple profiles — "Home", "Office", "Dacha" — and on repeat orders, won't need to fill in the data again.

How Profiles Work

Profiles are stored in the table b_sale_order_user_props — these are order property records saved in the customer's personal account. Each profile is bound to USER_ID and PERSON_TYPE_ID.

Customer Types (b_sale_person_type) — individual and legal entity. Each type has its own set of properties (order form fields) that are saved in the profile.

Configuring Customer Types

Shop → Settings → Payer Types:

For each type, a set of properties is configured (b_sale_order_props):

  • Full name, phone, email — for individuals
  • Company name, TIN, RIN, legal address — for legal entities

The order of properties, mandatory fields, and validation are set here. The customer type affects the order form and notification templates.

Managing Profiles in Personal Account

The component bitrix:sale.personal.profile displays a list of saved profiles and an editing form. It is connected to the personal account page:

$APPLICATION->IncludeComponent('bitrix:sale.personal.profile', '', [
    'PATH_TO_PROFILE_EDIT' => '/personal/profile/edit/',
    'PATH_TO_ORDER'        => '/personal/orders/',
]);

The default profile (loaded automatically when creating a new order) is marked with a flag in PERSON_TYPE_ID in b_sale_order_user_props.

Configuring Order Form Auto-fill

When a profile is saved, the order checkout form (bitrix:sale.order.ajax) automatically fills in the data. It is controlled by the component parameter SAVE_USER_DATA = Y — allow profile saving.

Extending Profile with Additional Fields

For B2B stores, it is often necessary to add fields to the legal entity profile like "Contract Number" or "Contact Person". It is added as a new order property (b_sale_order_props) with binding to the "Legal Entity" type and the enabled flag USER_PROPS = Y (save to profile).

Timeframe

Setting up customer types with profiles and forms in the personal account — 2–4 hours. Extending profiles with custom fields — 2–3 hours.