Как селлеру получить через API цену покупателя на Озоне
- В чём проблема для селлеров
- Как отслеживать цену покупателя, используя индекс цен
- Где получить индекс цен через API Ozon
- Формула расчета цены для покупателя из индекса цены
- Проверяем, удалось ли получить цену покупателя
Ozon убрал из своего API возможность получить цену, которую видит покупатель. Для большинства продавцов это не критично, но для тех, кто автоматизирует ценообразование, ведёт собственную аналитику или синхронизирует данные с внешними системами, отсутствие финальной цены создаёт ощутимые разрывы в данных.
Новость от 12 ноября 2025:
/v3/product/info/list : Параметр items.marketing_price в ответе метода устарел, удалили его из документации.
/v5/product/info/prices : Параметр price.marketing_price в ответе метода устарел, удалили его из документации.
Теперь через API доступны только внутренние параметры — ваша цена и акции, в которых участвует товар. Этого недостаточно, чтобы получить итоговую стоимость в том виде, в котором она отображается покупателю на карточке товара.
Нам удалось решить эту задачу косвенно, используя данные, которые Ozon продолжает отдавать. В статье разберем, что именно изменилось, и покажем рабочий способ вычисления покупательской цены без прямого доступа к ней.

В чём проблема для селлеров
На карточке товара покупатель видит две цены:
- Цена со скидкой — обычная промо-цена, учитывающая акции Озона и скидки продавца.
- Цена по карте Ozon — сниженная стоимость для держателей карты Ozon, по которой чаще всего и совершается покупка.
Эти же цены доступны в личном кабинете OZON продавцу во вкладке Цены и акции.
Ранее продавцы могли получить через API только первую цену — параметр price.marketing_price. Доступа ко второй, «карточной» цене, как не было, так и нет. Тем не менее, наличие price.marketing_price всё же позволяло понимать, по какой стоимости товар увидят покупатели. Теперь в выгрузках этот параметр не доступен и мы не видим даже приблизительной цены, которая показывается покупателю.
В результате селлер сталкивается с несколькими проблемами:
-
Невозможно увидеть фактическую цену на маркетплейсе — она обычно сильно отличается от установленной продавцом.
-
Трудно контролировать демпинг: вы можете снижать цену в системе, а на самом деле товар уже продаётся дешевле нужного уровня.
-
Страдает аналитика: маржинальность, эффект от скидок, корректность автоматического снижения/повышения цены.
-
Невозможно корректно синхронизировать цену с ERP или внутренними сервисами — в них остаётся «теоретическая» цена, а не та, что видит покупатель.
Иными словами, продавец теряет контроль над тем, сколько реально стоит его товар на витрине. Именно эту проблему нам и пришлось решить косвенно — через другие данные, которые Ozon пока продолжает отдавать.

Как отслеживать цену покупателя, используя индекс цен
У Ozon есть параметр, который продолжает передаваться через API, — индекс цен. Это динамический показатель, который сравнивает текущую цену вашего товара с минимальной ценой аналогичных товаров на Ozon и на других площадках.
Важно, что:
-
у Ozon нет единой фиксированной формулы для расчёта индекса цен;
-
это именно сравнительный коэффициент, который зависит от реальной цены на карточке товара;
-
индекс обновляется вместе с ценовой информацией и отражает то, как Ozon показывает вашу конечную цену.
После того как маркетплейс перестал отдавать price.marketing_price, стало очевидно, что индекс цен — один из немногих оставшихся параметров, которые всё ещё напрямую завязаны на фактическую стоимость, показанную покупателю. Это означает, что имея индекс и базовые данные, можно вычислять реальную покупательскую цену косвенно.
Где получить индекс цен через API Ozon
Индекс цен продолжает передаваться в нескольких эндпоинтах Ozon. Его можно получить как часть стандартной информации о товаре.
1. Метод product/info/list
Документация:
https://docs.ozon.ru/api/seller/#operation/ProductAPI_GetProductInfoList
Эндпоинт:
https://api-seller.ozon.ru/v3/product/info/list
Пример запроса:
{
"offer_id": [
"string"
],
"product_id": [
"string"
],
"sku": [
"string"
]
}
Пример ответа:
{
"offer_id": "123",
"id": 2733344171,
"sku": 2868333669,
"name": "ТСД АТОЛ Smart.Slim полный с Клеверенс для 1С и маркировки, терминал сбора данных",
"prices": {
"price": "52250.00",
"min_price": "52250.00",
"old_price": "",
"currency": "RUB"
},
"stocks": {
"has_stock": true,
"entries": [
{ "present": 2, "reserved": 0, "sku": 2868333669, "source": "fbs" }
]
},
"statuses": {
"status": "price_sent",
"status_failed": "",
"moderate_status": "approved",
"validation_status": "success",
"status_name": "Продается",
"status_description": "",
"is_created": true,
"status_tooltip": "",
"status_updated_at": "2025-11-13T13:52:21.726200Z"
},
"price_indexes": {
"ozon": { "minimal_price": "16612.00", "minimal_price_currency": "RUB", "price_index_value": 1.06 },
"external": { "minimal_price": "15617.00", "minimal_price_currency": "RUB", "price_index_value": 1.12 },
"self_marketplaces": { "minimal_price": "26387.00", "minimal_price_currency": "RUB", "price_index_value": 0.67 }
},
"images": {
"primary": ["https://cdn1.ozone.ru/s3/multimedia-1-g/8056167460.jpg"],
"count": 5
},
"updated_at": "2025-11-13T13:51:48.242894Z"
}
2. Метод product/info/prices
Документация: https://docs.ozon.ru/api/seller/#operation/ProductAPI_GetProductInfoPrices
Эндпоинт: https://api-seller.ozon.ru/v5/product/info/prices
Пример запроса:
{
"cursor": "",
"filter": {
"offer_id": [
"356792"
],
"product_id": [
"243686911"
],
"visibility": "ALL"
},
"limit": 100
}
Пример ответа:
{
"items": [
{
"acquiring": 687.61,
"offer_id": "123",
"product_id": 2733344171,
"volume_weight": 0.4,
"commissions": {
"fbo_deliv_to_customer_amount": 25,
"fbo_direct_flow_trans_max_amount": 1548.4,
"fbo_direct_flow_trans_min_amount": 56,
"fbo_return_flow_amount": 56,
"fbs_deliv_to_customer_amount": 25,
"fbs_direct_flow_trans_min_amount": 98,
"fbs_direct_flow_trans_max_amount": 98,
"fbs_first_mile_max_amount": 30,
"fbs_first_mile_min_amount": 10,
"fbs_return_flow_amount": 98,
"sales_percent_fbo": 41,
"sales_percent_fbs": 49,
"sales_percent_rfbs": 45,
"sales_percent_fbp": 45
},
"marketing_actions": {
"current_period_from": null,
"current_period_to": null,
"actions": [
{
"title": "Рассрочка 0-0-6 на всё РФ товары",
"value": 6,
"date_from": "2025-02-17T21:00:00Z",
"date_to": "2026-01-31T20:59:00Z"
},
{
"title": "Эластичный бустинг. Без ограничения срока действия",
"value": 40161,
"date_from": "2025-03-19T21:00:44Z",
"date_to": "2026-12-31T20:59:59Z"
},
{
"title": "Максимальный бустинг. 11.11 и Чёрная пятница",
"value": 36190,
"date_from": "2025-10-22T21:00:00Z",
"date_to": "2025-12-03T20:59:59Z"
},
{
"title": "Максимальный бустинг: усиление. 11.11 и Чёрная пятница",
"value": 36190,
"date_from": "2025-10-26T21:00:00Z",
"date_to": "2025-12-03T20:59:59Z"
},
{
"title": "Супербустинг 11.11",
"value": 36190,
"date_from": "2025-11-10T21:00:00Z",
"date_to": "2025-12-03T20:59:59Z"
},
{
"title": "Супербустинг: Чёрная пятница",
"value": 36190,
"date_from": "2025-11-27T21:00:00Z",
"date_to": "2025-12-29T20:59:59Z"
}
],
"ozon_actions_exist": false
},
"price": {
"auto_action_enabled": false,
"currency_code": "RUB",
"marketing_seller_price": 36190,
"min_price": 52250,
"old_price": 0,
"price": 52250,
"retail_price": 0,
"vat": 0.2,
"auto_add_to_ozon_actions_list_enabled": true,
"net_price": 0
},
"price_indexes": {
"external_index_data": {
"min_price": 15617,
"min_price_currency": "RUB",
"price_index_value": 1.12
},
"ozon_index_data": {
"min_price": 0,
"min_price_currency": "RUB",
"price_index_value": 0
},
"color_index": "YELLOW",
"self_marketplaces_index_data": {
"min_price": 26387,
"min_price_currency": "RUB",
"price_index_value": 0.67
}
}
}
],
"cursor": "WzI3MzYxNDQxNzEsMjczNjE0NDE3MV0=",
"total": 1
}
Формула расчета цены для покупателя из индекса цены
Ozon сравнивает вашу цену с минимальной конкурентной ценой и рассчитывает индекс по одной из двух формул:
- Если цена ниже конкурентной:
Индекс цен = Ваша цена на Ozon / Конкурирующая цена - Если цена выше конкурентной:
Индекс цен = 2 – (Конкурирующая цена / Ваша цена на Ozon) - Если цены одинаковые:
Индекс цен = 1
Таким образом, для дальнейшей обработки полученного индекса цены у вас будет три варианта:
- Если индекс меньше одного (то есть цена ниже конкурентной), то цена покупателя расчитывается по формуле:
Цена покупателя = Индекс × Конкурирующая цена - Если индекс > 1 (ваша цена выше конкурентной), то искомая цена расчитыватся так:
Цена покупателя = Конкурирующая цена / (2 – Индекс) - Если индекс = 1, то
Цена покупателя = Конкурирующая цена.
Проверяем, удалось ли получить цену покупателя
В ответ на наши запросы мы получили две цены конкурентов — на Озоне и на внешних площадках — и соответственно два индекса, которые можно использовать для дальнейших расчетов. На их основе будем рассчитавать собственные ориентировочные цены.

Так как индекс > 1 (т.е. наша цена выше конкурентной), то искомая цена расчитыватся так:
Цена покупателя = Конкурирующая цена / (2 – Индекс)
Например:
16612/(2–1.06)=17672
Фактически же на этот момент на Озоне мы видим цену 17384 для покупателя с картой и 19315 для покупателя без карты.
Полученные цены оказались несколько выше, чем цена покупателя по карте, но ниже, чем цена для покупателя без карты. Точнее — примерно на 2% выше цены покупателя по карте. Это позволяет рассматривать их в качестве условной цены покупателя по карте.
Для целей мониторинга цен такой результат вполне удовлетворительный. Цены на Озоне колеблются, и нам необязательно знать точную цену в каждый момент времени; главное — понимать, что она не опустилась ниже установленного порога.
Количество показов: 8