Невозможно представить современную розничную торговую сеть без программ лояльности. В связи с этим хочу рассказать про интересную задачу по данной теме.
Компания в своей работе использует программу 1С: Управление торговлей, в которой они активно пользуются бонусной системой. А товар продаётся не только через розничные точки, но и через интернет-магазин на базе Битрикса.
Вот только обмен бонусами в работе стандартного модуля не предусмотрен. Бонусы просто не поддерживаются самим сайтом. Соответственно, именно такая задача и была поставлена — связать бонусы в 1С с сайтом.
А зачем, собственно, нужны бонусы на сайте?
Бонусов на сайте не было, и покупатели не могли воспользоваться бонусными баллами через интернет-магазин, что вызывало серьезное неудобство. У интернет-покупателя тоже должна быть возможность видеть остаток своих бонусов и оплачивать ими свои покупки на сайте, а в 1С базе должно быть всё учтено. Компания просто теряла репутацию и клиентов, ведь значительная часть заказов приходила именно с сайта.
Возможные пути решения задачи
Стандартный модуль обмена с Битриксом встраивается в 1С и удовлетворяет бОльшую часть потребностей клиентов по работе с сайтом и 1С. Как правило, задачи обмена сводятся к двум типам:
- Выгрузка из 1С на сайт товаров с подробной информацией по ним, включая цену и свободный остаток;
- Загрузка в 1С появляющихся на сайте заказов.
Информация по бонусам не выгружается, и нам необходимо устранить эту проблему.
Решение данной задачи влечёт изменения не только в конфигурацию 1С, но и модули сайта.
Остановимся на двух самых очевидных вариантах настройки обмена бонусами:
1. Обмен с сайтом информацией по бонусам через FTP/HTTP.
Иными словами, на сайте должен быть тоже реализован учет бонусов и они, как товары, заказы, цены и остатки, также должны синхронизироваться с 1С-кой с помощью обмена файлами. Обмен происходит на стороне 1С вручную, либо по заданному расписанию.
Плюсы:
- это решение технически самое простое. Для доработки со стороны 1С необходима только конфигурация 1С (не нужны веб-сервер, статический IP, дополнительные клиентские лицензии 1С и настройки).
Минусы:
- требуется некоторая доработка сайта (отдельная таблица для хранения данных), а также модуля обмена как со стороны 1С, так и со стороны сайта;
- есть опасность предоставления ошибочной информации, если обмен со стороны 1С не был произведен своевременно.
2. Прямое подключение к базе 1С посредством HTTP-сервиса со стороны сайта только для получения данных по бонусам в момент оформления заказа и при получении сведений о бонусах в соответствующем разделе в личном кабинете.
Плюсы:
- ещё проще доработка со стороны сайта, не требующая внесения серьезных изменений в работу;
- отсутствует необходимость затрагивать уже настроенный и исправно работающий модуль обмена 1С и сайта. Низкая вероятность испортить то, что уже функционирует;
- данные хранятся только в одном месте, поэтому расхождений данных на сайте и в базе быть не может;
- всегда актуальные данные, поскольку информация о бонусах берется из 1С предоставляется на момент запроса онлайн.
Минусы:
- потребуются веб-сервер, статический IP, дополнительные клиентские лицензии 1С.
При этом очень важно помнить, что всегда имеется опасность того, что одновременно с нескольких компьютеров будет произведена попытка списания бонусов с одной карты лояльности. В таком случае компания может потерять значительные суммы денег: ведь бонусные баллы используются в качестве оплаты. Этот момент является ключевым при настройке всей системы, поэтому потребовалось обеспечить централизованный механизм начисления/списания бонусных баллов. При несоблюдении этого требования вся работа сразу потеряла бы свой смысл. А вот в качестве сервера обработки транзакций (в нашем случае — центра обработки бонусов) отлично подходит 1С. Поэтому выбор и пал на второй вариант.
Что мы получили в итоге
В результате в личном кабинете покупателя в разделе “Бонусы” пользователь видит свой остаток бонусов и историю операций.
Стоимость решения
Мы не будем учитывать стоимость работ со стороны разработчиков сайта. А вот доработка 1С для этой задачи заняла 10 часов, плюс час для настройки связки веб-сервера и 1С. Для работы такой системы нужны несколько свободных клиентских лицензии и статический IP адрес для веб сервера.
Как это работает. Техническое описание
Сайт через HTTP-сервис запрашивает у 1С бонусы по интересующему его клиенту. 1С обрабатывает запрос и в качестве ответа возвращает таблицу начисленных/списанных бонусов.
HTTP-сервисы имеют ряд преимуществ:
- простота разработки запросов;
- потенциально меньший объем данных для передачи;
- потенциально меньшая вычислительная нагрузка;
- компактный формат передачи данных JSON.
Однако, если вы захотите внедрить вышеописанный способ, нужно учитывать технические требования для создания HTTP-сервиса в 1С:
- Веб-сервер: IIS или Apache 2.2 (с версии платформы 8.3.8 поддерживается Apache 2.4);
- Статический «белый» IP-адрес веб-сервера;
- Версия платформы выше 8.3.5.1068 с установленным расширением веб-сервера;
- Свободные клиентские лицензии 1С для внешних подключений;
- Пользователь 1С для работы HTTP-сервисом.
А можно ли передавать таким образом что-нибудь еще?
Да, именно так! Выбранный способ решения хранит в себе множество дополнительных возможностей. Необязательно ограничиваться лишь бонусами. Сайт может запрашивать из 1С всё, что угодно для удобства работы клиента с сайтом, например:
- Сверка взаиморасчетов;
- Личная статистика пользователя по продажам или обработанным заказам;
- Доступ к скрытой от других пользователей информации, индивидуальные предложения и акции.
Добрый вечер, у Вас можно приобрести данный модуль, ответьте мне пожалуйста.
Добрый день! Возможно, вы можете написать нам на почту info@1-sys.ru со своими контактами, что бы наш специалист мог с вами связаться
Здравствуйте! Тоже интересуюсь покупкой модуля для сайта
Добрый день! Возможно, вы можете написать нам на почту info@1-sys.ru со своими контактами, что бы наш специалист мог с вами связаться