Изменение статусов заказа
Изменяет статусы нескольких заказов. Максимальное количество заказов, у которых можно изменить статус в одном запросе, — 30.
Возможные изменения статусов:
- Если магазин подтвердил и подготовил заказ к отправке, то заказ из статуса
"status": "PROCESSING"и этапа обработки"substatus": "STARTED"нужно перевести в статус"status": "PROCESSING"и этап обработки"substatus": "READY_TO_SHIP". - Если магазин подтвердил заказ, но не может его выполнить (например, товар числится в базе, но отсутствует на складе или нет нужного цвета), то заказ из статуса
"status": "PROCESSING"и этапа обработки"substatus": "STARTED"нужно перевести в статус"status": "CANCELLED"с причиной отмены заказа"substatus": "SHOP_FAILED". - Если магазин подготовил заказ к отгрузке, но не может его выполнить (например, последний товар был поврежден или оказался с браком), то заказ из статуса
"status": "PROCESSING"и этапа обработки"substatus": "READY_TO_SHIP"нужно перевести в статус"status": "CANCELLED"с причиной отмены заказа"substatus": "SHOP_FAILED".
Максимальное количество заказов, у которых можно изменить статус в одном запросе, — 30.
| ⚙️ Лимит: 1 000 000 запросов в час |
|---|
Request
POST
https://api.partner.market.yandex.ru/campaigns/{campaignId}/orders/status-update
Path parameters
|
Name |
Type |
Description |
|
campaignId* |
integer<int64> |
Идентификатор кампании в API и магазина в кабинете. Каждая кампания в API соответствует магазину в кабинете. Чтобы узнать идентификаторы своих магазинов, воспользуйтесь запросом GET campaigns. |
Body
{
"orders": [
{
"id": 0,
"status": "PLACING",
"substatus": "RESERVATION_EXPIRED"
}
]
}
|
Name |
Type |
Description |
|
orders* |
Список заказов. |
OrderStateDTO
Информация по заказу.
|
Name |
Type |
Description |
|
id* |
integer<int64> |
Идентификатор заказа. |
|
status* |
Статус заказа:
Также могут возвращаться другие значения. Обрабатывать их не требуется.
|
|
|
substatus |
Этап обработки заказа (если он имеет статус Возможные значения для заказа в статусе
Возможные значения для заказа в статусе
Также могут возвращаться другие значения. Обрабатывать их не требуется.
|
OrderStatusType
Статус заказа:
-
CANCELLED— заказ отменен. -
DELIVERED— заказ получен покупателем. -
DELIVERY— заказ передан в службу доставки. -
PICKUP— заказ доставлен в пункт самовывоза. -
PROCESSING— заказ находится в обработке. -
UNPAID— заказ оформлен, но еще не оплачен (если выбрана оплата при оформлении).
Также могут возвращаться другие значения. Обрабатывать их не требуется.
|
Type |
Description |
|
Enum: |
OrderSubstatusType
Этап обработки заказа (если он имеет статус PROCESSING) или причина отмены заказа (если он имеет статус CANCELLED).
Возможные значения для заказа в статусе PROCESSING:
STARTED— заказ подтвержден, его можно начать обрабатывать.READY_TO_SHIP— заказ собран и готов к отправке.
Возможные значения для заказа в статусе CANCELLED:
-
PROCESSING_EXPIRED— значение более не используется. -
REPLACING_ORDER— покупатель решил заменить товар другим по собственной инициативе. -
RESERVATION_EXPIRED— покупатель не завершил оформление зарезервированного заказа в течение 10 минут. -
SHOP_FAILED— магазин не может выполнить заказ. -
USER_CHANGED_MIND— покупатель отменил заказ по личным причинам. -
USER_NOT_PAID— покупатель не оплатил заказ (для типа оплатыPREPAID) в течение 30 минут. -
USER_REFUSED_DELIVERY— покупателя не устроили условия доставки. -
USER_REFUSED_PRODUCT— покупателю не подошел товар. -
USER_REFUSED_QUALITY— покупателя не устроило качество товара. -
USER_UNREACHABLE— не удалось связаться с покупателем. Для отмены с этой причиной необходимо выполнить условия:- не менее 3 звонков с 8 до 21 в часовом поясе покупателя;
- перерыв между первым и третьим звонком не менее 90 минут;
- соединение не короче 5 секунд.
Если хотя бы одно из этих условий не выполнено (кроме случая, когда номер недоступен), отменить заказ не получится. Вернется ответ с кодом ошибки 400.
Также могут возвращаться другие значения. Обрабатывать их не требуется.
|
Type |
Description |
|
Enum: |
Responses
200 OK
Возвращается информация об обновленных статусах заказов
Body
{
"status": "OK",
"result": {
"orders": [
{
"id": 0,
"status": "PLACING",
"substatus": "RESERVATION_EXPIRED",
"updateStatus": "OK",
"errorDetails": "string"
}
]
}
}
|
Name |
Type |
Description |
|
status |
Тип ответа. |
|
|
result |
Список заказов, статус которых обновился. |
ApiResponseStatusType
Тип ответа.
|
Type |
Description |
|
Enum: |
UpdateOrderStatusesDTO
Список заказов, статус которых обновился.
|
Name |
Type |
Description |
|
orders |
Список с обновленными заказами. |
UpdateOrderStatusDTO
Список заказов.
|
Name |
Type |
Description |
|
id |
integer<int64> |
Идентификатор заказа. |
|
status |
Статус заказа:
Также могут возвращаться другие значения. Обрабатывать их не требуется.
|
|
|
substatus |
Этап обработки заказа (если он имеет статус Возможные значения для заказа в статусе
Возможные значения для заказа в статусе
Также могут возвращаться другие значения. Обрабатывать их не требуется.
|
|
|
updateStatus |
Статус обновления |
|
|
errorDetails |
string |
Ошибка при изменении статуса заказа. Содержит описание ошибки и идентификатор заказа. Возвращается, если параметр |
OrderUpdateStatusType
Изменился ли статус заказа:
-
OK— статус изменен. -
ERROR— статус не изменен. В этом случае появится сообщение об ошибке в параметреerrorDetails.
|
Type |
Description |
|
Enum: |
400 Bad Request
Запрос содержит неправильные данные.
Body
{
"status": "OK",
"errors": [
{
"code": "string",
"message": "string"
}
]
}
|
Name |
Type |
Description |
|
status |
Тип ответа. |
|
|
errors |
Список ошибок. |
ApiErrorDTO
Общий формат ошибки.
|
Name |
Type |
Description |
|
code* |
string |
Код ошибки. |
|
message |
string |
Описание ошибки. |
401 Unauthorized
В запросе не указаны данные для авторизации.
Body
{
"status": "OK",
"errors": [
{
"code": "string",
"message": "string"
}
]
}
|
Name |
Type |
Description |
|
status |
Тип ответа. |
|
|
errors |
Список ошибок. |
403 Forbidden
Данные для авторизации неверны или доступ к ресурсу запрещен.
Body
{
"status": "OK",
"errors": [
{
"code": "string",
"message": "string"
}
]
}
|
Name |
Type |
Description |
|
status |
Тип ответа. |
|
|
errors |
Список ошибок. |
404 Not Found
Запрашиваемый ресурс не найден.
Body
{
"status": "OK",
"errors": [
{
"code": "string",
"message": "string"
}
]
}
|
Name |
Type |
Description |
|
status |
Тип ответа. |
|
|
errors |
Список ошибок. |
420 Method Failure
Превышено ограничение на доступ к ресурсу.
Body
{
"status": "OK",
"errors": [
{
"code": "string",
"message": "string"
}
]
}
|
Name |
Type |
Description |
|
status |
Тип ответа. |
|
|
errors |
Список ошибок. |
500 Internal Server Error
Внутренняя ошибка сервера.
Body
{
"status": "OK",
"errors": [
{
"code": "string",
"message": "string"
}
]
}
|
Name |
Type |
Description |
|
status |
Тип ответа. |
|
|
errors |
Список ошибок. |