- Request
- Body
- NotificationType
- PingNotificationDTO
- CampaignId
- ShopSku
- NotificationOrderItemDTO
- OrderCreatedNotificationDTO
- OrderStatusType
- OrderSubstatusType
- OrderStatusUpdatedNotificationDTO
- OrderCancelledNotificationDTO
- OrderCancellationRequestNotificationDTO
- ReturnType
- NotificationReturnItemDTO
- OrderReturnCreatedNotificationDTO
- RefundStatusType
- ReturnShipmentStatusType
- NotificationUpdatedReturnStatusesDTO
- OrderReturnStatusUpdatedNotificationDTO
- OrderUpdateType
- OrderUpdatedNotificationDTO
- GoodsFeedbackId
- BusinessId
- GoodsFeedbackCreatedNotificationDTO
- GoodsFeedbackCommentId
- GoodsFeedbackCommentCreatedNotificationDTO
- ChatCreatedNotificationDTO
- ChatMessageSentNotificationDTO
- ChatArbitrageStartedNotificationDTO
- ChatArbitrageFinishedNotificationDTO
- Responses
- 200 OK
- 400 Bad Request
- 500 Internal Server Error
Получение уведомлений
Маркет отправляет магазину уведомления о событиях:
- создание нового заказа;
- изменение заказа;
- изменение статуса заказа;
- создание нового чата с покупателем;
- добавление нового сообщения в чате;
- начало спора;
- завершение спора;
- создание нового отзыва о товаре;
- создание нового комментария к отзыву;
- создание заявки на отмену заказа;
- отмена заказа;
- создание нового невыкупа или возврата;
- изменение статуса невыкупа или возврата.
Учитывайте эти особенности в работе с уведомлениями
-
Маркет может отправлять несколько уведомлений по одному и тому же событию.
В некоторых случаях это нормальное поведение. Например, может быть несколько уведомлений с изменением статуса заказа из-за поиска курьера.
-
Время в уведомлении, в ответе на запрос к Маркету и в вашей системе может отличаться.
Это происходит из-за того, что в момент отправки уведомления состояние заказа уже может быть другим.
В запросе
POST notificationвремя события приходит вcreatedAt,updatedAtилиcancelledAt. Выбор параметра зависит от типа уведомления.
Актуальным считайте более позднее время события. Оно может быть в уведомлении, вернуться в ответе на запрос к Маркету или храниться в вашей системе.
Таймаут на получение ответа: 10 секунд для обычных уведомлений и 1 секунда для проверочного уведомления PING.
Request
POST
/notification
Body
application/json
{
"notificationType": "PING",
"time": "2025-01-01T00:00:00Z"
}
|
Name |
Description |
|
notificationType |
Type: NotificationType Тип уведомления:
Enum: |
One of 14 types
-
Type: PingNotificationDTO
Проверочное уведомление.
notificationType=PING
Example
{
"notificationType": "PING",
"time": "2025-01-01T00:00:00Z"
}
-
Type: OrderCreatedNotificationDTO
Уведомление о создании нового заказа.
notificationType=ORDER_CREATED
Методы, которые могут быть полезны
POST v2/campaigns/{campaignId}/orders/{orderId}/external-id — передача внешнего идентификатора заказа.
POST v1/businesses/{businessId}/orders — получение подробной информации о заказе (по orderIds).
Example
{
"notificationType": "PING",
"orderId": 0,
"campaignId": 1,
"items": [
{
"offerId": "example",
"count": 0
}
],
"createdAt": "2025-01-01T00:00:00Z"
}
-
Type: OrderStatusUpdatedNotificationDTO
Уведомление об изменении статуса заказа.
notificationType=ORDER_STATUS_UPDATEDЧтобы изменить статус заказа
Используйте метод PUT v2/campaigns/{campaignId}/orders/{orderId}/status.
Example
{
"notificationType": "PING",
"orderId": 0,
"campaignId": 1,
"status": "PLACING",
"substatus": "RESERVATION_EXPIRED",
"updatedAt": "2025-01-01T00:00:00Z"
}
-
Type: OrderCancelledNotificationDTO
Уведомление об отмене заказа.
notificationType=ORDER_CANCELLED
Example
{
"notificationType": "PING",
"orderId": 0,
"campaignId": 1,
"items": [
{
"offerId": "example",
"count": 0
}
],
"cancelledAt": "2025-01-01T00:00:00Z"
}
-
Type: OrderCancellationRequestNotificationDTO
Уведомление о создании заявки на отмену заказа (для DBS-магазинов).
notificationType=ORDER_CANCELLATION_REQUESTНе отправляется, если заказ доставляется в ПВЗ Маркета.
Чтобы подтвердить или отклонить заявку
Используйте метод PUT v2/campaigns/{campaignId}/orders/{orderId}/cancellation/accept.
Example
{
"notificationType": "PING",
"orderId": 0,
"campaignId": 1,
"requestedAt": "2025-01-01T00:00:00Z"
}
-
Type: OrderReturnCreatedNotificationDTO
Уведомление о создании нового невыкупа или возврата.
notificationType=ORDER_RETURN_CREATEDЧтобы получить подробную информацию о невыкупе или возврате
Используйте метод GET v2/campaigns/{campaignId}/orders/{orderId}/returns/{returnId}.
Example
{
"notificationType": "PING",
"orderId": 0,
"returnId": 0,
"returnType": "UNREDEEMED",
"campaignId": 1,
"items": [
{
"offerId": "example",
"count": 0
}
],
"createdAt": "2025-01-01T00:00:00Z"
}
-
Type: OrderReturnStatusUpdatedNotificationDTO
Уведомление о смене статуса невыкупа или возврата.
notificationType=ORDER_RETURN_STATUS_UPDATEDЧтобы получить подробную информацию о невыкупе или возврате
Используйте метод GET v2/campaigns/{campaignId}/orders/{orderId}/returns/{returnId}.
Example
{
"notificationType": "PING",
"orderId": 0,
"returnId": 0,
"campaignId": 1,
"statuses": {
"refundStatus": "STARTED_BY_USER",
"shipmentStatus": "CREATED"
},
"updatedAt": "2025-01-01T00:00:00Z"
}
-
Type: OrderUpdatedNotificationDTO
Уведомление об изменении заказа.
notificationType=ORDER_UPDATEDЧтобы получить подробную информацию о заказе
Используйте метод POST v1/businesses/{businessId}/orders с фильтром
orderIds.
Example
{
"notificationType": "PING",
"orderId": 0,
"campaignId": 1,
"updateType": "SHIPMENT_DATE_UPDATED",
"updatedAt": "2025-01-01T00:00:00Z"
}
-
Type: GoodsFeedbackCreatedNotificationDTO
Уведомление о создании нового отзыва о товаре.
notificationType=GOODS_FEEDBACK_CREATEDМаркет отправляет уведомления об отзывах, только когда они прошли модерацию и опубликованы.
Чтобы получить подробную информацию об отзывах
Используйте метод POST v2/businesses/{businessId}/goods-feedback, где укажите их идентификаторы в параметре
feedbackIds.Получить информацию не получится, если покупатель или Маркет удалил отзыв.
Example
{
"notificationType": "PING",
"feedbackId": 0,
"businessId": 1,
"createdAt": "2025-01-01T00:00:00Z",
"publishedAt": "2025-01-01T00:00:00Z"
}
-
Type: GoodsFeedbackCommentCreatedNotificationDTO
Уведомление о создании нового комментария к отзыву.
notificationType=GOODS_FEEDBACK_COMMENT_CREATEDЧтобы получить подробную информацию о комментариях к отзыву
Используйте метод POST v2/businesses/{businessId}/goods-feedback/comments, где укажите их идентификаторы в параметре
commentIds.Получить информацию не получится, если пользователь или Маркет удалил комментарий или отзыв, к которому он добавлен.
Example
{
"notificationType": "PING",
"commentId": 0,
"businessId": 1,
"createdAt": "2025-01-01T00:00:00Z"
}
-
Type: ChatCreatedNotificationDTO
Уведомление о создании нового чата с покупателем.
notificationType=CHAT_CREATEDПриходит для всех типов чатов.
Рекомендуемая обработка
На уведомление CHAT_CREATED создайте чат в своей системе и сохраните
chatId.Получите информацию по чату методом GET v2/businesses/{businessId}/chat и сохраните номер заказа, идентификатор возврата (если есть) и публичные данные покупателя.
Повторно запрашивать контекст чата для данного
chatIdне требуется.
Example
{
"notificationType": "PING",
"chatId": 0,
"businessId": 1,
"createdAt": "2025-01-01T00:00:00Z"
}
-
Type: ChatMessageSentNotificationDTO
Уведомление о новом сообщении в чате.
notificationType=CHAT_MESSAGE_SENTПриходит для всех типов чатов.
Не отправляется для сообщений-стикеров.
Чтобы получить сообщение от покупателя
Используйте метод GET v2/businesses/{businessId}/chats/message, где укажите идентификаторы:
- чата —
chatId; - сообщения —
messageId.
Если чат уже сохранен (обрабатывали
CHAT_CREATED) в вашей системе, можно не запрашивать информацию о нем повторно — используйте сохраненный контекст. - чата —
Example
{
"notificationType": "PING",
"chatId": 0,
"messageId": "example",
"businessId": 1,
"sentAt": "2025-01-01T00:00:00Z"
}
-
Type: ChatArbitrageStartedNotificationDTO
Уведомление о начале спора.
notificationType=CHAT_ARBITRAGE_STARTEDНе приходит для чата с типом
DIRECT. Подробнее о таких чатах
Example
{
"notificationType": "PING",
"chatId": 0,
"businessId": 1,
"startedAt": "2025-01-01T00:00:00Z"
}
-
Type: ChatArbitrageFinishedNotificationDTO
Уведомление о завершении спора.
notificationType=CHAT_ARBITRAGE_FINISHEDНе приходит для чата с типом
DIRECT. Подробнее о таких чатах
Example
{
"notificationType": "PING",
"chatId": 0,
"businessId": 1,
"finishedAt": "2025-01-01T00:00:00Z"
}
NotificationType
Тип уведомления:
PING— проверочное уведомление.ORDER_CREATED— создан новый заказ.ORDER_CANCELLED— заказ отменен.ORDER_STATUS_UPDATED— статус заказа изменен.ORDER_RETURN_CREATED— создан новый невыкуп или возврат.ORDER_CANCELLATION_REQUEST— создана заявка на отмену заказа (для DBS-магазинов).ORDER_RETURN_STATUS_UPDATED— статус невыкупа или возврата изменен.ORDER_UPDATED— заказ изменен.GOODS_FEEDBACK_CREATED— создан новый отзыв о товаре.GOODS_FEEDBACK_COMMENT_CREATED— создан новый комментарий к отзыву о товаре.CHAT_CREATED— создан новый чат с покупателем.CHAT_MESSAGE_SENT— добавлено новое сообщение в чате.CHAT_ARBITRAGE_STARTED— по обращению покупателя начался спор.CHAT_ARBITRAGE_FINISHED— спор завершен.
Type: string
Enum: PING, ORDER_CREATED, ORDER_CANCELLED, ORDER_STATUS_UPDATED, ORDER_RETURN_CREATED, ORDER_CANCELLATION_REQUEST, ORDER_RETURN_STATUS_UPDATED, ORDER_UPDATED, GOODS_FEEDBACK_CREATED, GOODS_FEEDBACK_COMMENT_CREATED, CHAT_CREATED, CHAT_MESSAGE_SENT, CHAT_ARBITRAGE_STARTED, CHAT_ARBITRAGE_FINISHED
PingNotificationDTO
Проверочное уведомление.
notificationType = PING
|
Name |
Description |
|
notificationType |
Type: NotificationType Тип уведомления:
Enum: |
|
time |
Type: string<date-time> Дата и время обработки уведомления со стороны магазина. Формат даты: ISO 8601 со смещением относительно UTC. Например, Example: |
Example
{
"notificationType": "PING",
"time": "2025-01-01T00:00:00Z"
}
CampaignId
Идентификатор кампании (магазина) — технический идентификатор, который представляет ваш магазин в системе Яндекс Маркета при работе через API. Он однозначно связывается с вашим магазином, но предназначен только для автоматизированного взаимодействия.
Его можно узнать с помощью запроса GET v2/campaigns или найти в кабинете продавца на Маркете. Нажмите на иконку вашего аккаунта → Настройки и в меню слева выберите API и модули:
- блок Идентификатор кампании;
- вкладка Лог запросов → выпадающий список в блоке Показывать логи.
⚠️ Не путайте его с:
- идентификатором магазина, который отображается в личном кабинете продавца;
- рекламными кампаниями.
Type: integer
Min value: 1
ShopSku
Ваш SKU — идентификатор товара в вашей системе.
Правила использования SKU:
-
У каждого товара SKU должен быть свой.
-
Уже заданный SKU нельзя освободить и использовать заново для другого товара. Каждый товар должен получать новый идентификатор, до того никогда не использовавшийся в вашем каталоге.
SKU товара можно изменить в кабинете продавца на Маркете. О том, как это сделать, читайте в Справке Маркета для продавцов.
Важно
Пробельные символы в начале и конце значения автоматически удаляются. Например, " SKU123 " и "SKU123" будут обработаны как одинаковые значения.
Что такое SKU и как его назначать
Type: string
Min length: 1
Max length: 255
Pattern: ^(?=.*\S.*)[^\x00-\x08\x0A-\x1f\x7f]{1,255}$
Example: example
NotificationOrderItemDTO
Информация о товаре в заказе.
|
Name |
Description |
|
count |
Type: integer Количество товара. |
|
offerId |
Type: ShopSku Ваш SKU — идентификатор товара в вашей системе. Правила использования SKU:
SKU товара можно изменить в кабинете продавца на Маркете. О том, как это сделать, читайте в Справке Маркета для продавцов. Важно Пробельные символы в начале и конце значения автоматически удаляются. Например, Что такое SKU и как его назначать Min length: Max length: Pattern: Example: |
Example
{
"offerId": "example",
"count": 0
}
OrderCreatedNotificationDTO
Уведомление о создании нового заказа.
notificationType = ORDER_CREATED
Методы, которые могут быть полезны
POST v2/campaigns/{campaignId}/orders/{orderId}/external-id — передача внешнего идентификатора заказа.
POST v1/businesses/{businessId}/orders — получение подробной информации о заказе (по orderIds).
|
Name |
Description |
|
campaignId |
Type: CampaignId Идентификатор кампании (магазина) — технический идентификатор, который представляет ваш магазин в системе Яндекс Маркета при работе через API. Он однозначно связывается с вашим магазином, но предназначен только для автоматизированного взаимодействия. Его можно узнать с помощью запроса GET v2/campaigns или найти в кабинете продавца на Маркете. Нажмите на иконку вашего аккаунта → Настройки и в меню слева выберите API и модули:
⚠️ Не путайте его с:
Min value: Example: |
|
createdAt |
Type: string<date-time> Дата и время создания заказа. Формат даты: ISO 8601 со смещением относительно UTC. Например, Example: |
|
items |
Type: NotificationOrderItemDTO[] Список товаров в заказе. Example
|
|
notificationType |
Type: NotificationType Тип уведомления:
Enum: |
|
orderId |
Type: integer Идентификатор заказа. |
Example
{
"notificationType": "PING",
"orderId": 0,
"campaignId": 1,
"items": [
{
"offerId": "example",
"count": 0
}
],
"createdAt": "2025-01-01T00:00:00Z"
}
OrderStatusType
Статус заказа:
-
PLACING— оформляется, подготовка к резервированию. -
RESERVED— зарезервирован, но недооформлен (только для LaaS). -
UNPAID— оформлен, но еще не оплачен (если выбрана оплата при оформлении). -
PROCESSING— находится в обработке. -
DELIVERY— передан в службу доставки. -
PICKUP— доставлен в пункт выдачи. -
DELIVERED— получен покупателем. -
CANCELLED— отменен. -
PENDING— ожидает обработки со стороны продавца. -
PARTIALLY_RETURNED— возвращен частично. -
RETURNED— возвращен полностью. -
UNKNOWN— неизвестный статус.
Также могут возвращаться другие значения. Обрабатывать их не нужно.
Type: string
Enum: PLACING, RESERVED, UNPAID, PROCESSING, DELIVERY, PICKUP, DELIVERED, CANCELLED, PENDING, PARTIALLY_RETURNED, RETURNED, UNKNOWN
OrderSubstatusType
Этап обработки заказа (статус PROCESSING) или причина отмены заказа (статус CANCELLED).
-
Значения для заказа в статусе
PROCESSING:-
STARTED— заказ подтвержден, его можно начать обрабатывать. -
READY_TO_SHIP— заказ собран и готов к отправке.
-
-
Значения для заказа в статусе
CANCELLED:-
RESERVATION_EXPIRED— покупатель не завершил оформление зарезервированного заказа в течение 10 минут. -
USER_NOT_PAID— покупатель не оплатил заказ (для типа оплатыPREPAID) в течение 30 минут. -
USER_UNREACHABLE— не удалось связаться с покупателем. Для отмены с этой причиной необходимо выполнить условия:- не менее 3 звонков с 8 до 21 в часовом поясе покупателя;
- перерыв между первым и третьим звонком не менее 90 минут;
- соединение не короче 5 секунд.
Если хотя бы одно из этих условий не выполнено (кроме случая, когда номер недоступен), отменить заказ не получится. Вернется ответ с кодом ошибки 400.
-
USER_CHANGED_MIND— покупатель отменил заказ по личным причинам. -
USER_REFUSED_DELIVERY— покупателя не устроили условия доставки. -
USER_REFUSED_PRODUCT— покупателю не подошел товар. -
SHOP_FAILED— магазин не может выполнить заказ. -
USER_REFUSED_QUALITY— покупателя не устроило качество товара. -
REPLACING_ORDER— покупатель решил заменить товар другим по собственной инициативе. -
PROCESSING_EXPIRED— значение более не используется. -
PICKUP_EXPIRED— закончился срок хранения заказа в пункт выдачи. -
TOO_MANY_DELIVERY_DATE_CHANGES— заказ переносили слишком много раз. -
TOO_LONG_DELIVERY— заказ доставляется слишком долго. -
INCORRECT_PERSONAL_DATA— для заказа из-за рубежа указаны неправильные данные получателя, заказ не пройдет проверку на таможне.
-
-
TECHNICAL_ERROR— техническая ошибка на стороне Маркета. Обратитесь в поддержку.
Также могут возвращаться другие значения. Обрабатывать их не нужно.
Type: string
Enum: RESERVATION_EXPIRED, USER_NOT_PAID, USER_UNREACHABLE, USER_CHANGED_MIND, USER_REFUSED_DELIVERY, USER_REFUSED_PRODUCT, SHOP_FAILED, USER_REFUSED_QUALITY, REPLACING_ORDER, PROCESSING_EXPIRED, PENDING_EXPIRED, SHOP_PENDING_CANCELLED, PENDING_CANCELLED, USER_FRAUD, RESERVATION_FAILED, USER_PLACED_OTHER_ORDER, USER_BOUGHT_CHEAPER, MISSING_ITEM, BROKEN_ITEM, WRONG_ITEM, PICKUP_EXPIRED, DELIVERY_PROBLEMS, LATE_CONTACT, CUSTOM, DELIVERY_SERVICE_FAILED, WAREHOUSE_FAILED_TO_SHIP, DELIVERY_SERVICE_UNDELIVERED, PREORDER, AWAIT_CONFIRMATION, STARTED, PACKAGING, READY_TO_SHIP, SHIPPED, ASYNC_PROCESSING, WAITING_USER_INPUT, WAITING_BANK_DECISION, BANK_REJECT_CREDIT_OFFER, CUSTOMER_REJECT_CREDIT_OFFER, CREDIT_OFFER_FAILED, AWAIT_DELIVERY_DATES_CONFIRMATION, SERVICE_FAULT, DELIVERY_SERVICE_RECEIVED, USER_RECEIVED, WAITING_FOR_STOCKS, AS_PART_OF_MULTI_ORDER, READY_FOR_LAST_MILE, LAST_MILE_STARTED, ANTIFRAUD, DELIVERY_USER_NOT_RECEIVED, DELIVERY_SERVICE_DELIVERED, DELIVERED_USER_NOT_RECEIVED, USER_WANTED_ANOTHER_PAYMENT_METHOD, USER_RECEIVED_TECHNICAL_ERROR, USER_FORGOT_TO_USE_BONUS, DELIVERY_SERVICE_NOT_RECEIVED, DELIVERY_SERVICE_LOST, SHIPPED_TO_WRONG_DELIVERY_SERVICE, DELIVERED_USER_RECEIVED, WAITING_TINKOFF_DECISION, COURIER_SEARCH, COURIER_FOUND, COURIER_IN_TRANSIT_TO_SENDER, COURIER_ARRIVED_TO_SENDER, COURIER_RECEIVED, COURIER_NOT_FOUND, COURIER_NOT_DELIVER_ORDER, COURIER_RETURNS_ORDER, COURIER_RETURNED_ORDER, WAITING_USER_DELIVERY_INPUT, PICKUP_SERVICE_RECEIVED, PICKUP_USER_RECEIVED, CANCELLED_COURIER_NOT_FOUND, COURIER_NOT_COME_FOR_ORDER, DELIVERY_NOT_MANAGED_REGION, INCOMPLETE_CONTACT_INFORMATION, INCOMPLETE_MULTI_ORDER, INAPPROPRIATE_WEIGHT_SIZE, TECHNICAL_ERROR, SORTING_CENTER_LOST, COURIER_SEARCH_NOT_STARTED, LOST, AWAIT_PAYMENT, AWAIT_LAVKA_RESERVATION, USER_WANTS_TO_CHANGE_ADDRESS, FULL_NOT_RANSOM, PRESCRIPTION_MISMATCH, DROPOFF_LOST, DROPOFF_CLOSED, DELIVERY_TO_STORE_STARTED, USER_WANTS_TO_CHANGE_DELIVERY_DATE, WRONG_ITEM_DELIVERED, DAMAGED_BOX, AWAIT_DELIVERY_DATES, LAST_MILE_COURIER_SEARCH, PICKUP_POINT_CLOSED, LEGAL_INFO_CHANGED, USER_HAS_NO_TIME_TO_PICKUP_ORDER, DELIVERY_CUSTOMS_ARRIVED, DELIVERY_CUSTOMS_CLEARED, FIRST_MILE_DELIVERY_SERVICE_RECEIVED, AWAIT_AUTO_DELIVERY_DATES, AWAIT_USER_PERSONAL_DATA, NO_PERSONAL_DATA_EXPIRED, CUSTOMS_PROBLEMS, AWAIT_CASHIER, WAITING_POSTPAID_BUDGET_RESERVATION, AWAIT_SERVICEABLE_CONFIRMATION, POSTPAID_BUDGET_RESERVATION_FAILED, AWAIT_CUSTOM_PRICE_CONFIRMATION, READY_FOR_PICKUP, TOO_MANY_DELIVERY_DATE_CHANGES, TOO_LONG_DELIVERY, DEFERRED_PAYMENT, POSTPAID_FAILED, INCORRECT_PERSONAL_DATA, CUSTOMS_FAILED_MARKET, CUSTOMS_FAILED_USER_COMMERCIAL_ITEMS, CUSTOMS_FAILED_USER_DUTY_NOT_PAID, CUSTOMS_FAILED_USER_INVALID_PERSONAL_DATA, CUSTOMS_FAILED_USER_ADDITIONAL_DATA_NOT_PROVIDED, AWAIT_PAYMENT_AFTER_DELIVERY, AWAIT_USER_STEAM_FAST_URL, UNKNOWN
OrderStatusUpdatedNotificationDTO
Уведомление об изменении статуса заказа.
notificationType = ORDER_STATUS_UPDATED
Чтобы изменить статус заказа
Используйте метод PUT v2/campaigns/{campaignId}/orders/{orderId}/status.
|
Name |
Description |
|
campaignId |
Type: CampaignId Идентификатор кампании (магазина) — технический идентификатор, который представляет ваш магазин в системе Яндекс Маркета при работе через API. Он однозначно связывается с вашим магазином, но предназначен только для автоматизированного взаимодействия. Его можно узнать с помощью запроса GET v2/campaigns или найти в кабинете продавца на Маркете. Нажмите на иконку вашего аккаунта → Настройки и в меню слева выберите API и модули:
⚠️ Не путайте его с:
Min value: Example: |
|
notificationType |
Type: NotificationType Тип уведомления:
Enum: |
|
orderId |
Type: integer Идентификатор заказа. |
|
status |
Type: OrderStatusType Статус заказа:
Также могут возвращаться другие значения. Обрабатывать их не нужно. Enum: |
|
substatus |
Type: OrderSubstatusType Этап обработки заказа (статус
Также могут возвращаться другие значения. Обрабатывать их не нужно. Enum: |
|
updatedAt |
Type: string<date-time> Дата и время изменения статуса заказа. Формат даты: ISO 8601 со смещением относительно UTC. Например, Example: |
Example
{
"notificationType": "PING",
"orderId": 0,
"campaignId": 1,
"status": "PLACING",
"substatus": "RESERVATION_EXPIRED",
"updatedAt": "2025-01-01T00:00:00Z"
}
OrderCancelledNotificationDTO
Уведомление об отмене заказа.
notificationType = ORDER_CANCELLED
|
Name |
Description |
|
campaignId |
Type: CampaignId Идентификатор кампании (магазина) — технический идентификатор, который представляет ваш магазин в системе Яндекс Маркета при работе через API. Он однозначно связывается с вашим магазином, но предназначен только для автоматизированного взаимодействия. Его можно узнать с помощью запроса GET v2/campaigns или найти в кабинете продавца на Маркете. Нажмите на иконку вашего аккаунта → Настройки и в меню слева выберите API и модули:
⚠️ Не путайте его с:
Min value: Example: |
|
cancelledAt |
Type: string<date-time> Дата и время отмены заказа. Формат даты: ISO 8601 со смещением относительно UTC. Например, Example: |
|
items |
Type: NotificationOrderItemDTO[] Список товаров в заказе. Example
|
|
notificationType |
Type: NotificationType Тип уведомления:
Enum: |
|
orderId |
Type: integer Идентификатор заказа. |
Example
{
"notificationType": "PING",
"orderId": 0,
"campaignId": 1,
"items": [
{
"offerId": "example",
"count": 0
}
],
"cancelledAt": "2025-01-01T00:00:00Z"
}
OrderCancellationRequestNotificationDTO
Уведомление о создании заявки на отмену заказа (для DBS-магазинов).
notificationType = ORDER_CANCELLATION_REQUEST
Не отправляется, если заказ доставляется в ПВЗ Маркета.
Чтобы подтвердить или отклонить заявку
Используйте метод PUT v2/campaigns/{campaignId}/orders/{orderId}/cancellation/accept.
|
Name |
Description |
|
campaignId |
Type: CampaignId Идентификатор кампании (магазина) — технический идентификатор, который представляет ваш магазин в системе Яндекс Маркета при работе через API. Он однозначно связывается с вашим магазином, но предназначен только для автоматизированного взаимодействия. Его можно узнать с помощью запроса GET v2/campaigns или найти в кабинете продавца на Маркете. Нажмите на иконку вашего аккаунта → Настройки и в меню слева выберите API и модули:
⚠️ Не путайте его с:
Min value: Example: |
|
notificationType |
Type: NotificationType Тип уведомления:
Enum: |
|
orderId |
Type: integer Идентификатор заказа. |
|
requestedAt |
Type: string<date-time> Дата и время создания заявки на отмену заказа. Формат даты: ISO 8601 со смещением относительно UTC. Например, Example: |
Example
{
"notificationType": "PING",
"orderId": 0,
"campaignId": 1,
"requestedAt": "2025-01-01T00:00:00Z"
}
ReturnType
Тип фильтрации:
-
UNREDEEMED— невыкупы. -
RETURN— возвраты.
Если не указывать, в ответе будут и невыкупы, и возвраты.
Type: string
Enum: UNREDEEMED, RETURN
NotificationReturnItemDTO
Информация о товаре в невыкупе или возврате.
|
Name |
Description |
|
count |
Type: integer Количество товара. |
|
offerId |
Type: ShopSku Ваш SKU — идентификатор товара в вашей системе. Правила использования SKU:
SKU товара можно изменить в кабинете продавца на Маркете. О том, как это сделать, читайте в Справке Маркета для продавцов. Важно Пробельные символы в начале и конце значения автоматически удаляются. Например, Что такое SKU и как его назначать Min length: Max length: Pattern: Example: |
Example
{
"offerId": "example",
"count": 0
}
OrderReturnCreatedNotificationDTO
Уведомление о создании нового невыкупа или возврата.
notificationType = ORDER_RETURN_CREATED
Чтобы получить подробную информацию о невыкупе или возврате
Используйте метод GET v2/campaigns/{campaignId}/orders/{orderId}/returns/{returnId}.
|
Name |
Description |
|
campaignId |
Type: CampaignId Идентификатор кампании (магазина) — технический идентификатор, который представляет ваш магазин в системе Яндекс Маркета при работе через API. Он однозначно связывается с вашим магазином, но предназначен только для автоматизированного взаимодействия. Его можно узнать с помощью запроса GET v2/campaigns или найти в кабинете продавца на Маркете. Нажмите на иконку вашего аккаунта → Настройки и в меню слева выберите API и модули:
⚠️ Не путайте его с:
Min value: Example: |
|
createdAt |
Type: string<date-time> Дата и время создания невыкупа или возврата. Формат даты: ISO 8601 со смещением относительно UTC. Например, Example: |
|
items |
Type: NotificationReturnItemDTO[] Список товаров в невыкупе или возврате. Example
|
|
notificationType |
Type: NotificationType Тип уведомления:
Enum: |
|
orderId |
Type: integer Идентификатор заказа. |
|
returnId |
Type: integer Идентификатор невыкупа или возврата. |
|
returnType |
Type: ReturnType Тип фильтрации:
Если не указывать, в ответе будут и невыкупы, и возвраты. Enum: |
Example
{
"notificationType": "PING",
"orderId": 0,
"returnId": 0,
"returnType": "UNREDEEMED",
"campaignId": 1,
"items": [
{
"offerId": "example",
"count": 0
}
],
"createdAt": "2025-01-01T00:00:00Z"
}
RefundStatusType
Статус возврата денег:
-
STARTED_BY_USER— создан покупателем из личного кабинета. -
REFUND_IN_PROGRESS— ждет решение о возврате денег (на рассмотрении). -
REFUNDED— деньги возвращены. -
FAILED— невозможно провести возврат покупателю. -
WAITING_FOR_DECISION— ожидает решения (DBS). -
DECISION_MADE— по возврату принято решение (DBS). -
REFUNDED_WITH_BONUSES— возврат осуществлен баллами Плюса или промокодом. -
REFUNDED_BY_SHOP— магазин сделал самостоятельно возврат денег. -
COMPLETE_WITHOUT_REFUND— возврат денег не требуется. -
CANCELLED— возврат отменен. -
REJECTED— возврат отклонен модерацией или в ПВЗ. -
PREMODERATION_DISPUTE— по возврату открыт спор (FBY, FBS и Экспресс). -
PREMODERATION_DECISION_WAITING— ожидает решения (FBY, FBS и Экспресс). -
PREMODERATION_DECISION_MADE— по возврату принято решение (FBY, FBS и Экспресс). -
PREMODERATION_SELECT_DELIVERY— пользователь выбирает способ доставки (FBY, FBS и Экспресс). -
UNKNOWN— неизвестный статус, обратитесь в поддержку.
Type: string
Enum: STARTED_BY_USER, REFUND_IN_PROGRESS, REFUNDED, FAILED, WAITING_FOR_DECISION, DECISION_MADE, REFUNDED_WITH_BONUSES, REFUNDED_BY_SHOP, CANCELLED, REJECTED, COMPLETE_WITHOUT_REFUND, PREMODERATION_DISPUTE, PREMODERATION_DECISION_WAITING, PREMODERATION_DECISION_MADE, PREMODERATION_SELECT_DELIVERY, UNKNOWN
ReturnShipmentStatusType
Статус передачи возврата или невыкупа:
-
CREATED— возврат или невыкуп создан покупателем (оформлен). -
RECEIVED— возврат подготовлен к отправке (принят у покупателя). -
IN_TRANSIT— возврат или невыкуп в пути (отправлен). -
READY_FOR_PICKUP— возврат или невыкуп готов к выдаче магазину. -
PICKED— возврат или невыкуп выдан магазину. -
LOST— возврат или невыкуп утерян (при транспортировке). -
EXPIRED— покупатель не принес товар на возврат вовремя (возврат отменен). -
CANCELLED— возврат или невыкуп отменен. -
FULFILMENT_RECEIVED— возврат или невыкуп принят на складе Маркета. -
PREPARED_FOR_UTILIZATION— возврат или невыкуп передан в очередь на утилизацию. -
NOT_IN_DEMAND— возврат или невыкуп не забрали с почты. -
UTILIZED— возврат или невыкуп утилизирован. -
READY_FOR_EXPROPRIATION— товары в возврате или невыкупе направлены на перепродажу (проверка перед реализацией). -
RECEIVED_FOR_EXPROPRIATION— товары в возврате или невыкупе приняты для перепродажи (реализация). -
UNKNOWN— неизвестный статус, обратитесь в поддержку.
Type: string
Enum: CREATED, RECEIVED, IN_TRANSIT, READY_FOR_PICKUP, PICKED, LOST, EXPIRED, CANCELLED, FULFILMENT_RECEIVED, PREPARED_FOR_UTILIZATION, NOT_IN_DEMAND, UTILIZED, READY_FOR_EXPROPRIATION, RECEIVED_FOR_EXPROPRIATION, UNKNOWN
NotificationUpdatedReturnStatusesDTO
Информация об обновлении статуса невыкупа или возврата.
Возвращается только тот статус, который был изменен.
Для невыкупов приходит только shipmentStatus.
Параметр shipmentStatus не приходит для возвратов с опцией Быстрый возврат денег за дешевый брак, когда товар остается у покупателя.
|
Name |
Description |
|
refundStatus |
Type: RefundStatusType Статус возврата денег:
Enum: |
|
shipmentStatus |
Type: ReturnShipmentStatusType Статус передачи возврата или невыкупа:
Enum: |
Example
{
"refundStatus": "STARTED_BY_USER",
"shipmentStatus": "CREATED"
}
OrderReturnStatusUpdatedNotificationDTO
Уведомление о смене статуса невыкупа или возврата.
notificationType = ORDER_RETURN_STATUS_UPDATED
Чтобы получить подробную информацию о невыкупе или возврате
Используйте метод GET v2/campaigns/{campaignId}/orders/{orderId}/returns/{returnId}.
|
Name |
Description |
|
campaignId |
Type: CampaignId Идентификатор кампании (магазина) — технический идентификатор, который представляет ваш магазин в системе Яндекс Маркета при работе через API. Он однозначно связывается с вашим магазином, но предназначен только для автоматизированного взаимодействия. Его можно узнать с помощью запроса GET v2/campaigns или найти в кабинете продавца на Маркете. Нажмите на иконку вашего аккаунта → Настройки и в меню слева выберите API и модули:
⚠️ Не путайте его с:
Min value: Example: |
|
notificationType |
Type: NotificationType Тип уведомления:
Enum: |
|
orderId |
Type: integer Идентификатор заказа. |
|
returnId |
Type: integer Идентификатор невыкупа или возврата. |
|
statuses |
Type: NotificationUpdatedReturnStatusesDTO Информация об обновлении статуса невыкупа или возврата. Возвращается только тот статус, который был изменен. Для невыкупов приходит только Параметр Example
|
|
updatedAt |
Type: string<date-time> Дата и время изменения статуса невыкупа или возврата. Формат даты: ISO 8601 со смещением относительно UTC. Например, Example: |
Example
{
"notificationType": "PING",
"orderId": 0,
"returnId": 0,
"campaignId": 1,
"statuses": {
"refundStatus": "STARTED_BY_USER",
"shipmentStatus": "CREATED"
},
"updatedAt": "2025-01-01T00:00:00Z"
}
OrderUpdateType
Тип изменения заказа:
SHIPMENT_DATE_UPDATED— изменение даты отгрузки.DELIVERY_DATE_UPDATED— изменение даты доставки.UNKNOWN— неизвестный тип.
Type: string
Enum: SHIPMENT_DATE_UPDATED, DELIVERY_DATE_UPDATED, UNKNOWN
OrderUpdatedNotificationDTO
Уведомление об изменении заказа.
notificationType = ORDER_UPDATED
Чтобы получить подробную информацию о заказе
Используйте метод POST v1/businesses/{businessId}/orders с фильтром orderIds.
|
Name |
Description |
|
campaignId |
Type: CampaignId Идентификатор кампании. Идентификатор кампании (магазина) — технический идентификатор, который представляет ваш магазин в системе Яндекс Маркета при работе через API. Он однозначно связывается с вашим магазином, но предназначен только для автоматизированного взаимодействия. Его можно узнать с помощью запроса GET v2/campaigns или найти в кабинете продавца на Маркете. Нажмите на иконку вашего аккаунта → Настройки и в меню слева выберите API и модули:
⚠️ Не путайте его с:
Min value: Example: |
|
notificationType |
Type: NotificationType Тип уведомления:
Enum: |
|
orderId |
Type: integer Идентификатор заказа. |
|
updatedAt |
Type: string<date-time> Дата и время изменения заказа. Формат даты: ISO 8601 со смещением относительно UTC. Например, Example: |
|
updateType |
Type: OrderUpdateType Тип изменения заказа. Тип изменения заказа:
Enum: |
Example
{
"notificationType": "PING",
"orderId": 0,
"campaignId": 1,
"updateType": "SHIPMENT_DATE_UPDATED",
"updatedAt": "2025-01-01T00:00:00Z"
}
GoodsFeedbackId
Идентификатор отзыва.
Type: integer
BusinessId
Идентификатор кабинета. Чтобы его узнать, воспользуйтесь запросом GET v2/campaigns.
ℹ️ Что такое кабинет и магазин на Маркете
Type: integer
Min value: 1
GoodsFeedbackCreatedNotificationDTO
Уведомление о создании нового отзыва о товаре.
notificationType = GOODS_FEEDBACK_CREATED
Маркет отправляет уведомления об отзывах, только когда они прошли модерацию и опубликованы.
Чтобы получить подробную информацию об отзывах
Используйте метод POST v2/businesses/{businessId}/goods-feedback, где укажите их идентификаторы в параметре feedbackIds.
Получить информацию не получится, если покупатель или Маркет удалил отзыв.
|
Name |
Description |
|
businessId |
Type: BusinessId Идентификатор кабинета. Чтобы его узнать, воспользуйтесь запросом GET v2/campaigns. ℹ️ Что такое кабинет и магазин на Маркете Min value: Example: |
|
createdAt |
Type: string<date-time> Дата и время создания отзыва. Может отличаться от информации в Формат даты: ISO 8601 со смещением относительно UTC. Например, Example: |
|
feedbackId |
Type: GoodsFeedbackId Идентификатор отзыва. Example: |
|
notificationType |
Type: NotificationType Тип уведомления:
Enum: |
|
publishedAt |
Type: string<date-time> Дата и время публикации отзыва. Может отличаться от информации в Формат даты: ISO 8601 со смещением относительно UTC. Например, Example: |
Example
{
"notificationType": "PING",
"feedbackId": 0,
"businessId": 1,
"createdAt": "2025-01-01T00:00:00Z",
"publishedAt": "2025-01-01T00:00:00Z"
}
GoodsFeedbackCommentId
Идентификатор комментария к отзыву.
Type: integer
GoodsFeedbackCommentCreatedNotificationDTO
Уведомление о создании нового комментария к отзыву.
notificationType = GOODS_FEEDBACK_COMMENT_CREATED
Чтобы получить подробную информацию о комментариях к отзыву
Используйте метод POST v2/businesses/{businessId}/goods-feedback/comments, где укажите их идентификаторы в параметре commentIds.
Получить информацию не получится, если пользователь или Маркет удалил комментарий или отзыв, к которому он добавлен.
|
Name |
Description |
|
businessId |
Type: BusinessId Идентификатор кабинета. Чтобы его узнать, воспользуйтесь запросом GET v2/campaigns. ℹ️ Что такое кабинет и магазин на Маркете Min value: Example: |
|
commentId |
Type: GoodsFeedbackCommentId Идентификатор комментария к отзыву. Example: |
|
createdAt |
Type: string<date-time> Дата и время создания комментария. Формат даты: ISO 8601 со смещением относительно UTC. Например, Example: |
|
notificationType |
Type: NotificationType Тип уведомления:
Enum: |
Example
{
"notificationType": "PING",
"commentId": 0,
"businessId": 1,
"createdAt": "2025-01-01T00:00:00Z"
}
ChatCreatedNotificationDTO
Уведомление о создании нового чата с покупателем.
notificationType = CHAT_CREATED
Приходит для всех типов чатов.
Рекомендуемая обработка
На уведомление CHAT_CREATED создайте чат в своей системе и сохраните chatId.
Получите информацию по чату методом GET v2/businesses/{businessId}/chat и сохраните номер заказа, идентификатор возврата (если есть) и публичные данные покупателя.
Повторно запрашивать контекст чата для данного chatId не требуется.
|
Name |
Description |
|
businessId |
Type: BusinessId Идентификатор кабинета. Чтобы его узнать, воспользуйтесь запросом GET v2/campaigns. ℹ️ Что такое кабинет и магазин на Маркете Min value: Example: |
|
chatId |
Type: integer Идентификатор чата. |
|
createdAt |
Type: string<date-time> Дата и время создания чата. Формат даты: ISO 8601 со смещением относительно UTC. Например, Example: |
|
notificationType |
Type: NotificationType Тип уведомления:
Enum: |
Example
{
"notificationType": "PING",
"chatId": 0,
"businessId": 1,
"createdAt": "2025-01-01T00:00:00Z"
}
ChatMessageSentNotificationDTO
Уведомление о новом сообщении в чате.
notificationType = CHAT_MESSAGE_SENT
Приходит для всех типов чатов.
Не отправляется для сообщений-стикеров.
Чтобы получить сообщение от покупателя
Используйте метод GET v2/businesses/{businessId}/chats/message, где укажите идентификаторы:
- чата —
chatId; - сообщения —
messageId.
Если чат уже сохранен (обрабатывали CHAT_CREATED) в вашей системе, можно не запрашивать информацию о нем повторно — используйте сохраненный контекст.
|
Name |
Description |
|
businessId |
Type: BusinessId Идентификатор кабинета. Чтобы его узнать, воспользуйтесь запросом GET v2/campaigns. ℹ️ Что такое кабинет и магазин на Маркете Min value: Example: |
|
chatId |
Type: integer Идентификатор чата. |
|
messageId |
Type: string Идентификатор сообщения. Example: |
|
notificationType |
Type: NotificationType Тип уведомления:
Enum: |
|
sentAt |
Type: string<date-time> Дата и время отправки сообщения. Формат даты: ISO 8601 со смещением относительно UTC. Например, Example: |
Example
{
"notificationType": "PING",
"chatId": 0,
"messageId": "example",
"businessId": 1,
"sentAt": "2025-01-01T00:00:00Z"
}
ChatArbitrageStartedNotificationDTO
Уведомление о начале спора.
notificationType = CHAT_ARBITRAGE_STARTED
Не приходит для чата с типом DIRECT. Подробнее о таких чатах
|
Name |
Description |
|
businessId |
Type: BusinessId Идентификатор кабинета. Чтобы его узнать, воспользуйтесь запросом GET v2/campaigns. ℹ️ Что такое кабинет и магазин на Маркете Min value: Example: |
|
chatId |
Type: integer Идентификатор чата. |
|
notificationType |
Type: NotificationType Тип уведомления:
Enum: |
|
startedAt |
Type: string<date-time> Дата и время начала спора. Формат даты: ISO 8601 со смещением относительно UTC. Например, Example: |
Example
{
"notificationType": "PING",
"chatId": 0,
"businessId": 1,
"startedAt": "2025-01-01T00:00:00Z"
}
ChatArbitrageFinishedNotificationDTO
Уведомление о завершении спора.
notificationType = CHAT_ARBITRAGE_FINISHED
Не приходит для чата с типом DIRECT. Подробнее о таких чатах
|
Name |
Description |
|
businessId |
Type: BusinessId Идентификатор кабинета. Чтобы его узнать, воспользуйтесь запросом GET v2/campaigns. ℹ️ Что такое кабинет и магазин на Маркете Min value: Example: |
|
chatId |
Type: integer Идентификатор чата. |
|
finishedAt |
Type: string<date-time> Дата и время завершения спора. Формат даты: ISO 8601 со смещением относительно UTC. Например, Example: |
|
notificationType |
Type: NotificationType Тип уведомления:
Enum: |
Example
{
"notificationType": "PING",
"chatId": 0,
"businessId": 1,
"finishedAt": "2025-01-01T00:00:00Z"
}
Responses
200 OK
Ответ на корректный запрос с информацией об обработке уведомления.
Body
application/json
{
"version": "example",
"name": "example",
"time": "2025-01-01T00:00:00Z"
}
|
Name |
Description |
|
name |
Type: string Название интеграции. Min length: Max length: Example: |
|
time |
Type: string<date-time> Дата и время начала обработки уведомления в формате UTC. Example: |
|
version |
Type: string Версия интеграции. Min length: Max length: Example: |
400 Bad Request
Если Маркет прислал некорректное уведомление, верните статус 400 с описанием ошибки.
Body
application/json
{
"error": {
"type": "UNKNOWN",
"message": "example"
}
}
|
Name |
Description |
|
error |
Type: NotificationApiErrorDTO Ошибка при обработке уведомления. Example
|
NotificationApiErrorType
Тип ошибки:
UNKNOWN— неизвестная ошибка.WRONG_EVENT_FORMAT— неправильный тип уведомления.DUPLICATED_EVENT— дублирующее уведомление.
Type: string
Enum: UNKNOWN, WRONG_EVENT_FORMAT, DUPLICATED_EVENT
NotificationApiErrorDTO
Ошибка при обработке уведомления.
|
Name |
Description |
|
message |
Type: string Описание ошибки. Example: |
|
type |
Type: NotificationApiErrorType Тип ошибки:
Enum: |
Example
{
"type": "UNKNOWN",
"message": "example"
}
500 Internal Server Error
Если произошла техническая ошибка на вашей стороне, верните статус 500. API магазина не отвечает
Body
application/json
{
"error": {
"type": "UNKNOWN",
"message": "example"
}
}
|
Name |
Description |
|
error |
Type: NotificationApiErrorDTO Ошибка при обработке уведомления. Example
|