Эта инструкция поможет вам связать сервис «МойСклад» с другими приложениями через платформу автоматизации n8n. Вы сможете без программистов настроить сценарии, которые сэкономят десятки часов вашим сотрудникам.
Что такое n8n? Это платформа-конструктор, похожая на Zapier или Integromat, но с возможностью установки на собственный сервер (self-hosted), что дает больше гибкости и контроля над данными.
Что понадобится:
- Доступ к n8n: Либо облачная версия (n8n.cloud), либо установленная на вашем сервере.
- Доступ к «МойСклад»: Права администратора или пользователя, которому разрешена работа с API и вебхуками.
Шаг 1: Подключение «МойСклад» к n8n (Получение API-ключа)
Чтобы n8n мог «общаться» с вашим аккаунтом «МойСклад», ему нужен ключ доступа (токен).
- Зайдите в «МойСклад».
- Нажмите на ваше имя в правом верхнем углу → Настройки.
- Перейдите в раздел Токены.
- Нажмите кнопку +Токен. Откроется окно для создания нового токена.
- Скопируйте сгенерированный токен. Это длинный набор символов. Важно: сохраните его в надежном месте, так как после закрытия окна вы больше не сможете его увидеть. Если потеряете — придется создавать новый.
Теперь у n8n есть «пропуск» в ваш «МойСклад».
Шаг 2: Настройка действия в n8n (Пример: создание контрагента)
Самый простой способ работать с «МойСклад» в n8n — через узел HTTP Request. Этот узел может отправлять любые запросы к API другого сервиса. В «МойСклад» используется JSON API.
Давайте создадим сценарий, который будет автоматически создавать нового контрагента в «МойСклад».
- Создайте новый сценарий (Workflow) в n8n.
- В качестве стартового узла для теста возьмем Manual (ручной запуск).
- Добавьте новый узел, найдите и выберите HTTP Request.
Настроим узел HTTP Request:
- Authentication: Выберите Header Auth.
- Name: Введите Authorization.
- Value: Введите Bearer (обязательно с большой буквы), поставьте пробел и вставьте скопированный ранее токен из «МойСклад».
- Пример: Bearer 1234567890abcdef1234567890abcdef12345678
- Method: Выберите POST. (Метод POST используется для создания новых сущностей).
- URL: Это адрес, куда n8n будет отправлять запрос. Для создания контрагента используется адрес:
https://api.moysklad.ru/api/remap/1.2/entity/counterparty
- Справочник всех адресов (endpoint'ов) есть в документации «МойСклад» JSON API 1.2.
- Body Content Type: Выберите JSON.
- В поле Body нужно указать данные, которые мы хотим передать. Для создания контрагента с именем «Тестовый Клиент» вставьте следующий код:
- JSON
{"name": "Тестовый Клиент"}
Готово! Теперь нажмите кнопку Execute Node (Выполнить узел). Если все настроено правильно, в правой части экрана вы увидите ответ от сервера «МойСклад» с данными созданного контрагента, а в вашем «МойСклад» в разделе Контрагенты появится новая запись «Тестовый Клиент».
Шаг 3: Настройка триггера (Как запускать автоматизацию)
Сценарий не должен запускаться вручную. Его должен запускать какой-то триггер — событие в другом сервисе.
Вариант А: Запуск по вебхуку (Webhook) из «МойСклад» (в реальном времени)
Вебхук — это механизм, который мгновенно сообщает n8n о событии в «МойСклад» (например, создан новый заказ).
- В n8n: Замените стартовый узел Manual на узел Webhook.
- Скопируйте URL-адрес из этого узла (Test URL или Production URL).
- В «МойСклад»:
- Перейдите в Настройки → Вебхуки.
- Нажмите +Вебхук.
- URL: Вставьте скопированный адрес из n8n.
- Тип сущности: Выберите, на какое событие будет реагировать вебхук. Например, Заказ покупателя.
- Тип события: Выберите Создание.
- Сохраните вебхук.
- В n8n: Нажмите Listen for test event (Ожидать тестовое событие).
- В «МойСклад»: Создайте новый заказ покупателя, чтобы отправить тестовый вебхук.
- Вернитесь в n8n. Вы увидите, что узел Webhook получил данные о новом заказе. Теперь эти данные можно использовать в последующих узлах.
Вариант Б: Запуск по событию в другом сервисе
Например, создадим контрагента в «МойСклад», как только на Tilda придет новая заявка.
- Триггер: Узел Tilda Trigger. Настройте его на получение данных с вашей формы.
- Действие: Узел HTTP Request (уже настроенный нами выше).
- Связываем данные: В поле Body узла HTTP Request нужно вставить не статический текст "Тестовый Клиент", а переменную из узла Tilda.
- Удалите "Тестовый Клиент".
- Нажмите на маленькую иконку с точками (Add Expression).
- В дереве данных слева выберите Nodes → Tilda Trigger → Data → JSON и перетащите поле с именем клиента (например, name).
- Теперь поле Body будет выглядеть примерно так:
- JSON
{"name": "{{$json["name"]}}"}
- Это значит, что n8n будет подставлять в запрос имя из заявки Tilda.
Не забудьте активировать сценарий (переключатель Active в правом верхнем углу), чтобы он работал в фоновом режиме.
Примеры использования n8n + «МойСклад»:
- Новая заявка на сайте (Tilda, WordPress) → Создание контрагента и заказа покупателя в «МойСклад».
- Оплата в ЮKassa → Автоматическое изменение статуса заказа в «МойСклад» на «Оплачен».
- Новая строка в Google Sheets → Создание или обновление карточки товара в «МойСклад».
- Новый заказ в «МойСклад» → Отправка уведомления менеджеру в Telegram с деталями заказа.
- Изменение остатка товара в «МойСклад» → Обновление количества товара на вашем сайте на Wildberries или Ozon (требует более сложных сценариев).