Удаление товаров из заказа или уменьшение их числа

Метод доступен для модели DBS.

Если вы используете API-Key-токен, для вызова метода необходим один из доступов в списке

Если вы работаете по модели FBS

Используйте метод PUT campaigns/{campaignId}/orders/{orderId}/boxes.

Удаляет один или несколько товаров из заказа, если магазин не может поставить их все.

Заказ должен находится в статусе "status": "PROCESSING" этапа обработки "substatus": "STARTED". Изменить состав нельзя после передачи статуса "substatus": "READY_TO_SHIP".

Уменьшить количество одинаковых товаров

Передайте обновленное значение в параметре count.

Удалить товар из заказа

Передайте значение 0 в параметре count или не передавайте item.

Нельзя удалить или уменьшить количество товара, если он:

  • добавлен по акции;
  • составляет 99% стоимости заказа;
  • единственный товар в заказе.

В таком случае отмените заказ — в методе PUT campaigns/{campaignId}/orders/{orderId}/status передайте статус заказа CANCELLED с причиной отмены SHOP_FAILED.

Как вернутся деньги

Если покупатель оплатил товар при оформлении, Маркет вернет ему деньги за удаленные из заказа товары в течение двух дней:

  • при оплате банковской картой — с момента, когда магазин переведет заказ в статус SHIPPED;

  • при оплате через Apple Pay или Google Pay — с момента, когда магазин удалит товар из заказа.

⚙️ Лимит: 100 000 запросов в час

Request

PUT

https://api.partner.market.yandex.ru/campaigns/{campaignId}/orders/{orderId}/items

Path parameters

Name

Description

campaignId*

Type: integer<int64>

Идентификатор кампании.

Его можно узнать с помощью запроса GET campaigns или найти в кабинете продавца на Маркете — нажмите на название своего бизнеса и перейдите на страницу:

  • Модули и API → блок Передача данных Маркету.
  • Лог запросов → выпадающий список в блоке Показывать логи.

⚠️ Не передавайте вместо него идентификатор магазина, который указан в кабинете продавца на Маркете рядом с названием магазина и в некоторых отчетах.

Min value: 1

orderId*

Type: integer<int64>

Идентификатор заказа.

Body

application/json
{
    "items": [
        {
            "id": 0,
            "count": 0,
            "instances": [
                {
                    "cis": "string",
                    "uin": "string",
                    "rnpt": "string",
                    "gtd": "string",
                    "countryCode": "RU"
                }
            ]
        }
    ],
    "reason": "PARTNER_REQUESTED_REMOVE"
}

Name

Description

items*

Type: OrderItemModificationDTO[]

Список товаров в заказе.

Если магазин не передал информацию о товаре во входных данных, он будет удален из заказа.

Обязательный параметр.
Список товаров в заказе.

Если магазин не передал информацию о товаре во входных данных, он будет удален из заказа.

Обязательный параметр.

Min items: 1

reason

Type: OrderItemsModificationRequestReasonType

Причина, почему обновился состав заказа:

  • PARTNER_REQUESTED_REMOVE — магазин удалил товар.
  • USER_REQUESTED_REMOVE — покупатель попросил удалить товар.

Enum: PARTNER_REQUESTED_REMOVE, USER_REQUESTED_REMOVE

OrderItemModificationDTO

Список товаров в заказе.

Если магазин не передал информацию о товаре во входных данных, он будет удален из заказа.

Обязательный параметр.

Name

Description

count*

Type: integer<int32>

Новое количество товара.

Min value: 0

id*

Type: integer<int64>

Идентификатор товара в рамках заказа.

Получить идентификатор можно с помощью ресурсов GET campaigns/{campaignId}/orders или GET campaigns/{campaignId}/orders/{orderId}.

Обязательный параметр.

instances

Type: BriefOrderItemInstanceDTO[]

Информация о маркировке единиц товара.

Передавайте в запросе все единицы товара, который подлежит маркировке.

Обязательный параметр, если в заказе от бизнеса есть товары, подлежащие маркировке в системе «Честный ЗНАК» или «ASL BELGISI» (для продавцов Market Yandex Go).
Идентификатор единицы товара.

Заполните только одно поле в зависимости от того, в какой системе маркирован товар.

Подробно о работе с маркируемыми товарами рассказано в Справке Маркета для продавцов.

Min items: 1

OrderItemsModificationRequestReasonType

Причина, почему обновился состав заказа:

  • PARTNER_REQUESTED_REMOVE — магазин удалил товар.
  • USER_REQUESTED_REMOVE — покупатель попросил удалить товар.

Type

Description

OrderItemsModificationRequestReasonType

Enum: PARTNER_REQUESTED_REMOVE, USER_REQUESTED_REMOVE

BriefOrderItemInstanceDTO

Идентификатор единицы товара.

Заполните только одно поле в зависимости от того, в какой системе маркирован товар.

Подробно о работе с маркируемыми товарами рассказано в Справке Маркета для продавцов.

Name

Description

cis

Type: string

Код идентификации единицы товара в системе «Честный ЗНАК» или «ASL BELGISI» (для продавцов Market Yandex Go).

Не экранируйте косую черту в коде символа-разделителя \u001d

01030410947874432155Qbag!\u001d93Zjqw

01030410947874432155Qbag!\\u001d93Zjqw

Косые черты и кавычки в других местах экранируйте по правилам JSON: \\ и \"

countryCode

Type: string

Страна производства в формате ISO 3166-1 alpha-2. Как получить

Example: RU

Min length: 2

Max length: 2

Pattern: ^[A-Z]{2}$

gtd

Type: string

Грузовая таможенная декларация.

Представляет собой строку из трех чисел, разделенных косой чертой: ХХХХХХХХ/ХХХХХХ/ХХХХХХХ.

Первая часть — код таможни, которая зарегистрировала декларацию на ввезенные товары. Далее — дата и номер декларации.

rnpt

Type: string

Регистрационный номер партии товара.

Представляет собой строку из четырех чисел, разделенных косой чертой: ХХХХХХХХ/ХХХХХХ/ХХХХХХХ/ХХХ.

Первая часть — код таможни, которая зарегистрировала декларацию на партию товара. Далее — дата, номер декларации и номер маркированного товара в декларации.

uin

Type: string

Уникальный идентификационный номер ювелирного изделия.

Представляет собой число из 16 цифр.

Responses

200 OK

Маркет успешно обработал ваш запрос. Выходные данные не ожидаются.

400 Bad Request

Запрос содержит неправильные данные. Подробнее об ошибке

Body

application/json
{
    "status": "OK",
    "errors": [
        {
            "code": "string",
            "message": "string"
        }
    ]
}

Name

Description

errors

Type: ApiErrorDTO[]

Список ошибок.
Общий формат ошибки.

Min items: 1

status

Type: ApiResponseStatusType

Тип ответа. Возможные значения:

  • OK — ошибок нет.
  • ERROR — при обработке запроса произошла ошибка.

Enum: OK, ERROR

ApiErrorDTO

Общий формат ошибки.

Name

Description

code*

Type: string

Код ошибки.

message

Type: string

Описание ошибки.

ApiResponseStatusType

Тип ответа. Возможные значения:

  • OK — ошибок нет.
  • ERROR — при обработке запроса произошла ошибка.

Type

Description

ApiResponseStatusType

Enum: OK, ERROR

401 Unauthorized

В запросе не указаны данные для авторизации. Подробнее об ошибке

Body

application/json
{
    "status": "OK",
    "errors": [
        {
            "code": "string",
            "message": "string"
        }
    ]
}

Name

Description

errors

Type: ApiErrorDTO[]

Список ошибок.
Общий формат ошибки.

Min items: 1

status

Type: ApiResponseStatusType

Тип ответа. Возможные значения:

  • OK — ошибок нет.
  • ERROR — при обработке запроса произошла ошибка.

Enum: OK, ERROR

403 Forbidden

Данные для авторизации неверны или доступ к ресурсу запрещен. Подробнее об ошибке

Body

application/json
{
    "status": "OK",
    "errors": [
        {
            "code": "string",
            "message": "string"
        }
    ]
}

Name

Description

errors

Type: ApiErrorDTO[]

Список ошибок.
Общий формат ошибки.

Min items: 1

status

Type: ApiResponseStatusType

Тип ответа. Возможные значения:

  • OK — ошибок нет.
  • ERROR — при обработке запроса произошла ошибка.

Enum: OK, ERROR

404 Not Found

Запрашиваемый ресурс не найден. Подробнее об ошибке

Body

application/json
{
    "status": "OK",
    "errors": [
        {
            "code": "string",
            "message": "string"
        }
    ]
}

Name

Description

errors

Type: ApiErrorDTO[]

Список ошибок.
Общий формат ошибки.

Min items: 1

status

Type: ApiResponseStatusType

Тип ответа. Возможные значения:

  • OK — ошибок нет.
  • ERROR — при обработке запроса произошла ошибка.

Enum: OK, ERROR

420 Method Failure

Превышено ограничение на доступ к ресурсу. Подробнее об ошибке

Body

application/json
{
    "status": "OK",
    "errors": [
        {
            "code": "string",
            "message": "string"
        }
    ]
}

Name

Description

errors

Type: ApiErrorDTO[]

Список ошибок.
Общий формат ошибки.

Min items: 1

status

Type: ApiResponseStatusType

Тип ответа. Возможные значения:

  • OK — ошибок нет.
  • ERROR — при обработке запроса произошла ошибка.

Enum: OK, ERROR

500 Internal Server Error

Внутренняя ошибка Маркета. Подробнее об ошибке

Body

application/json
{
    "status": "OK",
    "errors": [
        {
            "code": "string",
            "message": "string"
        }
    ]
}

Name

Description

errors

Type: ApiErrorDTO[]

Список ошибок.
Общий формат ошибки.

Min items: 1

status

Type: ApiResponseStatusType

Тип ответа. Возможные значения:

  • OK — ошибок нет.
  • ERROR — при обработке запроса произошла ошибка.

Enum: OK, ERROR

No longer supported, please use an alternative and newer version.