Учёт и интернет-магазин

Интеграция МойСклад с сайтом без ручного переноса данных

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

Состав проекта

Что синхронизируем
и проверяем

API МойСклад позволяет работать с документами, позициями, остатками и вебхуками. Но техническая возможность не определяет бизнес-правила: их согласуем отдельно для конкретного магазина.

01

Каталог

Сопоставляем товары, модификации, характеристики, изображения и постоянные идентификаторы. Определяем, где создаются новые позиции.

02

Цены

Фиксируем типы цен, округление, акции и приоритет источника. Не перезаписываем ручные изменения без согласованного правила.

03

Остатки

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

04

Заказы

Передаём состав, покупателя, доставку, скидки, оплату и внешний номер. Проверяем повторную отправку одного заказа.

05

Статусы

Сопоставляем этапы заказа и направление обновления, чтобы отмена или отгрузка не создавали конфликт между системами.

06

Журналирование

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

Результат

Управляемый обмен

Единые правила

Для каждого поля определены источник, направление и условия обновления.

Проверенные сценарии

Создание, изменение, отмена и повторная передача заказа протестированы отдельно.

Диагностика

Команда видит сбой и понимает, какие данные можно отправить повторно.

Этапы

Как запускаем интеграцию

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

01

Обследование

Проверяем CMS, текущие модули, структуру МойСклад, объём каталога, склады, права API и зависимые сервисы.

02

Карта данных

Документируем сущности, поля, идентификаторы, расписание, вебхуки, конфликты и ответственность сторон.

03

Реализация

Настраиваем готовый модуль либо отдельный обмен через API. Секреты храним вне публичного кода, доступы выдаются с минимальными правами.

04

Приёмка

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

Ограничения

Что определяет архитектуру

Типовой модуль подходит не для каждой схемы. Индивидуальный API-обмен нужен, если участвуют нестандартные поля, несколько сайтов, особые резервы или дополнительные системы.

Для первичного разбора подготовьте

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

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

Вопросы

До старта

Какие данные можно синхронизировать?

Обычно товары, варианты, цены, остатки, контрагенты, заказы и статусы. Точный набор зависит от CMS, тарифа, модуля и согласованной архитектуры.

Всегда ли нужна разработка через API?

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

Как не допустить дублей?

Используем постоянные внешние идентификаторы, фиксируем владельца данных и обеспечиваем идемпотентную повторную обработку. Это отдельно проверяется тестами.

Можно запустить без остановки магазина?

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

Первый шаг

Разберём ваш обмен

Опишите CMS, объём каталога и данные, которые сейчас переносятся вручную или с ошибками. Предложим первый проверяемый этап без подключения платных решений без согласования.