Все кейсы
Ритейл
Заказная веб-разработка
Конфигураторы
Интеграция в вашу команду
Интеграции и омниканальность
Разработка на 1С-Битрикс
Интернет-магазин

Разработка интернет-магазина и интеграций для Abamet-shop.ru

Клиент
Абамет
Дата запуска
Май 2017
Что сделали
Обновили визуальный стиль проекта и упростили его структуру. Улучшили навигацию, чтобы клиенты не терялись в каталоге.
Разработка интернет-магазина и интеграций для Abamet-shop.ru

О проекте

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

Цель

В рамках перехода компании с SAP на новую связку ERP + CRM нужно было встроить интернет-магазин в существующие бизнес-процессы и обеспечить стабильный обмен данными между 1С, Microsoft Dynamics и сайтом.

Задачи проекта

  • Спроектировать архитектуру обмена между интернет-магазином, 1С (ERP) и Microsoft Dynamics (CRM).
  • Реализовать обмен данными по протоколу SOAP.
  • Настроить передачу каталога, товаров, цен, остатков и SKU между системами.
  • Обеспечить обмен заказами, статусами заказов и данными клиентов.
  • Реализовать систему идентификации сущностей между несколькими базами данных.
  • Настроить безопасный обмен с двухуровневой проверкой доступа.
  • Разработать поэтапную дорожную карту внедрения интеграций.  

Развитие проекта

Обновление структуры и автоматизация процессов

Переработали структуру каталога, обновили навигацию и совместно с клиентом пересобрали вложенность разделов. Также разработали новый визуальный стиль и адаптировали под него остальные разделы сайта.

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

Структура проекта

Планируем архитектуру проекта

В 2019 решили уходить от старой системы SAP на новую связку ERP+CRM. В качестве систем интеграции были выбраны 1C как ERP, и Microsoft Dynamics как CRM.

За данную связку отвечал интегратор «Корус Консалтинг». Нашей задачей было внедрить в эти процессы интернет-магазин.  

Интеграции

Обмен по протоколу SOAP

SOAP — устоявшийся протокол обмена, который часто используется для интеграций с 1С вместо более свободного REST.

В отличие от REST, в SOAP используется единая точка входа, а маршрутизация методов описывается WSDL-файлом — XML-документом со структурой и описанием методов.

SOAP можно реализовать как на PHP, так и средствами Битрикс. Поскольку модуль Битрикс давно не обновлялся, в проекте использовали реализацию на SOAP-PHP.  

Планируем дорожную карту

При построении сложных обменов главное правильно начать. Нужно строить обмен от базового. Логичнее всего в магазине было начать именно с каталога, и потом добавлять к нему всё остальное.

  1. Разработка SOAP-сервера для приёма категорий и товаров.
  2. Создание SOAP-клиента для передачи остатков из корзины
  3. Создание SOAP-клиента для передачи клиентов в CRM
  4. Создание SOAP-сервера для приёмки уровней скидок
  5. Создание SOAP-методов для отдачи информации о заказах

Этапность строилась таким образом, что после каждого этапа происходила синхронизация баз данных, и пример когда мы делали реализацию передачи заказов, 1С уже понимала какие товары покупает клиент.  

Безопасность обмена

Защита и унификация обмена между тремя системами

Чтобы запрос прошёл, нужно чтобы вместе с передачей xml-пакета у системы был правильный basic auth заголовок. Если заголовок корректный, система проверяет валидность ключа обмена. Если ключ в пакете некорректный запрос отбраковывается.  

Идентификация данных

Защита и унификация обмена между тремя системами

В процессе задействованы три базы данных, а это значит что у каждой своя структура и логика хранения данных. Чтобы у систем была сквозная синхронизация и единые сущности идентифицировались одинаково, мы хранили все наборы идентификаторов.

Каждая сущность обмена описывалась например так:

ID_ERP:d1f5d2ce-4732-11e9-8dac-005056032acc

ID_CRM:752df240-ff4a-e911-a83c-000d3ab2daff

ID_IM:513-404-10e

ID_SAP:513-404-10E

Это удобно, так как при обмене, например товаром, каждая система знает, какой объект к ней пришел.  

Обмен с 1С

Контуры обмена с 1С

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

Техническое задание

Как описывать обмен без ошибок

ТЗ нужно разделить на три части (вырезки и рабочего ТЗ):

  • Описание порядка обмена по шагам, или в виде UML-диаграммы
  • Формат данных из пакета и соответствие записи в БД на стороне магазина
  • Пример запроса и ответа в формате обмена  

Техническое задание

Работа с клиентскими данными

CRM отвечает за работу с клиентами компании. Между магазином и системой передаются данные о физических и юридических лицах, объёмах покупок и уровнях скидок.

Разница в логике хранения

Основная сложность интеграции — различия в структуре данных.

В Битрикс покупатель — это одна сущность и одна запись в базе, а тип клиента (физлицо или юрлицо) определяется на уровне заказа через профиль покупателя.

В CRM иерархия сложнее: существует сущность компании, внутри которой может быть любое количество клиентов.

Решение

Чтобы не менять существующую схему хранения, разработали скрипт, который расширяет данные пользователей и передаёт их в унифицированном виде. Далее CRM самостоятельно распределяет компании и клиентов как отдельные сущности.  

Сервер очередей

Очередь сообщений для обмена между системами

Поскольку интернет-магазин, 1С и CRM находятся на разных серверах и обмениваются данными по сети, понадобился минимальный сервер очередей. Его задача — повторная отправка сообщений при ошибках или временной недоступности систем.

Готовые решения вроде RabbitMQ оказались избыточными для этой задачи, поэтому реализовали собственный скрипт и агента для работы с пакетами сообщений.

Как работает механизм

  • скрипт отслеживает коды ошибок обмена;
  • при ошибке событие логируется вместе с методом и временем;
  • данные записываются в инфоблок;
  • если время события превышает заданный лимит, выполняется повторная отправка сообщения.  

Логгирование

Класс работы с логами

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

Как функции выполняет класс работы с логами

  • Единая структура логгирования событий
  • Единый формат
  • Единая машрутизация логов
  • Единые правила именования по суткам
  • Сборка мусора (логи старше недели удаляются)  
Руководитель проекта
Дима Хоружко
Архитектор обмена
Дима Хоружко
PHP разработчики
Денис Иванов
Руслан Кадыров
Команда Webcom Media
Татьяна Снитич
Светлана Валяк
Команда клиента
Дмитрий Сенькевич
Владимир Киселев
Андрей Малашевич
Андрей Малашевич
Андрей Малашевич
Руководитель управления маркетинга и рекламы, Paritetbank

ОАО «Паритетбанк» благодарит ООО «Найнсевен» за сотрудничество в рамках разработки корпоративного сайта www.paritetbank.by.

Смотреть отзыв
Екатерина Полещук
Екатерина Полещук
Руководитель отдела маркетинга, ООО «Профессиональные правовые системы»

Выражаем благодарность за завершенный проект по обновлению нашего корпоративного сайта www.business‑info.by.

Смотреть отзыв
Александр Шостак
Александр Шостак
Директор, ООО «ИКомЧардж»

Специалистами ООО «Найнсевен» были неоднократно успешно осуществлены подключения механизма онлайн-платежей

Смотреть отзыв
Павлова Валентина Петровна
Павлова Валентина Петровна
специалист по развитию торговой марки, Аливария
За время сотрудничества компания ООО «Найнсевен» зарекомендовала себя как надежный и ответственный партнер.
В.Т. Одорский
В.Т. Одорский
заместитель Генерального директора по маркетингу, СООО «Мобильные Теле Системы»

ООО «Мобильные Теле Системы» (далее – МТС) выражает искреннюю благодарность команде ООО «Найнсевен» (далее - Найнсевен) за качественное оказание услуг по администрированию и технической поддержке сайта mts.by.

Смотреть отзыв
Н.А. Булаш
Н.А. Булаш
Заместитель Генерального директора по коммерческим вопросам, СООО «Мобильные ТелеСистемы»

СООО «Мобильные ТелеСистемы» выражает благодарность команде ООО «Найнсевен» за профессиональную разработку и техническую поддержку интернет-магазина shop.mts.by.

Смотреть отзыв
Е.А.Ломеко
Е.А.Ломеко
Генеральный директор, Брестское РУП «Фармация»

Брестское РУП «Фармация» с 2018 года сотрудничает с компанией «Найнсевен» по вопросам разработки корпоративного сайта, развертыванию на его базе функционала Интернет-аптеки, по технической поддержке и развитию указанных информационных ресурсов. 

Смотреть отзыв
Лариса Купава
Менеджер по маркетингу, SvitLand Development Limited

Мы довольны сотрудничеством с Nineseven. Удобная программа управления проектом и быстрое реагирование сделали даже удаленную работу комфортной.

Смотреть отзыв
У.С. Савиных
У.С. Савиных
Продюсер, МФР Red Apple

Фестиваль Red Apple сотрудничал с Nineseven с 2013 по 2014 год. Благодаря профессионализму сотрудников был создан эффективный и удобный сайт фестиваля www.festival.ru.

Смотреть отзыв
Алексей Сидоров
Алексей Сидоров
Алексей Сидоров
Основатель и руководитель проекта, Prodengi.kz

Интернет-портал prodengi.kz выражает благодарность команде Nineseven за взаимовыгодное сотрудничество и добропорядочные отношения. Мы ценим профессионализм, креативность и качественный сервис, который предоставляет Nineseven.

Смотреть отзыв
Александр Кузьменко
Александр Кузьменко
Александр Кузьменко
Руководитель проекта, Игры@Mail.Ru
Спасибо за работу! Рассчитываем на дальнейшее сотрудничество в таком же ключе.
Смотреть отзыв
А.В. Любимова
А.В. Любимова
Генеральный директор, ООО «Акомпани»
Выражаем благодарность за плодотворное сотрудничество в 2010 году. Благодаря уровню профессионализма и лидерским качествам команды мы достигли значительных успехов.
Смотреть отзыв
Денис Бурлаков
Денис Бурлаков
Руководитель, Интернет-магазин Deniliz.com

Отмечаем творческий подход команды Nineseven: совместно с нами они проработали техническое задание, помогли определить структуру сайта и реализовать проект с учетом потребностей аудитории.

Смотреть отзыв
И. Шумицкий
И. Шумицкий
И. О. директора департамента маркетинга, Банк Хоум Кредит (Казахстан)
Выражаем благодарность компании Nineseven за создание сайта www.homecredit.kz.
Смотреть отзыв
А.Н. Григорьева
А.Н. Григорьева
Генеральный директор, ООО «Тренд Ритейл Групп»

Надеемся на дальнейшее и столь же успешное сотрудничество.

Смотреть отзыв
И.С. Федюкин
И.С. Федюкин
Директор по развитию бизнеса, ООО «НЕВМЕДИА»

Компания ООО «НЕВМЕДИА» благодарит Курдюк Зою за сотрудничество. По нашему мнению, Курдюк Зоя — профессиональный специалист с высокой квалификацией в области дизайна, ответственная и надежная в деловых взаимоотношениях.

Смотреть отзыв
Н. А. Булаш
Н. А. Булаш
Руководитель коммерческого департамента, Мобильные ТелеСистемы

ООО «Найнсевен» является разработчиком интернет-магазина shop.mts.by и на протяжении шести лет обеспечивает его поддержку и обновление.


Смотреть отзыв
Д.С. Костин
Д.С. Костин
Д.С. Костин
Начальник службы по связям с общественностью и СМИ, ПАО «Газпром Трансгаз Беларусь»

Свидетельствую почтение и выражаю благодарность компании Nineseven и лично Дмитрию Хоружко за разработку и реализацию творческой идеи дизайна сайта проекта Многофункционального комплекса «Газпром Центр».

Смотреть отзыв
С.В. Белов
С.В. Белов
Генеральный директор, ООО «Вектор-Парфюм»

Компания ООО «Вектор-Парфюм» благодарит дизайнерскую студию Nineseven за разработку графической части интернет-магазина парфюмерии и косметики Bonange.ru. Сотрудники студии — настоящие профессионалы своего дела и обладают высокой квалификацией в области дизайна.

Смотреть отзыв
И.Е. Адаменко
И.Е. Адаменко
Заместитель директора, ОДО «БелТоргПродукт»
Рекомендуем ООО «Найнсевен» как надежного партнера, добросовестно выполняющего свои обязательства.
Смотреть отзыв

Медиа

Telegram-канал

Из первых уст о внутренней жизни агентства

Перейти в TG-канал
Nineseven
Новые технологии — новые проблемы
Люблю смотреть всякие красивые графики и таблицы. На Pinterest могу долго залипать в подборках инфографики от древности до наших дней. И вот во время одной из таких вылазок пришла банальная мысль: насколько же легче стало упаковывать аналитику в понятный вид и насколько тяжелее при этом стало ее воспринимать.

Объясню в разрезе нашей работы. Чтобы создать дашборд со всякой аналитикой лет 15 назад, нужно было:
1. Собирать данные в одну базу и разгребать их оттуда вручную: продажи, заявки, прогресс по проекту — все ручками

Публикации в СМИ

Обсудим задачу

Мы свяжемся с вами, чтобы задать вопросы и обсудить задачу, цену, сроки и результат.

Это бесплатно и ни к чему вас не обязывает.

Поле обязательно к заполнению
Поле обязательно к заполнению
Поле обязательно к заполнению
Пожалуйста, ознакомьтесь и подтвердите согласие
Дмитрий Хоружко
Дмитрий Хоружко CEO Nineseven