Что можно автоматизировать в Ozon через API и n8n
Ozon предоставляет полноценный REST API для продавцов: управление товарами, заказами, ценами, остатками, аналитикой и рекламой. Автоматизация Ozon через n8n позволяет избавиться от ручной рутины — обновления цен, выгрузки заказов, контроля остатков — и настроить всё это один раз в виде воркфлоу.
Типичные задачи, которые решает n8n Ozon-интеграция:
- Синхронизация остатков из 1С или Google Sheets → Ozon в реальном времени
- Автовыгрузка новых заказов в CRM (AmoCRM, Bitrix24)
- Ежедневные отчёты по продажам в Telegram
- Автоматическое обновление цен при изменении закупочных
- Уведомления о новых отзывах и оценках
- Мониторинг позиций товаров в поиске
Получение API-ключа Ozon
Для работы с Ozon API нужны два параметра: Client-Id и Api-Key.
- Зайдите в личный кабинет продавца → Настройки → API-ключи.
- Нажмите «Создать ключ» → укажите название (например, «n8n автоматизация»).
- Выберите права: рекомендуется «Admin read/write» для полного доступа.
- Скопируйте и сохраните Client-Id и Api-Key — Api-Key показывается только один раз.
Базовый URL Ozon API: https://api-seller.ozon.ru
Подключение Ozon API в n8n
В n8n используйте HTTP Request node с заголовками аутентификации. Создайте Credentials типа «Header Auth» или просто вставляйте заголовки напрямую:
Headers:
Client-Id: ВАШ_CLIENT_ID
Api-Key: ВАШ_API_KEY
Content-Type: application/json
Сохраните Client-Id и Api-Key в n8n Credentials → Generic Credential Type, чтобы не хранить их в воркфлоу открытым текстом.
Сценарий 1: выгрузка новых заказов в Google Sheets
Самый популярный кейс автоматизации Ozon и автоматизации маркетплейса в целом — автоматическая выгрузка заказов. Воркфлоу запускается каждые 15 минут и записывает новые заказы в таблицу.
Структура воркфлоу
- Schedule Trigger — каждые 15 минут
- HTTP Request — запрос списка заказов
- IF Node — есть новые заказы?
- Code Node — форматирование данных
- Google Sheets — append строк
- Telegram — уведомление о новых заказах
Запрос заказов через Ozon API
HTTP Request node:
Method: POST
URL: https://api-seller.ozon.ru/v3/posting/fbs/list
Body:
{
"dir": "ASC",
"filter": {
"since": "{{ $json.since }}",
"to": "{{ $json.to }}",
"status": "awaiting_approve"
},
"limit": 100,
"offset": 0,
"with": {
"analytics_data": true,
"financial_data": true
}
}
В Code Node сформируйте даты для фильтра:
const now = new Date();
const since = new Date(now.getTime() - 15 * 60 * 1000); // последние 15 минут
return [{
json: {
since: since.toISOString(),
to: now.toISOString()
}
}];
Извлечение нужных полей
const postings = $input.first().json.result.postings || [];
return postings.map(p => ({
json: {
order_id: p.order_id,
posting_number: p.posting_number,
status: p.status,
created_at: p.created_at,
customer: p.customer?.name || '—',
items: p.products.map(i => i.name).join(', '),
total: p.financial_data?.posting_services?.marketplace_service_item_fulfillment || 0
}
}));
Сценарий 2: автоматическое обновление цен и остатков
Автоматизация Ozon для обновления цен — особенно полезна при работе с большим ассортиментом или при привязке цен к курсу валюты. Воркфлоу читает актуальные цены из Google Sheets (или 1С) и обновляет их на Ozon.
Обновление цен через Ozon API
Method: POST
URL: https://api-seller.ozon.ru/v1/product/import/prices
Body:
{
"prices": [
{
"offer_id": "{{ $json.offer_id }}",
"price": "{{ $json.price }}",
"old_price": "{{ $json.old_price }}",
"min_price": "{{ $json.min_price }}",
"currency_code": "RUB"
}
]
}
Используйте Split In Batches node — Ozon принимает не более 1000 позиций за один запрос. При большом ассортименте разбейте массив товаров на пакеты по 500 штук.
Обновление остатков (FBS)
Method: POST
URL: https://api-seller.ozon.ru/v2/products/stocks
Body:
{
"stocks": [
{
"offer_id": "{{ $json.offer_id }}",
"stock": {{ $json.quantity }},
"warehouse_id": {{ $json.warehouse_id }}
}
]
}
Чтобы узнать ID вашего склада, сделайте GET-запрос на https://api-seller.ozon.ru/v1/warehouse/list.
Сценарий 3: мониторинг отзывов и уведомления
Новый отрицательный отзыв на Ozon — важный сигнал. Воркфлоу проверяет новые отзывы каждый час и отправляет уведомление в Telegram с текстом, оценкой и ссылкой на ответ.
Method: POST
URL: https://api-seller.ozon.ru/v1/review/list
Body:
{
"filter": {
"order_id": [],
"posting_number": []
},
"sort_field": "REVIEW_SORT_FIELD_CREATED_AT",
"sort_order": "DESC",
"limit": 10,
"offset": 0
}
В Code Node отфильтруйте только новые (созданные за последний час) и с оценкой ниже 4:
const hourAgo = Date.now() - 3600000;
const reviews = $input.first().json.reviews || [];
const newBad = reviews.filter(r => {
const created = new Date(r.created_at).getTime();
return created > hourAgo && r.rating < 4;
});
return newBad.map(r => ({ json: r }));
Сценарий 4: ежедневный отчёт о продажах в Telegram
Простой и полезный воркфлоу: каждое утро в 9:00 n8n запрашивает статистику продаж за вчера и отправляет сводку в Telegram-чат с командой.
Method: POST
URL: https://api-seller.ozon.ru/v1/analytics/data
Body:
{
"date_from": "{{ $json.yesterday }}",
"date_to": "{{ $json.yesterday }}",
"dimension": ["day"],
"filters": [],
"metrics": ["revenue", "ordered_units", "returns", "cancellations"],
"limit": 1,
"offset": 0
}
Сформируйте текст сообщения в Code Node:
const data = $input.first().json.result.data[0];
const metrics = data.metrics;
const msg = `📊 Продажи за вчера (Ozon)\n` +
`💰 Выручка: ${(metrics[0]/100).toFixed(0)} ₽\n` +
`📦 Заказов: ${metrics[1]}\n` +
`↩️ Возвраты: ${metrics[2]}\n` +
`❌ Отмены: ${metrics[3]}`;
return [{ json: { text: msg } }];
Интеграция Ozon с AmoCRM через n8n
Полная автоматизация маркетплейса включает передачу данных покупателей в CRM. Новый заказ на Ozon → сделка в AmoCRM с контактом, суммой и товарами. Схема воркфлоу:
- Ozon API — получить новые заказы
- AmoCRM (HTTP Request) — поиск контакта по телефону/email
- IF — контакт существует?
- AmoCRM — создать или обновить контакт
- AmoCRM — создать сделку с позициями
- Telegram — уведомление менеджеру
Ozon по соображениям безопасности не передаёт полные контактные данные покупателя через основной API — только маскированные. Для получения номера телефона используйте отдельный endpoint /v1/posting/fbs/customer/info с номером отправления.
Работа с Ozon Performance API (реклама)
Для автоматизации рекламных кампаний на Ozon используется отдельный Ozon Performance API с собственной аутентификацией.
Base URL: https://performance.ozon.ru/api/client/
Получение токена:
Method: POST
URL: https://performance.ozon.ru/api/client/token
Body:
{
"client_id": "ВАШ_PERFORMANCE_CLIENT_ID",
"client_secret": "ВАШ_SECRET",
"grant_type": "client_credentials"
}
Токен действует 1 час — в n8n добавьте Refresh-логику: перед каждым запросом проверяйте время жизни токена и обновляйте при необходимости через дополнительный HTTP Request.
Типичные ошибки при интеграции Ozon и n8n
| Ошибка | Причина | Решение |
|---|---|---|
| 401 Unauthorized | Неверный Client-Id или Api-Key | Проверьте заголовки — оба обязательны |
| 400 validation error | Неверный формат даты | Используйте ISO 8601: 2026-06-19T00:00:00.000Z |
| 429 Too Many Requests | Превышен rate limit | Добавьте Wait node на 1 секунду между запросами |
| Пустой массив products | Запрос на статус без товаров | Проверяйте наличие ключа через IF node |
Лимиты Ozon API
Ozon ограничивает количество запросов в минуту для каждого метода. Основные лимиты:
- Получение заказов — до 60 запросов/минуту
- Обновление цен — до 60 запросов/минуту, до 1000 товаров за запрос
- Обновление остатков — до 60 запросов/минуту, до 500 позиций
- Аналитика — до 10 запросов/минуту
Используйте Rate Limit node в n8n или добавляйте Wait node (1–2 секунды) между пакетами запросов, чтобы не получить временную блокировку.
Часто задаваемые вопросы
Как получить API-ключ Ozon для интеграции с n8n?
В личном кабинете продавца Ozon перейдите в Настройки → API-ключи → Создать ключ. Выберите права Admin read/write. Скопируйте Client-Id и Api-Key — Api-Key показывается только один раз. В n8n используйте эти данные как заголовки Client-Id и Api-Key в HTTP Request node.
Можно ли автоматически обновлять остатки на Ozon через n8n?
Да. Используйте метод POST /v2/products/stocks. Передайте массив объектов с offer_id, stock и warehouse_id. Ozon принимает до 500 позиций за запрос. В n8n удобно читать остатки из 1С или Google Sheets и обновлять их на Ozon по расписанию каждые 15–30 минут.
Как настроить уведомления о новых заказах Ozon в Telegram через n8n?
Создайте воркфлоу: Schedule Trigger (каждые 15 минут) → HTTP Request к /v3/posting/fbs/list с фильтром по времени → IF (есть заказы?) → Telegram node с текстом заказа. Укажите статус awaiting_approve, чтобы получать только новые необработанные заказы.
Какой базовый URL использовать для Ozon API в n8n?
Для работы с заказами, товарами, ценами и аналитикой: https://api-seller.ozon.ru. Для рекламного кабинета (Performance API): https://performance.ozon.ru/api/client/. Все запросы к основному API — POST с заголовками Client-Id и Api-Key.
Как синхронизировать Ozon с 1С через n8n?
Настройте двустороннюю синхронизацию: n8n читает остатки из 1С (через HTTP-сервис 1С или прямое обращение к API) и обновляет их на Ozon. Новые заказы Ozon выгружаются в 1С через метод создания документа реализации. Расписание — каждые 15–30 минут. Для 1С нужен настроенный HTTP-сервис или используйте промежуточную Google Sheets как буфер.