---
title: "МойСклад: Гибкий обмен заказами по API"
url: "https://despi.ru/modules/rbs-moysklad"
description: "Двусторонний обмен заказами между интернет-магазином на 1С-Битрикс и МойСклад по JSON API 1.2: статусы, корзина, контрагенты, оплаты, отгрузки и свойства заказа — с веб-хуками для мгновенной передачи изменений."
updated: "2026-10-01"
---

# МойСклад: Гибкий обмен заказами по API

> Двусторонний обмен заказами между интернет-магазином на 1С-Битрикс и МойСклад по JSON API 1.2: статусы, корзина, контрагенты, оплаты, отгрузки и свойства заказа — с веб-хуками для мгновенной передачи изменений.

- Категория: Интеграции
- Работает с: МойСклад, Интернет-магазин, Заказы, Веб-хуки, Интеграция
- Цена: 14 990 руб.
- Демо-период: 14 дней
- Установок: более 900
- HTML-версия: https://despi.ru/modules/rbs-moysklad
- Инструкция по установке: https://despi.ru/modules/rbs-moysklad#module-install
- Маркетплейс: https://marketplace.1c-bitrix.ru/solutions/rbs.moysklad/
- Документация: https://docs.despi.ru/rbs-moysklad/

## Описание

# Интеграция 1С-Битрикс и МойСклад: двусторонний обмен заказами по API

Модуль связывает интернет-магазин на 1С-Битрикс и МойСклад в одну базу заказов. Покупатель оформляет заказ на сайте — в МойСкладе появляется заказ покупателя: с контрагентом, корзиной, ценами и скидками, доставкой, оплатой и нужными свойствами. Менеджер меняет статус, состав или комментарий в МойСкладе — изменение возвращается в заказ на сайте. Обмен идёт напрямую по JSON API 1.2, без файлов выгрузки и стандартного обмена.

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

## Что синхронизируется

- **Заказы** — создание и обновление в обе стороны, включая импорт заказов, созданных в МойСкладе.
- **Статусы** — по таблице соответствий, с флагом отмены заказа и защитой завершённых заказов от повторной смены статуса.
- **Корзина** — состав, количество, цены и скидки позиций, модификации, раскрытие комплектов, стоимость доставки.
- **Контрагенты** — поиск существующих и создание новых: физлица по телефону или email, юрлица и ИП по ИНН.
- **Оплаты** — входящие платежи и приходные ордера.
- **Отгрузки** — документы отгрузок, их статусы, склад, НДС и трек-номера.
- **Свойства заказа** — дополнительные поля с направлением обмена для каждого свойства.
- **Способы доставки и оплаты**, канал продаж, ответственный менеджер, комментарии менеджера и покупателя.

## Как это выглядит в работе

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

В обратную сторону работают веб-хуки: МойСклад сам сообщает сайту об изменении заказа, платежа, приходного ордера или отгрузки. Обрабатывать их можно сразу, через очередь или в смешанном режиме — очередь спасает сайт при массовом редактировании заказов в МойСкладе.

## Ключевые возможности

- **Гибкий поиск контрагентов.** Правила поиска задаются отдельно для каждого типа плательщика, поэтому повторный покупатель находится, а не дублируется. При создании — теги, группы, формат телефона, запись свойств заказа в поля контрагента.
- **Два режима оплат.** «По сумме» — состояние оплаты определяется суммой документов; «полное соответствие» — каждый документ оплаты дублируется между системами. Платёжные системы, организация, счёт и статус документа сопоставляются в настройках.
- **Два режима отгрузок.** Отгрузка создаётся при достижении статуса или полностью дублируется. Стоимость доставки уходит полем отгрузки или отдельной позицией-услугой.
- **Резервы.** Резерв при создании заказа, перерезервирование при изменении корзины, снятие резерва по статусу и при отмене.
- **Свойства любого типа.** Строка, число, флажок, дата, перечисление, файл, местоположение — для каждого свойства своё направление: на сайт, в МойСклад или в обе стороны.
- **Импорт заказов из МойСклад.** Заказ создаётся на сайте по веб-хуку создания или по флажку в заказе МойСклад; есть разовый импорт заказов за период.
- **Профили обмена.** Несколько профилей — для разных аккаунтов МойСклад или разных сайтов многосайтовой конфигурации.
- **Фильтры и исключения.** Обмен по сайту, блокировка конкретного заказа полем-флагом, порог по ID — старые заказы не трогаются.
- **Диагностика.** Лог операций с фильтрами по заказу и типу события, режим отладки, уведомления об ошибках на почту и в админке.
- **Для разработчиков.** События модуля для заказов, контрагентов, корзины, веб-хуков и настроек — доработки без потери обновлений.

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

### Обмен односторонний или двусторонний?

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

### Работает ли модуль на бесплатном тарифе МойСклад?

Нет. Модуль работает только с платными тарифами МойСклад: на бесплатном тарифе нет веб-хуков, а без них изменения из МойСклад не передаются на сайт.

### Как быстро заказ попадает в МойСклад?

По умолчанию заказ выгружает агент — обычно через 1–5 минут, в зависимости от настроек cron. Начиная с версии 1.7.2 можно настроить моментальную выгрузку сразу после оформления: для этого в шаблон страницы успешного оформления заказа вставляется небольшой фрагмент кода. Также можно отложить выгрузку до определённого статуса.

### Нужен ли стандартный обмен заказами Битрикс с МойСклад?

Нет, его нужно отключить. Модуль обменивает заказы только сам, напрямую по JSON API 1.2 МойСклад, а стандартный обмен в этом случае устаревший и приведёт к двойной обработке.

### Можно ли загружать на сайт заказы, созданные в МойСклад?

Да. Заказ создаётся на сайте по веб-хуку создания заказа покупателя (customerorder / CREATE). Если этот веб-хук по какой-то причине не сработал, можно включить импорт по обновлению: менеджер ставит в заказе МойСклад доп. поле-флажок, и модуль импортирует заказ при следующем сохранении. Для исторических заказов есть разовый импорт за период.

### Не будут ли создаваться дубли контрагентов?

Перед созданием модуль ищет существующего контрагента. Поиск настраивается отдельно для каждого типа плательщика: физлиц — по телефону или email, юрлиц и ИП — по ИНН. Важно, чтобы поля, участвующие в поиске, также заполнялись при создании контрагента — тогда при следующем заказе он найдётся.

### Почему статус заказа на сайте «откатывается» после смены в МойСклад?

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

### Почему сумма корзины на сайте и в МойСклад может различаться на копейки?

МойСклад хранит скидку позиции в процентах, а Битрикс — конечную цену. Модуль пересчитывает цену сам, но Битрикс округляет её до копеек, и при большом количестве товара набегает разница. Опция «Пересчитывать корзину при несовпадении стоимости» подбирает более точный процент скидки в МойСклад, но 100% совпадения не гарантирует.

### Передаётся ли НДС позиций корзины?

Да. Нужно указать правила работы НДС для заказа и включить в модуле опцию брать ставку НДС из каждой позиции корзины. У каждой позиции в Битриксе должна быть проставлена ставка — модуль передаст её в соответствующую позицию МойСклад.

### Как передать адрес доставки в МойСклад?

Через соответствие свойств. Адрес типа «Местоположение» можно передать цельной строкой (в поле «[Адрес] Другое» МойСклад) или по частям — страна, регион, город сопоставляются с соответствующими полями адреса МойСклад.

### Можно ли выгружать заказы с префиксом в номере?

Да. Включите шаблон номера с префиксом в настройках нумерации заказов интернет-магазина, а в настройках модуля выберите ACCOUNT_NUMBER в качестве выгружаемого номера заказа.

### Не начнёт ли модуль обменивать все старые заказы сразу после включения?

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

### Заказ не выгружается в МойСклад — что проверить?

По порядку: включён ли обмен на вкладке «Настройки → Работа модуля»; выполняются ли агенты на cron; нет ли ошибок в логе модуля; больше ли ID заказа порога в исключениях. Заказ можно выгрузить и принудительно — вызовом агента выгрузки из командной PHP-строки.

### Выдержит ли сайт массовое редактирование заказов в МойСклад?

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

### Можно ли доработать логику обмена под свой магазин?

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

## Требования

- 1С-Битрикс: Управление сайтом с модулем «Интернет-магазин».
- PHP 8.
- Платный тариф МойСклад — на бесплатном нет веб-хуков.
- Доступ к JSON API 1.2: токен или логин и пароль администратора МойСклад.
- Агенты на cron и доступный снаружи адрес веб-хука на сайте.

## Что модуль не делает

- Не работает на бесплатном тарифе МойСклад: без веб-хуков изменения из МойСклад на сайт не придут.
- Не гарантирует совпадение суммы корзины до копейки при скидках: МойСклад считает скидку в процентах, Битрикс хранит конечную цену. Опция пересчёта помогает, но 100% совпадения не обещает.
- Не угадывает соответствия статусов: если статус МойСклад не сопоставлен, его нужно добавить в соответствия или в игнорируемые, иначе сайт может вернуть прежний статус.
- Не работает в паре со стандартным обменом заказами Битрикс и МойСклад — стандартный обмен нужно отключить.

Документация: https://docs.despi.ru/rbs-moysklad/

## Требования

- PHP: 8
- Агент или cron: нужен
- Модуль «Интернет-магазин» 1С-Битрикс: да
- Тариф МойСклад: Платный (нужны веб-хуки)
- Доступ к JSON API 1.2 МойСклад: Токен или логин и пароль администратора
- Публичный адрес веб-хука на сайте (ответ 200, без редиректов): да

## Частые вопросы

### Обмен односторонний или двусторонний?

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

### Работает ли модуль на бесплатном тарифе МойСклад?

Нет. Модуль работает только с платными тарифами МойСклад: на бесплатном тарифе нет веб-хуков, а без них изменения из МойСклад не передаются на сайт.

### Как быстро заказ попадает в МойСклад?

По умолчанию заказ выгружает агент — обычно через 1–5 минут, в зависимости от настроек cron. Начиная с версии 1.7.2 можно настроить моментальную выгрузку сразу после оформления: для этого в шаблон страницы успешного оформления заказа вставляется небольшой фрагмент кода. Также можно отложить выгрузку до определённого статуса.

### Нужен ли стандартный обмен заказами Битрикс с МойСклад?

Нет, его нужно отключить. Модуль обменивает заказы только сам, напрямую по JSON API 1.2 МойСклад, а стандартный обмен в этом случае устаревший и приведёт к двойной обработке.

### Можно ли загружать на сайт заказы, созданные в МойСклад?

Да. Заказ создаётся на сайте по веб-хуку создания заказа покупателя (customerorder / CREATE). Если этот веб-хук по какой-то причине не сработал, можно включить импорт по обновлению: менеджер ставит в заказе МойСклад доп. поле-флажок, и модуль импортирует заказ при следующем сохранении. Для исторических заказов есть разовый импорт за период.

### Не будут ли создаваться дубли контрагентов?

Перед созданием модуль ищет существующего контрагента. Поиск настраивается отдельно для каждого типа плательщика: физлиц — по телефону или email, юрлиц и ИП — по ИНН. Важно, чтобы поля, участвующие в поиске, также заполнялись при создании контрагента — тогда при следующем заказе он найдётся.

### Почему статус заказа на сайте «откатывается» после смены в МойСклад?

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

### Почему сумма корзины на сайте и в МойСклад может различаться на копейки?

МойСклад хранит скидку позиции в процентах, а Битрикс — конечную цену. Модуль пересчитывает цену сам, но Битрикс округляет её до копеек, и при большом количестве товара набегает разница. Опция «Пересчитывать корзину при несовпадении стоимости» подбирает более точный процент скидки в МойСклад, но 100% совпадения не гарантирует.

### Передаётся ли НДС позиций корзины?

Да. Нужно указать правила работы НДС для заказа и включить в модуле опцию брать ставку НДС из каждой позиции корзины. У каждой позиции в Битриксе должна быть проставлена ставка — модуль передаст её в соответствующую позицию МойСклад.

### Как передать адрес доставки в МойСклад?

Через соответствие свойств. Адрес типа «Местоположение» можно передать цельной строкой (в поле «[Адрес] Другое» МойСклад) или по частям — страна, регион, город сопоставляются с соответствующими полями адреса МойСклад.

### Можно ли выгружать заказы с префиксом в номере?

Да. Включите шаблон номера с префиксом в настройках нумерации заказов интернет-магазина, а в настройках модуля выберите ACCOUNT_NUMBER в качестве выгружаемого номера заказа.

### Не начнёт ли модуль обменивать все старые заказы сразу после включения?

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

### Заказ не выгружается в МойСклад — что проверить?

По порядку: включён ли обмен на вкладке «Настройки → Работа модуля»; выполняются ли агенты на cron; нет ли ошибок в логе модуля; больше ли ID заказа порога в исключениях. Заказ можно выгрузить и принудительно — вызовом агента выгрузки из командной PHP-строки.

### Выдержит ли сайт массовое редактирование заказов в МойСклад?

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

### Можно ли доработать логику обмена под свой магазин?

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