Интеграция услуг между МойСклад и сайтом
Услуги вывели
в каталог и заказы
наравне с товарами
Для интернет-магазина издательства «Когито-Центр» расширили типовую интеграцию так, чтобы услуги из МойСклад стали полноценными сущностями на сайте: отображались в каталоге, участвовали в заказах и корректно проходили синхронизацию в обе стороны.
Задача
Что нужно было закрыть
Нужно было не просто показать услуги в интерфейсе, а встроить их в ту же рабочую логику, что и товары: выгрузка из МойСклад, размещение на сайте, работа с заказами, цены и свойства.
Позиции должны были появляться на сайте в обычной структуре каталога или в отдельном разделе без ручной сборки.
Услуги должны были одинаково корректно попадать в заказ и со стороны сайта, и со стороны МойСклад.
Для услуг нельзя опираться на складские остатки, поэтому логика наличия должна работать иначе, чем для обычных товаров.
Нужна была отдельная настройка связей для атрибутов и прайсов, чтобы услуги не выпадали из обмена данными.
Решение
Что именно сделали
Реализовали дополнительный функционал поверх стандартной интеграции: отдельные настройки для услуг, двустороннюю передачу заказов, обработку позиций без остатков и возможность гибко встраивать услуги в каталог сайта.
Интерфейсы
Как это выглядит в работе
На экранах ниже видно, как услуги появляются в МойСклад, попадают на сайт, получают свойства и участвуют в заказах без отдельной ручной обработки.
Услуги ведутся в МойСклад как самостоятельные позиции
В учетной системе услуги находятся в общем контуре товаров и услуг, поэтому дальнейшая выгрузка не требует отдельного ручного списка или вспомогательного справочника.
На сайте услуги размещаются как обычные позиции каталога
После выгрузки услуги отображаются на стороне сайта и могут лежать как в отдельном разделе, так и внутри общей структуры каталога вместе с товарами.
Для услуг настроены отдельные связи полей, атрибутов и цен
Обмен не ограничивается только фактом выгрузки. Для услуг реализованы настройки соответствий, чтобы поля сайта и поля МойСклад связывались напрямую, а цены передавались по заданной логике.
Услуги проходят в заказах в обе стороны без отдельного сценария
Позицию можно добавить в заказ на сайте и увидеть ее в МойСклад. Обратный сценарий тоже работает: если услуга включена в заказ в МойСклад, она корректно отображается на стороне сайта.
Итог
Что дало решение
Интеграция перестала ограничиваться только товарным каталогом. Бизнес получил возможность работать с услугами по той же понятной схеме, что и с товарами: выгружать, настраивать, продавать и синхронизировать без лишних ограничений.
Услуги можно публиковать на сайте как полноценные позиции, а не как исключение из общей модели данных.
Позиции с услугами корректно живут в заказах и на сайте, и в МойСклад.
Связи свойств и типов цен позволяют адаптировать интеграцию под реальную структуру каталога.
Логика услуг не упирается в складской учет и остается пригодной для цифровых и сервисных позиций.