Страница персональных данных — это раздел личного кабинета, где покупатель редактирует свои контактные данные: имя, e-mail, телефон, реквизиты. В 1С-Битрикс за неё отвечает компонент sale.personal.profile, а сами поля берутся из свойств заказа (модуль sale). Разберём, как это работает и как аккуратно настроить страницу под задачи магазина.
Что это за страница и зачем она нужна
Страница персональных данных даёт зарегистрированному покупателю возможность управлять информацией, которая подставляется в оформление заказа: ФИО, e-mail, телефон, а также дополнительные реквизиты для юридических лиц. Это не то же самое, что профили доставки — там хранятся адреса, а здесь именно персональные контактные данные плательщика.
Важно понимать разделение уровней данных в 1С-Битрикс. Есть учётная запись пользователя (модуль main, таблица b_user) с базовыми полями NAME, LAST_NAME, EMAIL, PERSONAL_PHONE. А есть свойства заказа (модуль sale), которые заполняются при оформлении и могут сохраняться в профиль покупателя. Страница персональных данных работает именно со свойствами заказа, привязанными к профилю, а не напрямую с карточкой пользователя.
/personal/private/ и входит в состав комплексного личного кабинета.Компонент sale.personal.profile
Отдельную страницу персональных данных выводит компонент bitrix:sale.personal.profile. Он умеет показывать список профилей покупателя, форму добавления и редактирования, а также удаление профиля. По сути это редактор значений свойств заказа, сгруппированных по профилям.
Чаще всего эту страницу не подключают напрямую, а получают через комплексный компонент личного кабинета bitrix:sale.personal.section, который маршрутизирует разделы кабинета по ЧПУ. Внутри он вызывает нужные «дочерние» компоненты — в том числе sale.personal.profile.list и sale.personal.profile.detail в новых версиях.
sale.personal.profile— исторический компонент управления профилями;sale.personal.profile.list— список профилей покупателя;sale.personal.profile.detail— форма конкретного профиля.
Ключевые параметры компонента: SET_TITLE (устанавливать заголовок страницы), PATH_TO_BASKET, PATH_TO_ORDER и путь к самому профилю. Все они настраиваются в визуальном редакторе или прямо в PHP-вызове компонента.
Откуда берутся поля: свойства заказа
Набор полей на странице персональных данных определяется не компонентом, а настройками свойств заказа. Управляются они в административной части: Магазин → Настройки → Типы плательщиков и свойства (в старых версиях — Настройки → Свойства заказа).
Каждое свойство имеет тип и признаки, которые напрямую влияют на страницу профиля:
| Признак свойства | Что делает |
|---|---|
| Обязательное | Поле нельзя оставить пустым при сохранении профиля |
| Выводить в профиль | Свойство показывается на странице персональных данных |
| Тип (E-Mail, Телефон, Местоположение) | Определяет валидацию и виджет ввода |
| Активность | Отключённые свойства скрываются из формы |
Свойства привязаны к типу плательщика (физлицо, юрлицо). Поэтому набор полей у покупателя-компании и покупателя-физлица отличается: у юрлица появляются ИНН, КПП, название организации.
Практическая настройка страницы
Типовой сценарий настройки выглядит так:
- Открыть
Магазин → Настройки → Типы плательщиков и свойстваи проверить список свойств для нужного типа плательщика. - Для каждого поля, которое должно быть на странице профиля, включить признак вывода в профиль и при необходимости «Обязательное».
- Убедиться, что типы свойств заданы корректно: телефон — тип «Строка» с маской или спец-тип, e-mail — тип «E-Mail» для валидации.
- Проверить страницу
/personal/private/под реальным аккаунтом покупателя.
Если нужно изменить внешний вид формы, копируется шаблон компонента в /local/templates/имя_шаблона/components/bitrix/sale.personal.profile/.default/ и правится template.php. Кастомизацию всегда делайте копией в /local/, а не в /bitrix/ — иначе обновление системы затрёт правки.
Согласие на обработку персональных данных
Поскольку страница напрямую работает с ПДн, стоит помнить о требованиях 152-ФЗ. 1С-Битрикс с версии 20.x включает модуль «Согласия» (Настройки → Согласия), позволяющий вести соглашения об обработке персональных данных и подключать их к веб-формам и оформлению заказа.
На практике для личного кабинета это означает:
- При регистрации и оформлении заказа выводить чекбокс согласия, связанный с текстом соглашения;
- Хранить факт согласия — модуль фиксирует дату и версию текста;
- Предусмотреть механизм отзыва согласия и удаления данных по запросу пользователя.
Частые проблемы и их причины
Несколько типичных ситуаций, с которыми сталкиваются при работе со страницей профиля:
- Поле не отображается — у свойства не включён вывод в профиль либо оно неактивно, либо привязано к другому типу плательщика.
- Изменения в профиле не подставляются в новый заказ — покупатель при оформлении выбрал другой профиль или создал новый; данные хранятся по профилям, а не глобально.
- Дублирование профилей — при каждом заказе создаётся новый профиль вместо обновления существующего; проверьте настройку «Сохранять данные в профиль».
- Невалидный e-mail/телефон — свойство имеет неверный тип, из-за чего пропущена серверная валидация.
Отдельно отметим, что данные учётной записи (b_user) и данные профиля заказа не синхронизируются автоматически. Если бизнесу нужна единая точка правды, синхронизацию настраивают событиями модуля sale или на стороне обмена с 1С.
Итог
Страница персональных данных в 1С-Битрикс — это редактор свойств заказа, привязанных к профилю покупателя, а не карточки пользователя. Её поведение на 90% определяется настройками свойств заказа и типов плательщиков, а компонент sale.personal.profile лишь выводит форму. Грамотно настроенные обязательные поля, корректные типы свойств и внимание к 152-ФЗ делают личный кабинет удобным и юридически чистым.
Если нужно доработать личный кабинет, синхронизировать профили с учётной записью и обменом 1С или провести аудит хранения персональных данных — мы помогаем с этим на проектах любой сложности. Обращайтесь за разработкой, поддержкой и настройкой безопасности вашего магазина на Битрикс.
Частые вопросы
Какой компонент отвечает за страницу персональных данных?
За неё отвечает компонент bitrix:sale.personal.profile, который в комплексном личном кабинете вызывается через sale.personal.section. В новых версиях используются sale.personal.profile.list и sale.personal.profile.detail.
Чем страница персональных данных отличается от профилей доставки?
Персональные данные — это контактные реквизиты плательщика (ФИО, e-mail, телефон, ИНН). Профили доставки хранят адреса. Это разные разделы кабинета, хотя оба основаны на свойствах заказа.
Где настраивается набор полей на этой странице?
В административной части в разделе Магазин → Настройки → Типы плательщиков и свойства. Именно там для каждого свойства включается вывод в профиль и признак обязательности.
Как сделать поле обязательным?
В настройках соответствующего свойства заказа включите признак «Обязательное». После этого форма профиля не сохранится, пока поле не заполнено.
Почему у юрлица и физлица разные поля?
Свойства заказа привязаны к типу плательщика. Для юрлица настраивают дополнительные поля вроде ИНН, КПП и названия организации, поэтому формы профиля различаются.
Синхронизируются ли данные профиля с учётной записью пользователя?
Нет, автоматически не синхронизируются. Данные из b_user и свойства профиля заказа — это разные сущности. Синхронизацию настраивают отдельно через события модуля sale или обмен с 1С.
Как безопасно изменить внешний вид формы профиля?
Скопируйте шаблон компонента в каталог /local/templates/.../components/bitrix/sale.personal.profile/ и правьте копию. Оригиналы в /bitrix/ трогать нельзя — обновление их перезапишет.
Нужно ли учитывать 152-ФЗ на этой странице?
Да, так как страница работает с персональными данными. Используйте модуль «Согласия» в 1С-Битрикс для сбора и хранения согласий, а также предусмотрите отзыв согласия и удаление данных по запросу.
Поможем с настройкой и поддержкой 1С-Битрикс: Управление сайтом
Поможем с настройкой, доработкой и поддержкой 1С-Битрикс: Управление сайтом.