Никита.Бердников
Услуга · МойСклад

Разработка решений под МойСклад — обвязка с CRM, маркетплейсами и сайтом

МойСклад как ядро товароучёта. Пишу коннекторы и обвязку под JSON API — синхронизирую остатки, заказы и цены с amoCRM, сайтом, маркетплейсами и 1С там, где штатных интеграций не хватает.

Как я работаю с МойСклад

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

Главная задача почти всегда одна: чтобы остатки, заказы и цены не вели в трёх местах руками. Я пишу коннектор под JSON API МойСклад — прослойку с очередью, повторными попытками и мониторингом расхождений, которая держит данные в одном контуре и не разваливается на первой же ошибке сети.

Что обычно связываю

Под задачу бизнеса соединяю МойСклад с тем, что у вас уже есть:

  • amoCRM или Bitrix24 — заказы и оплаты идут в сделки, статусы синхронизируются в обе стороны.
  • Сайт или интернет-магазин — остатки и цены уезжают на витрину, заказы возвращаются в учёт.
  • Маркетплейсы — синхронизация остатков и заказов, чтобы не продать то, чего нет на складе.
  • 1С — обмен номенклатурой, документами и взаиморасчётами без двойного ввода.

Где ломаются штатные интеграции

Первый источник расхождений — сопоставление по названию. Готовые модули ищут товар по наименованию, поэтому лишний пробел или правка буквы порождают дубль позиции, и остаток разъезжается. Я связываю справочники по коду или артикулу, а таблицу соответствий храню в базе коннектора, чтобы сопоставление переживало переименования и смену поставщика.

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

Третий — лимиты и сбои. У JSON API МойСклад есть ограничение по частоте запросов, и при массовой выгрузке модуль упирается в него, теряя часть данных молча. В коннекторе стоит очередь с повторными попытками и выдержкой, идемпотентный ключ на заказ, чтобы повтор не создавал дубль, и журнал: видно, какая позиция не доехала и почему.

Отдельная история — модификации и характеристики. Размеры и цвета на витрине и в учёте описаны по-разному, и без явного отображения вариантов остатки сходятся только по общей сумме карточки. Это разбираю до кода, вместе с вашим товароведом.

Как устроен проект по шагам

Начинаю со сверки справочников. Выгружаю номенклатуру из МойСклад и из систем, которые к нему привязываются, и ищу расхождения: дубли, позиции без артикула, товары, которых в учёте нет вовсе. Пока справочники не сведены, обмен будет размножать ошибки, поэтому чистку делаю до разработки.

Дальше фиксирую карту полей и правила: откуда берётся цена для каждого канала, что считается свободным остатком с учётом резервов, какому статусу заказа в МойСклад соответствует этап сделки в CRM. Карту согласовываем письменно, она же становится основой документации и передаётся вместе с кодом.

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

Пакеты и цены

Выбирайте объём — от стартового аудита до полного цикла

Под ключ

Обвязка и интеграции

3–6 недель
  • Для кого: МойСклад как ядро учёта, нужно связать с amoCRM, сайтом, маркетплейсами, 1С
  • Синхронизация остатков, заказов, цен, статусов — двусторонний обмен
  • Коннектор-прослойка под JSON API МойСклад: очередь, ретраи, логирование
  • Мониторинг расхождений, runbook на поддержку
  • Не входит: разработка самого сайта и доработка 1С — отдельные задачи
от

160 000 ₽

Настройка МойСклад

1–2 недели
  • Для кого: розница или e-commerce поднимает товароучёт с нуля
  • Завожу номенклатуру, склады, документы, права доступа, печатные формы
  • Настраиваю статусы заказов и базовые сценарии под процесс клиента
  • Обучаю команду
  • Не входит: интеграции с внешними системами — отдельный пакет
от

60 000 ₽

Поддержка интеграций

месячные циклы
  • Для кого: работающая обвязка МойСклад, нужен владелец синхронизаций
  • Слежу за коннекторами, чиню падающие обмены, добавляю источники
  • Включено: 5 часов в месяц, сверх — 4 500 ₽/ч
  • Не входит: подключение новых крупных систем — отдельный пакет
от

25 000 ₽

Условия работы

  • Оплата 50/50: аванс на старте, остаток после приёмки.
  • Смета фиксируется до начала работ и не растёт, пока не меняется объём.
  • 30 дней после сдачи правлю баги в сделанном функционале бесплатно.
  • Договор с ИП, закрывающие документы.
  • Код, доступы и документация — ваши с первого дня. Систему при необходимости подхватит любой подрядчик, без закрытых решений и привязки ко мне.

Вопросы и ответы

Можно ли синхронизировать МойСклад с amoCRM?

Да. Пишу коннектор под API обеих систем: заказы и оплаты из МойСклад попадают в сделки amoCRM, статусы синхронизируются в обе стороны. Обмен идёт через прослойку с очередью и логами — если МойСклад или CRM на минуту недоступны, данные не теряются, а догоняются позже.

Чем коннектор лучше готового модуля или no-code-связки?

Готовый модуль закрывает типовой сценарий. Как только у вас своя логика — резервирование, частичные отгрузки, несколько складов, свои статусы — коробочная связка либо не умеет этого, либо ломается на объёме. Я пишу обмен под вашу логику, с контролем расхождений: видно, какие позиции разошлись и почему, и это можно починить, а не гадать.

Синхронизация остатков двусторонняя?

Зависит от задачи. Чаще остатки ведутся в МойСклад и уезжают на витрину и маркетплейсы (одно направление), а заказы возвращаются обратно в учёт. Если нужно сводить остатки из нескольких источников — делаю двусторонний обмен с правилами приоритета, чтобы не было гонки данных.

Свяжете МойСклад с маркетплейсами и сайтом на WooCommerce?

Да, это частый контур: МойСклад как учёт, WooCommerce как витрина, маркетплейсы как каналы продаж. Остатки и цены расходятся из одной точки, заказы со всех каналов собираются в учёт. Разработка под WooCommerce у меня — отдельное направление, и я соединяю его с МойСклад в единый контур.

Сколько стоит и сколько занимает?

Настройка МойСклад под задачу — от 60 000 ₽, 1–2 недели. Обвязка и интеграции — от 160 000 ₽, 3–6 недель, в зависимости от числа систем и сложности обмена. Точную смету называю после созвона. Дальше доступна поддержка интеграций от 25 000 ₽/мес.

У нас в номенклатуре дубли и нет артикулов. Это проблема?

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

Как я узнаю, что обмен сломался?

Коннектор пишет журнал по каждой операции и считает расхождения между МойСклад и подключёнными системами. При росте очереди, серии ошибок API или расхождении остатков ответственному приходит уведомление в Telegram или MAX. В runbook описано, что делать в каждом случае: перезапустить очередь, перевыпустить токен, догнать период вручную. Отчёт о расхождениях приходит ежедневно, даже когда обмен идёт без ошибок.

Попадёт ли выручка из МойСклад в сквозную аналитику?

Да, это частая причина браться за обвязку. Оплаченный заказ из МойСклад привязываю к сделке в CRM, а сделку — к визиту с рекламной меткой. После этого окупаемость канала считается по фактической оплате и марже, вплоть до конкретной товарной группы. Витрины под такие отчёты собираю в DataLens или ClickHouse. Связка сделок с рекламными системами — отдельное направление по сквозной аналитике.

Обсудим проект?

Отвечу лично в течение рабочего дня. Начнём с короткого разбора — без обязательств и без обзвонов.

Отвечаю сам в течение 2 часов в рабочее время. Без спама и обзвонов.