Разрабатываю личные кабинеты на базе 1С для B2B и B2C: заказы, оплаты, документы, остатки и история покупок — всё через удобный веб-интерфейс, связанный с вашей базой 1С. Ключевой момент: кабинет работает без дополнительных лицензий 1С на каждого пользователя, потому что клиенты ходят не в саму 1С, а в отдельное веб-приложение, которое обменивается с ней данными по API.
Почему без лицензий на пользователя
Классический доступ клиентов напрямую в 1С упирается в стоимость лицензий на каждого. Я делаю иначе: отдельный веб-фронтенд (личный кабинет) обращается к 1С через HTTP-сервисы. Пользователи сидят в кабинете, лицензия 1С расходуется только на технические подключения обмена. Для компании с сотнями клиентов это принципиальная экономия.
Что умеет личный кабинет
- Заказы — клиент оформляет и отслеживает заказы, видит статусы из 1С.
- Каталог и остатки — актуальная номенклатура, цены и наличие прямо из базы.
- Документы — счета, акты, накладные, взаиморасчёты доступны на скачивание.
- Оплаты — онлайн-оплата через платёжный шлюз с разноской в 1С.
- Персональные условия — для B2B: индивидуальные цены, лимиты, отсрочки из вашей базы.
Преимущества подхода
- Экономия на лицензиях — веб-интерфейс вместо оплаты 1С за каждого пользователя.
- Удобство — понятный интерфейс, который освоит клиент без техподготовки.
- Полная связь с 1С — данные и функционал базы доступны в кабинете, синхронизация в обе стороны.
- Масштабируемость — новые функции и пользователи добавляются без переделки.
Как это устроено
Фронтенд кабинета делаю на современном стеке (Nuxt/Vue), серверную часть — на Django или на HTTP-сервисах самой 1С. Обмен с базой идёт по REST: кабинет запрашивает у 1С заказы, остатки, документы и отправляет обратно новые заказы и оплаты. Авторизация и разграничение доступа — на стороне веб-приложения, чтобы каждый клиент видел только свои данные.
Разработка личного кабинета под ключ: этапы и сроки
«Под ключ» означает, что со стороны заказчика нужен один человек, который отвечает на вопросы по учёту, — остальное беру на себя, включая публикацию 1С и сервер под веб-часть.
- Разбор задачи (несколько дней). Смотрим, что клиент должен видеть и делать в кабинете, какие данные для этого лежат в 1С и в каком виде. Здесь же выясняется, хватает ли типовых механизмов или нужны доработки в базе.
- Обмен со стороны 1С. Пишу HTTP-сервисы: заказы, номенклатура с ценами и остатками, документы, взаиморасчёты. Публикую базу на веб-сервере и закрываю доступ авторизацией — открытый HTTP-сервис в интернет выставлять нельзя.
- Веб-часть. Бэкенд на Django или на самих HTTP-сервисах 1С, фронтенд на Nuxt/Vue. Авторизация клиентов, разграничение доступа, корзина, история заказов, скачивание документов.
- Оплаты и уведомления, если нужны: платёжный шлюз, разноска оплат в 1С, письма о статусах заказа.
- Запуск и обкатка. Кабинет открывается сначала на нескольких лояльных клиентах, правятся формулировки и сценарии, потом рассылается всем.
Базовый кабинет с заказами, каталогом и документами занимает 4-6 недель. Персональные условия B2B, онлайн-оплата и нестандартный дизайн увеличивают срок.
От чего зависит цена
- Состояние 1С. Если база типовая и данные лежат «как положено» — обмен пишется быстро. Если учёт вели через реквизиты «на своё усмотрение», сначала приводим данные в порядок.
- Персональные условия. Отпускная цена по договору, скидки, лимиты и отсрочки — самая частая причина, по которой B2B-кабинет дороже B2C.
- Онлайн-оплата. Подключение шлюза и корректная разноска платежей в базе — отдельный объём работ.
- Дизайн. Кабинет на готовой UI-библиотеке дешевле, чем индивидуальная вёрстка по макетам.
- Нагрузка. Десяток оптовых клиентов и тысячи розничных — разные требования к кэшированию и к тому, как часто дёргается 1С.
Что получает заказчик
Исходный код кабинета и обмена со стороны 1С, развёрнутый на вашем сервере или в вашем облаке, с документацией по разворачиванию. Никакой абонентской платы за сам факт работы кабинета: он ваш, дальше его может вести любой разработчик. Поддержка и доработки — по желанию, отдельно.
Кабинет с нуля или готовое решение
Если сценарий типовой — оптовые клиенты смотрят прайс, видят свои цены и остатки, оформляют заказы, — быстрее и дешевле взять готовый B2B-портал для 1С и настроить его под вашу базу. Разработка с нуля оправдана, когда кабинет становится частью продукта: свои процессы согласования, нестандартные роли, интеграции с другими системами, особый путь клиента. На разборе задачи честно говорю, какой из двух вариантов ваш, — переплачивать за индивидуальную разработку ради типового прайс-листа смысла нет.
Что чаще всего идёт не так
- Кабинет дёргает 1С на каждый чих. Каталог на несколько тысяч позиций, собираемый запросами в базу при каждом открытии страницы, кладёт рабочую 1С. Данные для витрины кэшируются на стороне веба, в базу ходим за остатком и за оформлением заказа.
- HTTP-сервис опубликован без защиты. Публикация в интернет без TLS и авторизации — это открытый доступ к учётным данным компании.
- Цены «средние по больнице». B2B-клиент, увидевший в кабинете не свою цену, больше туда не вернётся. Цена всегда считается по договору конкретного контрагента.
- Запуск сразу на всех. Кабинет открывают всей базе клиентов в один день, и менеджеры получают вал вопросов вместо разгрузки. Правильнее — постепенно.
Кому подходит
Оптовым и B2B-компаниям, которые хотят дать клиентам самообслуживание: заказы, документы, взаиморасчёты без звонков менеджеру. Рознице и сервисам с B2C-кабинетом. Всем, кому дорого или неудобно пускать клиентов напрямую в 1С.
Результат
Работающий личный кабинет, связанный с 1С: клиенты сами оформляют заказы, оплачивают и скачивают документы, менеджеры разгружены, а компания не платит за лицензию 1С на каждого пользователя.
Примеры и готовые варианты
Как это выглядит на практике: кейс B2B-портал оптовых продаж с интеграцией 1С, а готовый вариант «под ключ» с ценой и сроками — решение B2B-портал для 1С.
Научу строить такие кабинеты
Связку веб-приложения с 1С разбираю на курсах «Django для 1С-разработчика» и «Nuxt и веб-интерфейсы для 1С» — от бэкенда на Python до фронтенда кабинета.