Подключение Shopware 6 к n8n: заказы, клиенты и склад через Admin API
У Shopware 6 нет нативного node для n8n. Вот как подключить заказы, клиентов и склад через Admin API и HTTP Request Node.
Для многих популярных инструментов в n8n есть готовая иконка node, но не для Shopware 6. На первый взгляд это может удивить, но на практике это не препятствие: Shopware 6 предоставляет с Admin API полноценный, хорошо документированный REST-интерфейс, через который можно читать и записывать заказы, данные клиентов и остатки на складе. В n8n эту работу берёт на себя универсальный HTTP Request Node, в сочетании с учётными данными OAuth2 для потока Client Credentials Shopware.
В этой статье показан весь путь: от интеграции в администрировании Shopware через вход в n8n до конкретных запросов по заказам, клиентам и складским остаткам. При этом ты сохраняешь полный контроль над каждым отдельным запросом, потому что ничего не скрыто за черным ящиком.
Почему нет нативного node для Shopware
n8n поддерживает нативные node для сервисов с особенно широкой базой пользователей. Shopware 6 пока к ним не относится, что на практике почти не имеет значения: согласно документации n8n, HTTP Request Node предназначен как раз для такого случая, а именно для запроса данных из любого приложения или сервиса с REST API, даже без специализированного node. Его можно использовать как в качестве обычного шага workflow, так и в качестве инструмента для ИИ-агента. Для Shopware это означает: с помощью нескольких HTTP Request Node ты создаёшь собственную интеграцию, точно подогнанную под твои процессы, не дожидаясь функций готового node. Подробности о структуре и опциях можно найти в документации n8n по HTTP Request Node.
Настройка доступа к Admin API Shopware
Прежде чем n8n сможет что-либо запрашивать, тебе нужна в Shopware интеграция с собственными учётными данными.
- Открой в администрировании Shopware Настройки > Система > Интеграции и создай новую интеграцию.
- Включи переключатель Администратор, иначе интеграция не получит достаточных прав для операций записи.
- Запиши Access Key ID и Secret Access Key. Секрет показывается только один раз.
- Эти два значения позже соответствуют Client ID и Client Secret в твоих учётных данных n8n.
Согласно официальной документации, сама Admin API охватывает структурированный доступ к центральным бизнес-объектам, таким как товары, заказы, клиенты и конфигурации, и предназначена именно для синхронизации данных, импорта и взаимодействия между системами. Обзор даёт документация Shopware по Admin API.
Сохранение учётных данных OAuth2 в n8n
Shopware аутентифицирует интеграции через поток OAuth2 Client Credentials: твой клиент отправляет Access Key ID и Secret Access Key на конечную точку токена и получает взамен Bearer-токен, который, согласно документации, действителен десять минут. Именно этот процесс ты воспроизводишь в n8n с помощью универсальных учётных данных OAuth2 API, которые выбираешь в HTTP Request Node.
- Grant Type: Client Credentials
- Access Token URL: `https://твоймагазин.example/api/oauth/token`
- Client ID: твой Access Key ID
- Client Secret: твой Secret Access Key
- Authentication: в зависимости от настроек Shopware, как Body или Header, в случае сомнений сначала попробуй Body
С помощью этих учётных данных n8n автоматически получает новый токен, как только истёк срок действия старого, поэтому вручную заботиться о десятиминутном сроке действия не нужно. Какие универсальные типы аутентификации в целом поддерживает HTTP Request Node, включая Basic Auth, Header Auth и OAuth2, описано в документации n8n по учётным данным HTTP Request. Точный порядок аутентификации на стороне Shopware, включая примеры запросов к `/api/oauth/token`, можно найти в руководстве Shopware по аутентификации и запросам к API.
Получение и обработка заказов
Для заказов чаще всего используются поисковые эндпоинты Admin API, например `POST /api/search/order`. В отличие от многих REST API, критерии фильтрации здесь передаются не как параметры запроса, а как JSON-тело со структурой Criteria.
- Фильтруй, например, по статусу заказа или дате создания, чтобы получать только новые или открытые заказы.
- Загружай сразу через `associations` клиентов, позиции и адреса доставки, вместо того чтобы запрашивать их отдельно для каждого заказа.
- Управляй объёмом результатов через `limit` и `page`, чтобы workflow n8n не сталкивался с таймаутами даже при большом количестве заказов.
- Schedule Trigger Node, запускаемый каждые 15 минут, в сочетании с этим HTTP-запросом, полностью достаточен для большинства сценариев синхронизации с CRM или системой управления складом.
Для компаний, которые не хотят самостоятельно поддерживать эту интеграцию, NordFlux также создаёт такие workflow синхронизации заказов как проект с фиксированной ценой в рамках консультирования по n8n.
Синхронизация данных клиентов
Данные клиентов ты запрашиваешь аналогично через `POST /api/search/customer`. Особенно полезна здесь фильтрация по адресу электронной почты или номеру клиента, если ты хочешь проверить, существует ли уже контакт из другой системы в Shopware, прежде чем создавать его заново через `POST /api/customer` или обновлять через `PATCH`. Следи за тем, чтобы в своих workflow n8n последовательно различать создание и обновление, например с помощью node IF перед собственно операцией записи, чтобы не создавать дублирующиеся записи клиентов.
Сверка складских остатков
Для складских остатков ты читаешь и записываешь поле `stock` непосредственно у сущности товара через `PATCH /api/product/{id}`. Если ты хочешь отражать в Shopware изменения остатков из внешней системы управления складом, достаточно простого HTTP Request Node с этим маршрутом. И наоборот, если новый заказ Shopware должен уменьшать остаток во внешней системе, вместо постоянного опроса стоит использовать триггер на основе событий.
Триггер вместо постоянного опроса: события Shopware через webhook
Регулярный опрос Admin API работает, но неоправданно медлителен, если ты хочешь немедленно реагировать на отдельные события, такие как новый заказ. Для этого Shopware предлагает Flow Builder в администрировании: там ты выбираешь триггер вроде "Заказ создан", добавляешь действие webhook и указываешь в качестве целевого URL адрес webhook твоего workflow n8n. Подробности настройки приведены в документации Shopware по действиям webhook во Flow Builder.
На стороне n8n ты принимаешь это с помощью Webhook Node, который, согласно документации, поддерживает HTTP-методы GET, POST, PUT, PATCH, DELETE и HEAD и различает тестовый URL для разработки и рабочий URL после активации workflow. Так ты обрабатываешь новые заказы, регистрации клиентов или изменения статуса в момент их возникновения, вместо того чтобы замечать их только при следующем запланированном запросе.
Часто задаваемые вопросы
Появился ли тем временем нативный node Shopware для n8n?
На данный момент нет. n8n не охватывает Shopware через собственный node, поэтому универсальный HTTP Request Node является предусмотренным способом. Это не обходное решение второго сорта, а подход, рекомендуемый самим n8n для REST API без специализированного node.
Как мне авторизоваться с помощью n8n в Admin API Shopware?
Ты создаёшь в Shopware в разделе Настройки, Система, Интеграции интеграцию с правами администратора и сохраняешь Access Key ID и Secret Access Key как Client ID и Client Secret в универсальных учётных данных OAuth2 API в n8n. В качестве Grant Type выбираешь Client Credentials, а в качестве URL токена — эндпоинт `/api/oauth/token` твоего магазина.
Как часто истекает срок действия токена доступа и нужно ли мне об этом заботиться?
Согласно документации Shopware, токен действителен десять минут. n8n автоматически обновляет его в фоновом режиме через учётные данные OAuth2, как только должен был бы выполниться запрос с истёкшим токеном. Для тебя как создателя workflow в повседневной работе ничего не меняется.
Как получать данные о заказах в реальном времени вместо постоянного опроса?
Через Flow Builder в Shopware ты можешь отправлять события, такие как новый заказ, напрямую на webhook URL, который принимает workflow n8n с помощью Webhook Node. Это заменяет регулярный опрос настоящими, мгновенными уведомлениями и одновременно снижает количество вызовов API.
Могу ли я с помощью той же интеграции не только читать, но и записывать складские остатки?
Да. С теми же учётными данными и HTTP Request Node с методом PATCH ты можешь напрямую обновлять поле `stock` у сущности товара. Условие — интеграция в Shopware должна быть создана с правами администратора, поскольку прав только на чтение недостаточно для операций записи.
NordFlux UG (haftungsbeschränkt)
NordFlux создаёт цифровых сотрудников для организаций: автоматизации и КИ-агентов, которые берут на себя повторяющуюся работу. Вы сохраняете контроль.
Конкретные вопросы по автоматизации или КИ?
В рамках бесплатного первичного анализа мы напрямую обсудим Ваш случай. Без обязательств.