- Заказчик
- Clever Wear - торговая марка одежды и белья для всей семьи.
- Задача
- Автоматизировать работу компании Clever с текущими оптовыми клиентами и дилерами и увеличить эффективность b2b-продаж с помощью внедрения новых сервисов и инструментов.
Цели и задачи
Цель: помощью b2b-портала компания хотела автоматизировать прием и обработку оптовых заказов, привлечь новых партнеров, наладить документооборот и многое другое.
Задачи:
- Разработать b2b-каталог с классификатором, фильтрами и разными группами цен для разных категорий пользователей;
- Настроить работу корзины и оформления заказа с набором разных сущностей: резерв, заказ, предзаказ, поставка, отгрузка;
- Создать удобный и функциональный личный кабинет для 4 ролей клиентов;
- Организовать интеграцию b2b-портала с учетной системой Заказчика на базе 1С по разным сущностям c использованием асинхронного обмена;
- Реализовать возможность прямого общения менеджеров с клиентами посредством чата "Связь с менеджером";
- Организовать сервис документооборота в рамках личного кабинета;
- Реализовать систему региональной доступности товаров в каталоге.
Агрегация требований
- Мы разработали концепцию проекта, в которой зафиксировали 4 этапа создания и развития нового b2b-портала.
- Реализация витрины товаров, формы обратной связи и возможности подать заявку на партнерство, интеграция с 1С, поиск по сайту, настройка редиректов со старого сайта. Реализация бизнес-процесса рассмотрения заявки на партнерство.
- Реализация каталога товаров, корзины и оформления заказа с возможностью резервирования товаров в наличии и по предзаказу, а также с предоплатой и постоплатой. Разработка личного кабинета для внешних пользователей (регистрация, авторизация новых клиентов), раздела “Дебиторская задолженность”.
- Добавление функций запуска бизнес-процессов с b2b-портала и Битрикс24 и получения результата бизнес-процесса в данных системах. Реализация модуля “Чат”, план продаж и другие доработки личного кабинета для внешних пользователей.
- Введение новых ролей “Дистрибьютор” и “Клиент, работающий с дистрибьютором”. Реализация API для синхронизации наличия, остатков, цен и заказов Дистрибьюторов и др.
Этапы работ
- Разработка частного технического задания на итерацию работ
- Прототипирование, дизайн, UX/UI-kit
- Frontend и backend-разработка
- Интеграция с 1С Настройка бизнес-процессов на стороне "1С-Битрикс24: Энтерпрайз"
- Тестирование и запуск
Выбор платформы
Одной из самых важных задач нового проекта была организация бизнес-процессов по учету клиентов и согласованию документов в Битрикс24 Заказчика на базе лицензии Энтерпрайз.
Бизнес-процесс должен запускаться на стороне b2b-портала, внутреннее согласование проводится внутри Битрикс24, а после согласования на b2b-портал обратно должны выгружаться результаты данного бизнес-процесса. После долгих обсуждений было принято совместное, нестандартное решение - реализовать b2b-портал, используя на backend’е коробочную версию Битрикс24 на сервере Заказчика.
Решение
Каталог и цены
Новая версия b2b-портала в отличии от старой имеет широкие возможности: умный фильтр, сортировка, сравнение товаров, “недавно смотрели”, хиты продаж, распродажа, коллекции, карточка быстрого просмотра и т.д.
Товары и торговые предложения с актуальными остатками выгружаются из 1С Заказчика. Торговые предложения реализованы не по классической схеме, а в виде кастомного выбора цвета, размера и количества.
Для товаров и торговых предложений существуют 2 типа цен:
- Базовая цена - по умолчанию выгружается из 1С, доступна для всех пользователей.
- Распродажная цена - выгружается вместе с базовой ценой, доступна только для авторизованных пользователей.
Корзина и оформление заказа
- Только авторизованные пользователи могут добавлять в корзину товары, торговые предложения, сформированные wish-листы товаров.
- Реализована возможность объединения заказов, которые находятся в одном статусе. 1С может как удовлетворить запрос, при этом объединенные заказы удаляются и создается новый, так и отклонить его, тогда заказы возвращаются в первоначальный статус.
- Настроена фильтрация по статусам, сортировка по дате, поиск по артикулу, быстрый фильтр заказов, доступных к поставке.
- Предусмотрена возможность выгрузки всех картинок товаров, которые находятся в заказе.
Реализована нестандартная бизнес-логика оформления заказа. Конечной целью бизнес-процесса оформления заказа является формирование поставки.
- Формирование поставки может быть как на один заказ, так и на несколько.
- Пользователь выбирает соглашение, по которому он хочет осуществить отгрузку (перечень синхронизируется с 1С).
- Далее пользователь выбирает один из способов доставки заказа: доставку или самовывоз в конкретную дату.
- При формировании поставки в 1С отправляется запрос на создание отгрузки.
- После того как отгрузка собрана, из 1С передается статус “Отгружен”.
Пользователь также может оставить заявку на предзаказ - это сбор заявок до пошива коллекции. Отличие от заказа в том, что здесь нет системы скидок и не отображаются остатки. Предзаказ также синхронизируется с 1С, осуществляется бронирование заказа и присваивается статус “создан в резерв”. Предзаказы можно при необходимости редактировать. После отшива коллекции из 1С приходит статус “Обеспечен”, после чего партнер может переводить предзаказ в заказ и поставку по сценарию, описанному выше.
Личный кабинет партнера
В профиле партнера отображаются:
- личные данные (персональный менеджер и его контакты, наименование партнера, реквизиты и т.д.);
- сотрудники и партнеры: возможность добавления обеих сущностей автоматизирована, данные отправляются в 1С, а на e-mail партнера/сотрудника приходят данные для входа в ЛК;
- форма обратной связи;
- адреса доставок: через форму заявки партнер добавляет адрес доставки. Заявка уходит в 1С, которая обрабатывает запрос, после чего либо выгружает новый адрес для компании, либо нет.
- документы: представлены договоры и соглашения, акты расчета премии. Они выгружаются из Битрикс24. Можно через форму запросить акты-сверки, запрос уйдет на e-mail менеджера.
- в “шапке” в виде виджетов отображаются дебиторская, просроченная задолженность, отгрузки за текущий месяц из 1С.
Списки (wish-листы)
Для авторизованного пользователя есть возможность создавать неограниченное количество списков и добавлять туда избранные товары. В самом списке партнер может выбрать то количество товаров, нужного цвета и размера, которое ему необходимо добавить в корзину.
Добавить в корзину можно как весь список целиком, так и отдельные позиции. Этот функционал существенно оптимизирует процесс поиска и выбора товаров и торговых предложений.
Планы
План устанавливается только для тех клиентов, которые работают без партнеров, либо для главной компании клиента с дочерними.
Список планов по товарным группам выгружается из 1С:
- название товарной группы
- сумма плана по товарной группе
- сумма выполнения плана в рублях и в процентах
- персональная скидка на товарную группу
- сумма ретро-бонусов по товарной группу (значение отображается только тогда, когда сумма выполненного плана равна или выше суммы плана)
Интеграция с 1С и Битрикс24
Для реализации проекта был разработан собственный обмен на базе протокола JSON-RPC 2.0. Все запросы обрабатываются в асинхронном режиме. Это значит, что сообщения предварительно добавляются в очередь, из которой рассылаются фоновым процессом. Это увеличивает быстродействие системы, потому что конечным пользователям не нужно будет ждать, пока произойдет обработка данных смежной системой.
Асинхронность запросов также защищает от потери данных в случае недоступности обменивающихся систем.
Стек
- Backend: 1С-Битрикс, PHP
- Frontend: JS, LESS, React, Redux, Typescript
- Инфраструктура: GitLab & Docker
- Интеграции: JSON RPC 2.0
Результаты
Заказчик получил полноценный многофункциональный b2b-портал. В настоящее время происходит подключение текущих партнеров клиента к новому сервису. Для успешной реализации проекта мы использовали метод гибкого управления Agile.
Мы запускали итерации параллельно, занимались версткой и frontend-разработкой одновременно с интеграцией с 1С и программированием. Благодаря такому подходу нам удалось реализовать портал в установленные сроки.
Перейти на сайт