г. Москва, Дмитровское
шоссе, д. 3, корп. 1
наш номер
+7 (495) 109-63-75
заказать звонок

Нестандартная интеграция интернет-магазина на Битрикс с Мой склад

В CMS Bitrix предусмотрена возможность связать сайт со складскими программами, в частности 1С и Мой склад. Но часто клиентам недостаточно возможностей, которые заложены в штатной интеграции. Тогда возникает необходимость написать интеграцию «под клиента».

Подобная ситуация получилась у нашего постоянного клиента – интернет-магазина Мото85. При переносе сайта на Битрикс мы настроили штатную интеграцию с Мой склад. Но в процессе работы клиент пришел к выводу, что интеграция «из коробки» битрикса не решает всех его задач:
  • В интернет-магазине на Битриксе в карточке товара можно выбрать размер обуви или одежды. Наличие каждого размера и цена указывается отдельно. В Битриксе это называется торговыми предложениями. В моем складе есть аналогичная система, только в терминах Моего склада это модификации. И несмотря на то, что вроде как стандартная интеграция Моего склада и Битрикса должна подружить модификации с торговыми предложениями, по факту все намного сложнее, модификации в нужном виде не передавались на сайт. Фактически, при обмене данными новые товары попадал на сайт, но без размера, цвета и т.д. и их приходилось вносить вручную. Учитывая, что почти все товары клиента имеют размер и пр. свойства, требовалось постоянно оплачивать работу контентщика или самим сотрудникам магазина уделять свое время работе с торговыми предложениями.

Карточка товара с размерами на сайте Мото85

  • Вторым и весьма критичным моментом стало то, что Мой Склад при синхронизации передает всю информацию одним файлом. Из-за большого количества товарных позиций хостинг перестал выдерживать нагрузку. В периоды времени, когда запускался полный обмен данными между сайтом и Мой склад, хостинг падал. Даже после переезда на выделенный сервер наблюдались проблемы. Уменьшить нагрузку на сервер можно было путем разделения выгрузки на несколько этапов.
Были и дополнительные пожелания, которые клиент хотел бы реализовать при обмене данными, автоматизировав таким образом некоторые рутинные операции и добавив удобства для посетителей сайта. Все «хотелки» собрали в техническое задание из 2 этапов: в первый этап вынесли критичные доработки, на второй этап оставили доработки, которые создают дополнительные удобства при работе с сайтом.

ТЗ по интеграции Мой склад и Мото85

После этого программист приступил к работе над интеграцией. Как всегда, были определенные сложности:
  • сайт нельзя было отключать, т.к. каждый день его посещают покупатели + чтобы не потерять позиции в поиске. Потому все работы велись на тестовом сайте. Одновременно на действующем сайте периодически обновлялся функционал, добавлялись разные «фишки». Потому важно было следить за актуальностью кода на тестовом сайте, а после завершения работы над интеграцией – переносить на рабочий сайт код аккуратно частями ;
  • Мой склад вносил изменения в свое api (причем неожиданно для нас, когда бОльшая часть работы была выполнена).
Но все сложности были преодолены, клиент получил заточенную под его нужды интеграцию сайта и Мой склад:
  • товар создается в Мой склад, дальше при обмене данными передается на сайт, вместе с модификациями (на сайте они превращаются в торговые предложения), артикулами, весом, кратким описанием и параметром публикации на сайте (параметр, который указывает, отобрать товар на сайте или нет). На сайт из Мой склад передается розничная цена товара и цена товара со скидкой (через стандартную синхронизацию мой склад передавать эту цену не умеет). Также все изменения с категорией товара в Мой склад отображаются и на сайте (например, если в складской программе товар перенесли в Архив, то и на сайте товар перенесется в Архив).
  • заказы с сайта попадают в Мой склад. Причем данные с нескольких полей сайта собираются в одно поле Мой склад (данные из полей «Как к вам обращаться?», ««Как с вами связаться?», «Email», «Ваши комментарии к заказу» в складской программе содержаться в одном поле «Комментарий»). При изменении статуса заказа информация об этом передается на сайт и пользователь личном кабинете видит актуальный статус своего заказа. Также на сайт передается трекномер отправления.
  • постоянные клиенты, которые имеют скидки в системе мой склад, при входе в личный кабинет на сайте видят цену на товарах со своей скидкой.
  • статус товаров и торговых предложений на сайте привязан к остаткам в Мой склад. Причем, кроме привычных «В наличии», «Нет в наличии», существует статус «Под заказ». Все статусы определяются автоматически, путем проверки значений в нескольких полях.
Товар с разными статусами наличия
  • процесс обмена поделили на несколько этапов, что значительно уменьшило нагрузку на сервер. Риск нестабильной работы сайта из-за «падений» хостинга был устранен.
Проделанная работа способствовала экономии финансовых и временных ресурсов заказчика (больше не нужно вручную вносить модификации, менять статусы заказов и т.д.), а также открыла перспективы для дальнейшего усовершенствования функционала сайта.

Если Вам нужна помощь с настройкой связи Мой склад и сайта или нестандартная интеграция - заполните форму ниже. Наши специалисты свяжутся с Вами для уточнения деталей.