БонусБесплатный первый месяц абонентской поддержки при заказе разработки «под ключ»

Личный кабинет дилера на 1С-Битрикс: закрытый опт и повторные заказы

Личный кабинет дилера на 1С-Битрикс: закрытый опт, персональные цены, повторные заказы и обмен с 1С

Розничному покупателю от кабинета нужно немного: посмотреть заказ и поменять телефон. Дилеру нужно совсем другое. Он работает с вами каждую неделю, собирает большие однотипные заказы, следит за балансом и лимитом, забирает счета и акты, сверяет остатки по складам и хочет видеть свои цены, а не розничные ценники. Свести всё это в удобное рабочее место вручную невозможно — но на 1С-Битрикс для этого есть штатный фундамент: модуль интернет-магазина, группы пользователей, типы цен и компоненты личного кабинета, которые дорабатываются под B2B.

Эта статья — практический разбор того, как устроен личный кабинет дилера на 1С-Битрикс: из каких разделов он состоит, как работает модерация регистрации, персональные цены и закрытый каталог, повторный заказ и загрузка из Excel, баланс и документы, и как всё это связано обменом с 1С. Материал из нашей практики разработки личных кабинетов дилеров — по делу, без обещаний «гарантированного роста продаж».

Коротко

  • Личный кабинет дилера — это рабочее место B2B-партнёра: персональные цены, закрытый каталог, заказы, баланс и документы в одном месте.
  • Доступ открывается после модерации регистрации: менеджер подтверждает контрагента и переводит его в нужную группу пользователей.
  • Ключевые B2B-функции — повторный заказ, заказ по артикулу и загрузка заказа из Excel/CSV.
  • Цены, остатки, баланс и документы приходят из 1С обменом — учётная система остаётся источником истины.

Зачем дилеру личный кабинет

Пока оптовое направление маленькое, заказы можно принимать по телефону и почте: менеджер вручную считает цены по прайсу, выставляет счёт, проверяет остаток. Как только партнёров становится десятки, а заказов сотни в месяц, эта схема упирается в людей. Менеджер превращается в «живой калькулятор», ошибается в ценах и наличии, а дилер ждёт ответа вместо того, чтобы оформить заказ сам.

Личный кабинет снимает эту нагрузку. Партнёр входит, видит свои цены, собирает заказ, проверяет баланс и забирает документы без единого письма. Менеджер подключается только там, где нужно решение человека: подтвердить нового дилера, согласовать заказ сверх лимита, обсудить особые условия. Всё рутинное уходит в самообслуживание.

Выгода здесь двусторонняя, и важно назвать её честно, без завышенных обещаний:

При этом кабинет — не «волшебная кнопка роста». Он автоматизирует уже выстроенную работу с партнёрами: если условия и процессы в компании не описаны, сайт их не выдумает. Поэтому проектирование кабинета всегда начинается не с интерфейса, а с вопроса «как именно вы работаете с дилерами сегодня».

Что такое B2B-кабинет и портал дилеров

Термины «B2B личный кабинет» и «портал дилеров» часто используют как синонимы, но между ними есть разница в масштабе, и её полезно понимать при постановке задачи.

ПонятиеЧто этоКогда достаточно
Кабинет покупателяРозничный «мои заказы» + профильОбычный магазин без опта
B2B личный кабинетКабинет с персональными ценами, закрытым прайсом, балансом и документамиОпт и дилеры с типовыми условиями
Портал дилеровРазвитый B2B-кабинет: роли внутри контрагента, лимиты, согласования, отгрузки, аналитикаСеть партнёров со сложными процессами

Граница между ними условна: портал — это «выросший» B2B-кабинет. На старте многим хватает базового набора (цены, заказы, документы), а ролевую модель, лимиты и глубокую аналитику добавляют по мере роста числа партнёров. Ошибка — сразу строить «портал мечты» на пять дилеров: проще запустить рабочий минимум и наращивать функции под реальные запросы партнёров.

Запомните разницу: кабинет покупателя отвечает на вопрос «где мой заказ», B2B-кабинет — «сколько это стоит именно мне и сколько я должен», а портал дилеров — ещё и «кто из моих сотрудников что заказал и что мне отгрузили». Чем сложнее работа с партнёрами, тем ближе вы к порталу.

Собираем мы такие решения в рамках услуги B2B-порталы и личные кабинеты — от базового кабинета опта до портала дилерской сети с ролями и лимитами.

Разделы кабинета дилера: из чего он состоит

Хороший кабинет дилера — это не одна страница, а понятный набор разделов, каждый из которых закрывает конкретную задачу партнёра. Условный «дашборд» после входа собирает их в плитки, а внутри каждого раздела — своя логика и своя связь с 1С.

Типовой состав кабинета дилера выглядит так:

Не все разделы нужны сразу и всем. Небольшому опту хватает каталога, заказов и документов; крупной дилерской сети нужны роли, лимиты и отгрузки. Проектируя кабинет, полезно разложить функции на «обязательный минимум для запуска» и «развитие», чтобы не затягивать старт.

Кабинет дилера · дашборд Баланс −128 400 ₽ лимит 300 000 ₽ Активные заказы 7 в работе 2 к отгрузке Документы 3 новых счёт · УПД · акт Каталог Персональные цены наличие по складам Быстрый заказ По артикулу · Excel загрузка файла Повторить заказ Из истории в один клик Уведомления Заказ №4021 отгружен · Новый счёт · До лимита 40%
Схема: дашборд кабинета дилера собирает ключевые разделы в плитки — баланс, заказы, документы, каталог с персональными ценами и быстрый заказ.

Регистрация и модерация дилеров

Ключевое отличие B2B-кабинета от розничного — доступ дают не всем и не сразу. Дилерские цены и закрытый прайс не должны открываться случайному человеку, зарегистрировавшемуся с почты. Поэтому вход в кабинет дилера проходит через модерацию.

Типовой поток регистрации партнёра выглядит так:

  1. Заявка с реквизитами. Будущий дилер заполняет форму: наименование компании, ИНН, контактное лицо, телефон, регион. Не просто «имя и e-mail», как в рознице.
  2. Заявка уходит на модерацию. Регистрация не даёт доступ автоматически — пользователь создаётся, но остаётся в «карантинной» группе без персональных цен.
  3. Проверка контрагента. Менеджер проверяет компанию по своим правилам: реальность юрлица, соответствие профилю, наличие договорённостей. Это решение человека, а не сайта.
  4. Перевод в рабочую группу. После подтверждения пользователя переводят в группу «Дилеры» (или нужный уровень опта), и ему открываются персональные цены и закрытый каталог.
  5. Привязка к контрагенту 1С. Учётную запись связывают с контрагентом в 1С, чтобы подтягивались его цены, баланс, лимит и документы.
  6. Уведомление партнёра. Дилер получает письмо «доступ открыт» и заходит в полноценный кабинет.

До модерации важно решить, что видит незарегистрированный или неподтверждённый посетитель. Варианты: розничные цены, «цена по запросу», полностью закрытый каталог или заглушка «доступ после подтверждения». Это бизнес-решение — сначала компания определяет политику, потом её отражают в группах и правах.

По делу: не обещайте на форме регистрации «моментальный доступ к оптовым ценам». Модерация нужна именно затем, чтобы закрытый прайс не утёк конкурентам и случайным людям. Скорость подтверждения — это вопрос вашего процесса, а не техники сайта.
Заявка ИНН, реквизиты Модерация менеджер Группа «Дилеры» Персональные цены + закрытый каталог Доступ открывается только после подтверждения контрагента
Схема: путь партнёра от заявки с реквизитами до персональных цен — доступ открывается только после модерации и перевода в рабочую группу.

Группы пользователей и персональные цены

Сердце кабинета дилера — механизм персональных цен. В 1С-Битрикс он держится на связке групп пользователей и типов цен торгового каталога. Дилер попадает в свою группу, у группы есть права на «свой» тип цены — и партнёр видит именно его.

Схематично это работает так: у товара одновременно несколько цен (розничная, оптовая, дилерская), а права доступа к каждому типу цены определяют, какая группа его видит. Гость и розница видят розничную, оптовик — оптовую, дилер — дилерскую. Мы подробно разбираем этот механизм в отдельной статье про оптовые цены по группам клиентов в 1С-Битрикс — здесь же важно, как он проявляется именно в кабинете.

Уровень партнёраГруппа пользователейЧто видит в кабинете
Гость / до модерацииГости, «Карантин»Розница или заглушка «цена по запросу»
Опт первого уровняОптовые покупателиОптовый прайс, стандартные условия
ДилерДилерыДилерский прайс, закрытый каталог, лимит
Ключевой партнёрИндивидуальная группаИндивидуальный прайс из 1С по контрагенту

Для крупных партнёров типовых уровней бывает мало — им нужны индивидуальные условия. Тогда цены ведут в 1С по конкретному контрагенту и передают на сайт обменом, а кабинет показывает именно их. Чем индивидуальнее условия, тем больше логики уходит в 1С, а не в «галочки» админки. Глубина возможностей зависит от редакции и доработок.

Отдельный важный нюанс — показ цены до и после входа. В кабинете дилер всегда авторизован, поэтому видит свой прайс. Но каталог доступен и с публичной части, и там нужно решить: показывать ли дилеру его цены вне кабинета (по сессии авторизации) или гнать его именно в закрытый раздел. Обычно персональные цены доступны всюду после входа, а закрытый прайс — везде скрыт от неавторизованных.

Закрытый каталог: виден после входа

Персональные цены — это половина закрытого опта. Вторая половина — сам каталог, который дилер видит иначе, чем случайный посетитель. Здесь у бизнеса несколько вариантов «степени закрытости», и выбор — это решение компании, а не техники.

Технически закрытость строится на правах доступа к разделам инфоблока и к типам цен, а также на проверке авторизации в шаблоне и на бэкенде. Важно, чтобы закрытость проверялась на сервере, а не только скрытием в вёрстке — иначе цену или товар можно «подсмотреть» в коде страницы. Об этом ещё поговорим в разделе про безопасность.

Ещё одно требование закрытого каталога — SEO-согласованность. Если каталог открыт для индексации, но цены закрыты, поисковик видит товары без цен — это нормально. Если же весь каталог за авторизацией, роботы его не увидят вовсе, и тогда SEO-трафик придётся получать с открытых информационных страниц. Эти развилки лучше проговаривать до запуска.

История заказов и повторный заказ

Опт живёт повторяющимися заказами. Дилер редко собирает каждый раз новую корзину — чаще он берёт примерно то же, что и в прошлый раз, корректируя количества. Поэтому история заказов и повторный заказ — не украшение, а одна из самых используемых функций кабинета.

Что должно быть в разделе заказов дилера:

Повторный заказ кажется простой функцией, но в B2B у неё есть тонкости. Цены могли измениться, товар мог уйти из ассортимента или смениться артикул, часть позиций может быть недоступна этому дилеру. Хорошая реализация не молча копирует старый заказ, а показывает дилеру «дифф»: вот что перенеслось как есть, вот что изменилось в цене, вот чего нет — решайте. Это защищает партнёра от неприятных сюрпризов в счёте.

История заказов Заказ №3980 28 позиций Файл Excel / CSV артикул; кол-во A-1001; 40 Сопоставление артикул → товар цена, наличие Корзина по актуальным ценам с проверкой остатка
Схема: и повтор прошлого заказа, и загрузка файла Excel проходят через сопоставление артикулов с товарами — корзина собирается по актуальным ценам и с проверкой наличия.

Заказ по артикулу и загрузка из Excel

Дилер знает, что ему нужно, и знает артикулы. Заставлять его листать каталог карточка за карточкой — терять его время. Поэтому кабинет дилера почти всегда дополняют быстрыми способами набрать заказ.

Заказ по артикулу. Отдельная страница с таблицей: дилер вводит артикул, система подсказывает товар (автодополнение), он ставит количество — и позиция уходит в корзину. Для однотипных закупок это в разы быстрее каталога. Логику поиска и распознавания кодов мы подробно разбираем в статье про поиск по артикулу для B2B-каталога.

Загрузка заказа из Excel/CSV. Дилер выгружает у себя список «артикул + количество» и загружает файл. Система сопоставляет артикулы с товарами, показывает результат разбора и собирает корзину. Это флагманская B2B-функция — она превращает получасовую ручную сборку в минуту работы.

У загрузки из файла есть подводные камни, которые нужно закрыть в реализации:

Ситуация в файлеКак должен вести себя кабинет
Артикул не найденПоказать строку как «не найдено», не роняя весь импорт
Несколько товаров на артикулПредложить выбор или взять по правилу сопоставления
Товар недоступен дилеруОтметить и исключить из корзины с пояснением
Количество меньше кратностиОкруглить до кратности упаковки и предупредить
Разные форматы файлаПоддержать Excel и CSV, разные разделители и кодировки

Главное правило — прозрачный разбор. Дилер должен увидеть, что распозналось, а что нет, и только потом подтвердить корзину. «Молчаливый» импорт, который тихо выкидывает половину строк, хуже отсутствия функции: партнёр недосчитается товаров уже в отгрузке.

Статусы заказов, отгрузки и резервы

В рознице статус заказа — это чаще всего «оформлен → отправлен → доставлен». В опте всё сложнее: один заказ может отгружаться частями, с разных складов, с резервом под будущую поставку. Кабинет дилера должен честно показывать это состояние, иначе партнёр звонит менеджеру с вопросом «а где мой товар».

Что важно отражать в статусах B2B-заказа:

Все эти данные — из учётной системы. Статусы, отгрузки, резервы и остатки по складам ведутся в 1С и передаются на сайт обменом. Кабинет их только отображает и, наоборот, отдаёт в 1С новые заказы. Поэтому качество этого раздела напрямую зависит от того, насколько полно настроен обмен — об этом ниже отдельный раздел.

Частая недооценка: «частичная отгрузка» кажется мелочью на старте, но именно она вызывает больше всего вопросов от дилеров в реальной эксплуатации. Если заказ на 30 позиций уехал двумя партиями, а кабинет показывает один статус «отгружен», партнёр не поймёт, что половина ещё в пути. Проектируйте отгрузки как отдельные сущности сразу.

Баланс, взаиморасчёты и платежи

B2B — это работа с отсрочкой и взаиморасчётами, а не «оплатил картой и забрал». Поэтому раздел баланса для дилера часто важнее самого каталога: партнёр хочет видеть, сколько он должен, сколько может заказать и когда платить.

Что показывает раздел взаиморасчётов:

Принципиальный момент: баланс не считается на сайте. Сальдо, платежи и отгрузки — это бухгалтерия, и она живёт в 1С. Сайт получает готовые цифры обменом взаиморасчётов по контрагенту и показывает их. Любая попытка «складывать заказы на сайте, чтобы получить долг» приведёт к расхождению с 1С и подрыву доверия. Источник истины по деньгам — всегда учётная система.

Отдельно стоит согласовать частоту обновления баланса. Взаиморасчёты не всегда нужно синхронизировать в реальном времени — часто достаточно обмена по расписанию (например, несколько раз в день). Но дилеру важно понимать, на какой момент актуальны цифры, поэтому в кабинете полезно показывать дату последней синхронизации баланса.

Кредитный лимит дилера Использовано 180 000 ₽ Свободно 120 000 ₽ Лимит 300 000 ₽ Заказ сверх лимита → на согласование менеджеру
Схема: кредитный лимит из 1С показывается в кабинете как шкала — использованная часть, свободный остаток и порог, за которым заказ уходит на согласование.

Кредитный лимит и контроль дебиторки

Отсрочка платежа удобна дилеру, но рискованна для поставщика: если партнёр набирает товар в долг без ограничений, растёт дебиторская задолженность. Инструмент контроля — кредитный лимит, и кабинет дилера может сделать его работу прозрачной для обеих сторон.

Как лимит проявляется в кабинете:

Как именно лимит влияет на заказ — это политика компании. Кто-то жёстко блокирует отгрузку сверх лимита, кто-то пропускает на согласование, кто-то только предупреждает. Сайт реализует выбранное правило, но само правило формулирует бизнес и финансовая служба. И, как и баланс, значения лимита приходят из 1С — сайт их не выдумывает.

Важно про дебиторку: контроль лимита на сайте — это удобная витрина уже существующей в 1С логики, а не замена финансовому учёту. Решение «отгружать или нет» в спорных случаях всё равно принимает человек. Кабинет лишь избавляет менеджера от ручной проверки в типовых ситуациях и делает правила видимыми дилеру.

Документы: счета, акты, УПД, договоры

Юрлицо работает с документами. Дилеру постоянно нужны счета на оплату, акты, УПД (универсальный передаточный документ), накладные, а иногда — доступ к договору и приложениям. В рознице это неактуально, в B2B — обязательный раздел кабинета.

Что обычно даёт раздел документов:

ДокументЗачем дилеруОткуда берётся
Счёт на оплатуОплатить заказ по безналуФормируется на сайте или приходит из 1С
УПД / накладнаяПодтвердить отгрузку и учесть товарИз 1С по факту отгрузки
АктЗакрыть период, услугиИз 1С
Акт сверкиСверить взаиморасчётыИз 1С по контрагенту
Договор и приложенияУсловия работы, спецификацииПрикрепляются к контрагенту

Ключевая развилка — где формируются документы. Счёт на оплату кабинет может генерировать сам по данным заказа. А вот УПД, накладные и акты — это документы бухгалтерского учёта, они формируются в 1С по факту операций и передаются на сайт как файлы, привязанные к заказу или контрагенту. Пытаться «рисовать» бухгалтерские документы на сайте в обход 1С — плохая идея: они разойдутся с учётом.

С документами важна и безопасность: акт или счёт одного дилера не должен быть доступен другому. Доступ к файлам проверяется на бэкенде по привязке к контрагенту, а прямые ссылки на документы защищаются, чтобы их нельзя было получить перебором. Это часть общей темы безопасности закрытого кабинета.

Роли внутри дилера: сотрудники и менеджеры

Крупный дилер — это компания, а не один человек. За закупки отвечает один сотрудник, за согласование — руководитель, за оплату и документы — бухгалтер. Если у контрагента одна учётная запись на всех, начинается путаница: непонятно, кто что заказал, все видят баланс и документы, пароль ходит по рукам. Решение — роли внутри дилера.

Типовые роли в портале дилеров:

Технически это несколько пользователей, привязанных к одному контрагенту, с разграничением прав на разделы кабинета. Глубина ролевой модели зависит от потребностей: кому-то хватает «администратор + сотрудник», кому-то нужна многоступенчатая цепочка согласований с лимитами на сотрудника. Начинать стоит с простого и усложнять по мере запросов партнёров — раздутая ролевая модель на старте только замедлит внедрение.

Со стороны поставщика тоже есть роль — менеджер, ведущий дилеров. Ему нужен доступ к кабинетам своих партнёров: помочь оформить заказ, согласовать превышение лимита, ответить на вопрос по документам. Это отдельный сценарий, который проектируют вместе с кабинетом дилера.

Уведомления и коммуникация

Кабинет не должен требовать, чтобы дилер постоянно в него заходил и проверял, не изменилось ли что-то. Наоборот — система сама сообщает о важном. Уведомления превращают кабинет из «места, куда надо зайти» в инструмент, который держит партнёра в курсе.

О чём обычно уведомляют дилера:

Каналы разные: e-mail как базовый, плюс уведомления внутри кабинета (колокольчик), а для оперативных событий — мессенджеры или SMS, если это оправдано. Важно не спамить: дилер должен получать значимые события, а не каждое микроизменение. Хорошая практика — дать партнёру настройки, какие уведомления и каким каналом он хочет получать.

Интеграция кабинета с 1С

Всё, что делает кабинет дилера ценным, — персональные цены, остатки по складам, статусы отгрузок, баланс, лимит, документы — приходит из учётной системы. Без глубокой интеграции с 1С кабинет остаётся красивой оболочкой без актуальных данных. Поэтому обмен — это фундамент, а не «добавим потом».

Что именно ходит между сайтом и 1С в B2B-кабинете:

ДанныеНаправлениеРоль в кабинете
Каталог и характеристики1С → сайтВитрина, карточки, фильтры
Типы цен по контрагенту1С → сайтПерсональные цены дилера
Остатки по складам1С → сайтНаличие, резервы, отгрузки
Заказысайт → 1СОформленные заказы уходят в учёт
Статусы и отгрузки1С → сайтОтслеживание заказа дилером
Баланс и взаиморасчёты1С → сайтСальдо, лимит, история платежей
Документы (УПД, акты)1С → сайтСкачивание в разделе документов

Базовый обмен каталогом и заказами идёт по стандарту CommerceML, а вот баланс, лимиты, статусы отгрузок и документы — это уже расширенный обмен, который проектируют под конкретную конфигурацию 1С. Здесь нет «коробочной кнопки»: объём и формат данных зависят от того, как устроен учёт у поставщика. Общие принципы обмена мы разбираем в статье про интеграцию интернет-магазина с 1С, а под B2B-кабинет обмен всегда настраивается индивидуально.

Отдельно нужно определить частоту и надёжность обмена для каждого типа данных. Цены и остатки обычно синхронизируют часто, баланс — по расписанию, документы — по факту появления. Важно предусмотреть, что делать при сбое обмена: показывать ли устаревшие данные с пометкой, блокировать ли операции, как не дать частичной выгрузке испортить витрину. Эти сценарии проектируют заранее, а не после первого сбоя.

1С учётная система Кабинет дилера Цены по контрагенту Остатки по складам Баланс и лимит Документы Заказы
Схема: 1С — источник истины по ценам, остаткам, балансу и документам; кабинет дилера показывает эти данные и отдаёт в 1С оформленные заказы.

Реализация в 1С-Битрикс: модуль и компоненты

Перейдём от «что должно быть» к «на чём это делается». Кабинет дилера на 1С-Битрикс собирается не с нуля — платформа даёт готовый фундамент, который дорабатывается под B2B.

Основные кирпичики:

Роль компонентов sale.personal.* стоит пояснить. Это семейство штатных компонентов персонального раздела: sale.personal.order.list и sale.personal.order.detail для заказов, компоненты профиля и адресов. Они закрывают «розничный» минимум кабинета из коробки. Но B2B-функций — повторного заказа с диффом, загрузки из Excel, баланса и лимита из 1С, ролей внутри контрагента, раздела документов — в них штатно нет. Поэтому реальный кабинет дилера — это связка штатных компонентов как каркаса и доработок поверх них.

Реалистично о трудозатратах: «личный кабинет» в редакции Битрикса из коробки — это заказы и профиль. Всё, что отличает дилера от розничного покупателя (персональные цены по контрагенту, баланс, лимит, документы, роли, загрузка из файла), — это проектная работа и расширенный обмен с 1С. Оценивать кабинет дилера как «включить готовый компонент» — значит недооценить задачу в разы.

Кастомизация компонентов кабинета

Штатные компоненты — это каркас, но «как есть» они дают розничный кабинет. Чтобы получить рабочее место дилера, их кастомизируют. Здесь важно делать это правильно, чтобы не сломать обновляемость платформы.

Основные направления доработки:

Главное правило кастомизации Битрикса — не править ядро и штатные компоненты напрямую. Всё делается через копии шаблонов, наследование, события и собственные модули. Иначе первое же обновление платформы затрёт доработки, и кабинет придётся чинить. Аккуратная кастомизация — это то, что отличает поддерживаемый кабинет от «однажды собранного и боящегося обновлений».

Кэш, права и безопасность закрытого кабинета

Кабинет дилера — это персональные данные и закрытые цены. Здесь ошибки кэширования и прав опаснее, чем в обычном каталоге: можно показать одному дилеру данные другого или раскрыть закрытый прайс. Три вещи, которые нужно держать под контролем.

Кэш с учётом пользователя и группы. Персональные цены, баланс, заказы нельзя кэшировать «одинаково для всех» — иначе дилер получит из общего кэша чужие цифры. Персональные блоки выносят в динамическую часть, а статику отдаёт композитный сайт. Общий каталог кэшируют с учётом группы пользователя, чтобы дилерская цена не попала в кэш розницы.

Проверка прав на бэкенде. Доступ к цене, документу, заказу, балансу проверяется на сервере при каждом обращении, а не скрытием в вёрстке. Правило простое: если чего-то не должно быть видно, оно не должно приходить с сервера, а не «приходит, но спрятано стилями». Иначе данные достаются из кода страницы или прямым запросом.

Изоляция данных контрагентов. Дилер А не должен получить документ, заказ или баланс дилера Б ни через интерфейс, ни подбором ссылки. Каждый запрос данных фильтруется по привязке пользователя к контрагенту, а прямые ссылки на файлы защищаются.

Безопасность = проверка на сервере: любое «скрыли в шаблоне» в закрытом кабинете — это не защита, а иллюзия. Закрытость прайса, изоляция документов и разграничение ролей должны работать на уровне бэкенда и прав, тогда их нельзя обойти из браузера.

Производительность тоже важна: кабинет дилера обращается к 1С за балансом и статусами, и если делать это синхронно на каждый заход, страница будет тормозить. Правильный подход — данные приходят обменом заранее и хранятся на стороне сайта, а тяжёлые запросы к 1С в реальном времени сводят к минимуму. О воспринимаемой скорости и композитном подходе мы пишем в рубрике B2B и опт и смежных материалах блога.

Частые ошибки при внедрении кабинета

Эти промахи повторяются в B2B-проектах чаще всего — зная их, вы сэкономите время и нервы партнёров:

Чек-лист функций ЛК дилера

Короткий список для приёмки кабинета перед запуском — по нему удобно проверить, что базовый B2B-минимум закрыт:

  1. Модерация регистрации работает. Заявка с реквизитами, проверка менеджером, перевод в группу и привязка к контрагенту 1С.
  2. Персональные цены видны. Дилер после входа видит свой прайс, гость — нет; цены приходят из 1С по контрагенту.
  3. Каталог закрыт по правилам. Выбрана и реализована степень закрытости (цены/разделы/весь каталог), проверена на бэкенде.
  4. История и повтор заказа. Заказы с фильтрами, повтор в один клик с диффом по ценам и наличию.
  5. Быстрый заказ. Ввод по артикулу и загрузка из Excel/CSV с прозрачным разбором файла.
  6. Статусы и отгрузки. Показаны статусы заказа, частичные отгрузки, резервы и остатки по складам.
  7. Баланс и лимит. Сальдо, задолженность и кредитный лимит из 1С; правило заказа сверх лимита определено.
  8. Документы доступны. Счета, УПД, акты, сверка — с изоляцией по контрагенту.
  9. Роли настроены. При необходимости — сотрудники дилера с разными правами и менеджер со стороны поставщика.
  10. Уведомления включены. Партнёр получает значимые события, каналы и частота согласованы.
  11. Обмен с 1С настроен. Цены, остатки, заказы, статусы, баланс, документы ходят по расписанию; поведение при сбое определено.
  12. Безопасность и кэш проверены. Права на бэкенде, изоляция данных, кэш с учётом пользователя, проверка под разными ролями.

Вывод

Личный кабинет дилера на 1С-Битрикс — это не «страница мои заказы», а рабочее место B2B-партнёра, где сходятся персональные цены, закрытый каталог, история и повтор заказов, загрузка из Excel, статусы отгрузок, баланс, лимит и документы. Держится всё это на штатном фундаменте платформы — модуле интернет-магазина, группах пользователей, типах цен и компонентах sale.personal.*, — дополненном доработками под опт и глубоким обменом с 1С.

Два принципа определяют, будет кабинет работать или создавать проблемы. Первый — 1С как источник истины: цены, остатки, баланс, лимит и документы приходят из учётной системы, а не считаются на сайте. Второй — закрытость проверяется на сервере: доступ к ценам, документам и данным контрагента разграничивается правами на бэкенде, а не скрытием в вёрстке. Соблюдая их, вы получаете кабинет, которому дилер доверяет: цена совпадает со счётом, остаток — со складом, баланс — с бухгалтерией. А начинать всегда стоит с рабочего минимума и наращивать функции под реальные запросы партнёров, а не строить «портал мечты» вслепую.

Частые вопросы

Чем личный кабинет дилера отличается от обычного кабинета покупателя?

Кабинет розничного покупателя решает простую задачу: посмотреть свои заказы и изменить контактные данные. Личный кабинет дилера — это рабочее место B2B-партнёра, где собраны персональные цены его группы, закрытый прайс, история заказов с повторным заказом, баланс и взаиморасчёты, документы (счета, акты, УПД), статусы отгрузок и резервов. По сути это мини-ERP на стороне сайта, синхронизированная с 1С, а не просто страница «мои заказы».

Как работает модерация регистрации дилеров?

Дилер оставляет заявку с реквизитами компании (ИНН, наименование, контактное лицо). Заявка не даёт доступ автоматически: она попадает менеджеру на проверку. После подтверждения контрагента пользователя переводят в нужную группу — например, «Дилеры» или «Опт второго уровня», и только тогда ему открываются персональные цены и закрытый каталог. До модерации партнёр видит либо розницу, либо заглушку «цены после подтверждения». Само правило проверки — это политика компании, сайт лишь автоматизирует уже принятое решение.

Откуда в кабинете берутся персональные цены дилера?

Чаще всего цены ведут в 1С отдельными типами цен (розничная, оптовая, дилерская, а иногда индивидуальные под контрагента) и передают на сайт обменом по CommerceML. На сайте типы цен сопоставляются с типами цен торгового каталога Битрикса, а права доступа к каждому типу привязаны к группе пользователей. В результате дилер, войдя в кабинет, видит именно свой прайс. Для крупных партнёров с уникальными условиями цены часто приходят из 1С по конкретному контрагенту.

Можно ли загрузить заказ из Excel или CSV в кабинете дилера?

Да, это типовой B2B-сценарий и одна из самых востребованных функций. Дилер загружает файл со столбцами «артикул» и «количество», система сопоставляет артикулы с товарами каталога, показывает, что нашлось и что нет, и собирает корзину одним действием. Это экономит часы по сравнению с ручным поиском карточек. Рядом обычно делают быстрый заказ по артикулу — ввод кодов в таблицу прямо на странице. Логику сопоставления артикулов мы разбираем в отдельной статье про поиск по артикулу.

Как в кабинете показывать баланс и дебиторку дилера?

Баланс, задолженность и кредитный лимит — это данные учётной системы, поэтому их не считают на сайте, а получают из 1С обменом взаиморасчётов по контрагенту. В кабинете это отдельный раздел: текущий баланс, сумма к оплате, лимит и его остаток, история платежей и отгрузок. Кредитный лимит может влиять на оформление заказа — например, блокировать отгрузку сверх лимита или переводить такой заказ на согласование менеджеру. Главное правило — цифры в кабинете должны совпадать с 1С, поэтому источником истины остаётся учётная система.

Нужна ли особая редакция 1С-Битрикс для кабинета дилера?

Личный кабинет опирается на модуль «Интернет-магазин» и торговый каталог, которые есть в редакциях «Малый бизнес» и «Бизнес». В «Старте» интернет-магазина нет, поэтому полноценный B2B-кабинет там не собрать. Для развитого портала дилеров с несколькими типами цен, ролями внутри контрагента, документами и глубоким обменом с 1С чаще берут «Бизнес» — она даёт больше возможностей по правам, каталогу и производительности. Конкретную редакцию стоит подбирать под объём каталога и число партнёров.

Можно ли завести внутри дилера несколько сотрудников с разными правами?

Да. Крупный дилер — это не один человек, а компания: закупщик формирует заказы, руководитель согласовывает, бухгалтер смотрит документы и баланс. В кабинете это решается ролями внутри контрагента: у одного юрлица несколько пользователей с разным доступом. Технически это делается через подчинённые учётные записи, привязанные к одному контрагенту, и разграничение прав на разделы кабинета. Глубина ролевой модели зависит от доработок — от простого «менеджер видит всё, сотрудник только заказывает» до сложной иерархии согласований.

Как повторный заказ связан с историей заказов?

Повторный заказ — это функция, которая берёт любой прошлый заказ дилера из истории и одним действием переносит его состав в корзину по актуальным ценам и с проверкой наличия. Для опта, где заказы часто однотипны и повторяются, это ключевое удобство: партнёр не собирает одну и ту же партию заново каждый раз. Система при этом подсказывает, что изменилось — что подорожало, чего нет на складе, что заменено, — чтобы дилер оформил заказ осознанно, а не вслепую скопировал устаревший список.

Поделиться:

Нужен личный кабинет дилера с закрытым оптом?

Спроектируем и внедрим кабинет дилера: модерацию регистрации, персональные цены, закрытый каталог, повторный заказ, загрузку из Excel, баланс, лимиты и документы, свяжем всё с обменом 1С. Рассчитаем работу по вашим условиям.

Услуга «Кабинет дилера»

Игорь Воскресенский

Основатель студии B2Bsite. С 2014 года команда разрабатывает и поддерживает B2B-витрины и порталы на 1С-Битрикс: закрытый опт, персональные цены, личные кабинеты дилеров, повторные заказы и обмен с 1С для среднего и крупного бизнеса.

← Все статьи блога