Справочник API

Возвраты и обмены

Возврат и обмен — это заявки со своим жизненным циклом. Ключевое правило: товар встаёт на склад в момент приёмки, а не в момент оформления заявки. До приёмки вещь физически едет к вам и на остатках не отражается.

GET/orders/admin/order-returns

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

Возвраты и обмены бренда с фильтрами по виду и статусу.

Доступ:Ключ интеграцииСессия сотрудникаПраво:view_orders или manage_orders

Параметры запроса

ПараметрТипОбязателенОписание
kindstringнетВид заявки.return · exchange
statusstringнетСтатус заявки.
identifiedbooleanнетТолько опознанные или только неопознанные возвраты.
searchstringнетПоиск по номеру заказа или контрагенту.
limitnumberнетпо умолчанию 50От 1 до 200.
offsetnumberнетпо умолчанию 0Сколько пропустить.

Поля ответа

ПолеТипОписание
itemsarrayЗаявки.
totalnumberВсего по фильтру.

Ошибки

КодОтвет сервераКогда возникаетЧто делать
403{"error":"Forbidden: Missing permission view_orders"}Нет права на чтение заказов.
GET/orders/admin/order-return/{id}

Карточка возврата

Одна заявка: состав, статус, связанный заказ, для обмена — дочерний заказ.

Доступ:Ключ интеграцииСессия сотрудникаПраво:view_orders или manage_orders

Параметры пути

ПараметрТипОбязателенОписание
idnumberдаИдентификатор заявки.

Ошибки

КодОтвет сервераКогда возникаетЧто делать
404{"error":"Возврат не найден"}Заявки нет или она чужого бренда.
PATCH/orders/admin/order-return/{id}/status

Сменить статус возврата

Переводит заявку на следующую стадию. Приёмка возвращает товар на склад.

Доступ:Ключ интеграцииСессия сотрудникаПраво:manage_orders

Допустимые переходы жёстко ограничены: из каждого статуса можно уйти только в разрешённые. Перевод в «принят» начисляет товар на склад — ровно один раз, повторный перевод ничего не удвоит.

Параметры пути

ПараметрТипОбязателенОписание
idnumberдаИдентификатор заявки.

Тело запроса

ПараметрТипОбязателенОписание
statusstringдаНовый статус. Список переходов — в справочнике значений.
commentstringнетКомментарий к смене статуса.

Ошибки

КодОтвет сервераКогда возникаетЧто делать
400{"error":"Недопустимый переход статуса: <из> -> <в>"}Такой переход не разрешён.Сверьтесь с таблицей переходов в справочнике значений.
404{"error":"Возврат не найден"}Заявки нет или она чужого бренда.
POST/orders/admin/order/{id}/return

Оформить возврат

Создаёт заявку на возврат по доставленному оплаченному заказу.

Доступ:Ключ интеграцииСессия сотрудникаПраво:manage_orders

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

Параметры пути

ПараметрТипОбязателенОписание
idnumberдаИдентификатор заказа.

Тело запроса

ПараметрТипОбязателенОписание
modestringдаСпособ оформления.manual · auto
returnLinesarrayдаПозиции: orderItemId и quantity.
shipmentPointstringнетПункт выдачи, куда покупатель сдаст посылку. Для ручного возврата обязателен.
commentstringнетКомментарий.

Ошибки

КодОтвет сервераКогда возникаетЧто делать
400{"error":"Возврат доступен только для оплаченных доставленных заказов (статус «Доставлен» / СДЭК «Вручен»)."}Заказ не оплачен или ещё не доставлен.
400{"error":"Укажите позиции для возврата"}Пустой список позиций.
400{"error":"Количество возврата больше заказанного (<товар>)"}Просят вернуть больше, чем покупали.
400{"error":"Автовозврат СДЭК доступен только для полного возврата по заказу с ПВЗ (не курьер). Используйте ручной режим."}Автоматический возврат запрошен для курьерской доставки или для части заказа.
400{"error":"Укажите ПВЗ, куда клиент сдаст возврат"}Ручной возврат без пункта выдачи.