Изменение статусов заказа
Изменяет статусы нескольких заказов.
Возможные изменения статусов:
- Если магазин подтвердил и подготовил заказ к отправке, то заказ из статуса
"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 |
Description |
campaignId* |
Type: integer<int64> Идентификатор кампании в API и магазина в кабинете. Каждая кампания в API соответствует магазину в кабинете. Чтобы узнать идентификаторы своих магазинов, воспользуйтесь запросом GET campaigns. |
Body
{
"orders": [
{
"id": 0,
"status": "PLACING",
"substatus": "RESERVATION_EXPIRED"
}
]
}
Name |
Description |
orders* |
Type: OrderStateDTO[] Список заказов. Max items: Min items: |
OrderStateDTO
Информация по заказу.
Name |
Description |
id* |
Type: integer<int64> Идентификатор заказа. |
status* |
Type: OrderStatusType Статус заказа:
Также могут возвращаться другие значения. Обрабатывать их не требуется. Enum: |
substatus |
Type: OrderSubstatusType Этап обработки заказа (если он имеет статус
Также могут возвращаться другие значения. Обрабатывать их не требуется. Enum: |
OrderStatusType
Статус заказа:
-
CANCELLED
— отменен. -
DELIVERED
— получен покупателем. -
DELIVERY
— передан в службу доставки. -
PICKUP
— доставлен в пункт самовывоза. -
PROCESSING
— находится в обработке. -
PENDING
— ожидает обработки со стороны продавца. -
UNPAID
— оформлен, но еще не оплачен (если выбрана оплата при оформлении). -
PLACING
— оформляется, подготовка к резервированию. -
RESERVED
— зарезервирован, но недооформлен. -
PARTIALLY_RETURNED
— возвращен частично. -
RETURNED
— возвращен полностью. -
UNKNOWN
— неизвестный статус.
Также могут возвращаться другие значения. Обрабатывать их не требуется.
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.
-
-
TECHNICAL_ERROR
— техническая ошибка на стороне Маркета. Обратитесь в поддержку.
Также могут возвращаться другие значения. Обрабатывать их не требуется.
Type |
Description |
Enum: |
Responses
200 OK
Возвращается информация об обновленных статусах заказов.
Body
{
"status": "OK",
"result": {
"orders": [
{
"id": 0,
"status": "PLACING",
"substatus": "RESERVATION_EXPIRED",
"updateStatus": "OK",
"errorDetails": "string"
}
]
}
}
Name |
Description |
result |
Type: UpdateOrderStatusesDTO Список заказов, статус которых обновился. |
status |
Type: ApiResponseStatusType Тип ответа. Enum: |
UpdateOrderStatusesDTO
Список заказов, статус которых обновился.
Name |
Description |
orders |
Type: UpdateOrderStatusDTO[] Список с обновленными заказами. |
UpdateOrderStatusDTO
Список заказов.
Name |
Description |
errorDetails |
Type: string Ошибка при изменении статуса заказа. Содержит описание ошибки и идентификатор заказа. Возвращается, если параметр |
id |
Type: integer<int64> Идентификатор заказа. |
status |
Type: OrderStatusType Статус заказа:
Также могут возвращаться другие значения. Обрабатывать их не требуется. Enum: |
substatus |
Type: OrderSubstatusType Этап обработки заказа (если он имеет статус
Также могут возвращаться другие значения. Обрабатывать их не требуется. Enum: |
updateStatus |
Type: OrderUpdateStatusType Статус обновления. Enum: |
OrderUpdateStatusType
Изменился ли статус заказа:
-
OK
— статус изменен. -
ERROR
— статус не изменен. В этом случае появится сообщение об ошибке в параметреerrorDetails
.
Type |
Description |
Enum: |
400 Bad Request
Запрос содержит неправильные данные.
Body
{
"status": "OK",
"errors": [
{
"code": "string",
"message": "string"
}
]
}
Name |
Description |
errors |
Type: ApiErrorDTO[] Список ошибок. |
status |
Type: ApiResponseStatusType Тип ответа. Enum: |
ApiErrorDTO
Общий формат ошибки.
Name |
Description |
code* |
Type: string Код ошибки. |
message |
Type: string Описание ошибки. |
401 Unauthorized
В запросе не указаны данные для авторизации.
Body
{
"status": "OK",
"errors": [
{
"code": "string",
"message": "string"
}
]
}
Name |
Description |
errors |
Type: ApiErrorDTO[] Список ошибок. |
status |
Type: ApiResponseStatusType Тип ответа. Enum: |
403 Forbidden
Данные для авторизации неверны или доступ к ресурсу запрещен.
Body
{
"status": "OK",
"errors": [
{
"code": "string",
"message": "string"
}
]
}
Name |
Description |
errors |
Type: ApiErrorDTO[] Список ошибок. |
status |
Type: ApiResponseStatusType Тип ответа. Enum: |
404 Not Found
Запрашиваемый ресурс не найден.
Body
{
"status": "OK",
"errors": [
{
"code": "string",
"message": "string"
}
]
}
Name |
Description |
errors |
Type: ApiErrorDTO[] Список ошибок. |
status |
Type: ApiResponseStatusType Тип ответа. Enum: |
420 Method Failure
Превышено ограничение на доступ к ресурсу.
Body
{
"status": "OK",
"errors": [
{
"code": "string",
"message": "string"
}
]
}
Name |
Description |
errors |
Type: ApiErrorDTO[] Список ошибок. |
status |
Type: ApiResponseStatusType Тип ответа. Enum: |
500 Internal Server Error
Внутренняя ошибка сервера.
Body
{
"status": "OK",
"errors": [
{
"code": "string",
"message": "string"
}
]
}
Name |
Description |
errors |
Type: ApiErrorDTO[] Список ошибок. |
status |
Type: ApiResponseStatusType Тип ответа. Enum: |