Деактивировать заказ
Деактивирует заказ и QR-код.
Если заказ деактивирован, метод ничего не делает и возвращает успешный ответ 200 OK.
Если заказ уже оплачен, возвращает 400 Bad Request с ошибкой ORDER_ALREADY_CAPTURED. В таком случае проведите возврат методом /orders/{orderId}/refund.
Если в ответе статус 5XX, повторите запрос.
Совет
Пошаговые инструкции см. в разделе Самостоятельная интеграция.
Скачайте OpenAPI-спецификацию в разделе Specification.
Аутентификация запросов
В каждом запросе передавайте в HTTP-заголовки:
|
|
Заголовок: Выпустите его личном кабинете по инструкции. |
|
|
Заголовок: Токен кассового ПО. Получите его в личном кабинете или у менеджера интеграции. |
Если в запросе отсутствуют или переданы недействительные токены, сервер вернет статус 401 Unauthorized.
Пример запроса:
curl https://pay.yandex.ru/api/merchant/cash-register/v1/accounts \
--header 'Authorization: Api-Key <YandexPayApiKey>' \
--header 'Software-Authorization: <SoftwareAuthorization>' \
Request
PUT
https://sandbox.pay.yandex.ru/api/merchant/cash-register/v1/orders/{orderId}/deactivate
Sandbox
PUT
https://pay.yandex.ru/api/merchant/cash-register/v1/orders/{orderId}/deactivate
Production
Path parameters
|
Name |
Description |
|
orderId |
Type: string Уникальный идентификатор заказа на стороне продавца. Должен совпадать с Max length: Example: `` |
Body
application/json
{
"externalOperationId": "0196578f-82e8-79a8-be85-53a78df70f79"
}
|
Name |
Description |
|
externalOperationId |
Type: string Уникальный идентификатор операции на стороне продавца. Max length: Example: |
Responses
200 OK
Заказ успешно деактивирован.
Body
application/json
{}
Type: object
400 Bad Request
Ошибка валидации или бизнес-логики.
Body
application/json
{
"status": "fail",
"reason": "Invalid cart item parameter: total = 200.5004",
"reasonCode": "VALIDATION_ERROR"
}
All of 2 types
-
Type: Error
Example
{ "status": "fail", "reason": "example" } -
Type: object
reasonCode
Type: BadRequestErrorReasonCode
Код ошибки:
VALIDATION_ERROR— Ошибка валидации. Тело или параметры запроса не соответствуют спецификации.QRC_ID_NOT_FOUND— QR-код не найден, QR-табличка не привязана к продавцу.ORDER_COLLISION— Заказ с таким идентификатором уже существует, при этом его параметры отличаются от указанных в запросе.ORDER_NOT_FOUND— Заказ не найден.ORDER_ALREADY_CAPTURED— Заказ уже оплачен.ORDER_NOT_CAPTURED— Заказ не оплачен.ORDER_REFUND_COLLISION— Операция возврата заказа уже существует, при этом ее параметры отличаются от указанных в запросе.ORDER_REFUND_WITHOUT_CART_FOR_PARTIAL_REFUND— Запрос на частичный возврат без указания корзины. Для проведения частичного возврата заполните полеrefundCart.ORDERUPDATE_UNKNOWN_ITEM_PRODUCT_ID—productIdотсутствует в корзине заказа.ORDERUPDATE_DUPLICATE_ITEM_PRODUCT_ID—productIdдолжен быть уникальным.ORDERUPDATE_INVALID_ITEM_PRICE_WITH_QUANTITY— Некорректная комбинация цены и количества единиц товара для возврата.ORDERUPDATE_INVALID_ITEM_PRICE_RANGE— Неверно задана цена за единицу товара для возврата.ORDERUPDATE_INVALID_ITEM_QUANTITY— Неверно задано количество единиц товара для возврата.ANOTHER_REFUND_IN_PROGRESS— Другой возврат уже в процессе, дождитесь его завершения.
Список кодов ошибок открытый и будет дополняться, необходимо уметь обрабатывать неизвестные коды ошибок.
Enum:
VALIDATION_ERROR,QRC_ID_NOT_FOUND,ORDER_COLLISION,ORDER_NOT_FOUND,ORDER_ALREADY_CAPTURED,ORDER_NOT_CAPTURED,ORDER_REFUND_COLLISION,ORDER_REFUND_WITHOUT_CART_FOR_PARTIAL_REFUND,ORDERUPDATE_UNKNOWN_ITEM_PRODUCT_ID,ORDERUPDATE_DUPLICATE_ITEM_PRODUCT_ID,ORDERUPDATE_INVALID_ITEM_PRICE_RANGE,ORDERUPDATE_INVALID_ITEM_PRICE_WITH_QUANTITY,ORDERUPDATE_INVALID_ITEM_QUANTITY,ANOTHER_REFUND_IN_PROGRESSreason
Type: string
Example:
Invalid cart item parameter: total = 200.5004Example
{ "reasonCode": "VALIDATION_ERROR", "reason": "Invalid cart item parameter: total = 200.5004" }
Error
|
Name |
Description |
|
reason |
Type: string Описание ошибки. Example: |
|
status |
Type: string Default: Const: |
Example
{
"status": "fail",
"reason": "example"
}
BadRequestErrorReasonCode
Код ошибки:
VALIDATION_ERROR— Ошибка валидации. Тело или параметры запроса не соответствуют спецификации.QRC_ID_NOT_FOUND— QR-код не найден, QR-табличка не привязана к продавцу.ORDER_COLLISION— Заказ с таким идентификатором уже существует, при этом его параметры отличаются от указанных в запросе.ORDER_NOT_FOUND— Заказ не найден.ORDER_ALREADY_CAPTURED— Заказ уже оплачен.ORDER_NOT_CAPTURED— Заказ не оплачен.ORDER_REFUND_COLLISION— Операция возврата заказа уже существует, при этом ее параметры отличаются от указанных в запросе.ORDER_REFUND_WITHOUT_CART_FOR_PARTIAL_REFUND— Запрос на частичный возврат без указания корзины. Для проведения частичного возврата заполните полеrefundCart.ORDERUPDATE_UNKNOWN_ITEM_PRODUCT_ID—productIdотсутствует в корзине заказа.ORDERUPDATE_DUPLICATE_ITEM_PRODUCT_ID—productIdдолжен быть уникальным.ORDERUPDATE_INVALID_ITEM_PRICE_WITH_QUANTITY— Некорректная комбинация цены и количества единиц товара для возврата.ORDERUPDATE_INVALID_ITEM_PRICE_RANGE— Неверно задана цена за единицу товара для возврата.ORDERUPDATE_INVALID_ITEM_QUANTITY— Неверно задано количество единиц товара для возврата.ANOTHER_REFUND_IN_PROGRESS— Другой возврат уже в процессе, дождитесь его завершения.
Список кодов ошибок открытый и будет дополняться, необходимо уметь обрабатывать неизвестные коды ошибок.
Type: string
Enum: VALIDATION_ERROR, QRC_ID_NOT_FOUND, ORDER_COLLISION, ORDER_NOT_FOUND, ORDER_ALREADY_CAPTURED, ORDER_NOT_CAPTURED, ORDER_REFUND_COLLISION, ORDER_REFUND_WITHOUT_CART_FOR_PARTIAL_REFUND, ORDERUPDATE_UNKNOWN_ITEM_PRODUCT_ID, ORDERUPDATE_DUPLICATE_ITEM_PRODUCT_ID, ORDERUPDATE_INVALID_ITEM_PRICE_RANGE, ORDERUPDATE_INVALID_ITEM_PRICE_WITH_QUANTITY, ORDERUPDATE_INVALID_ITEM_QUANTITY, ANOTHER_REFUND_IN_PROGRESS
401 Unauthorized
Ошибка авторизации.
Body
application/json
{
"status": "fail",
"reason": "Authorization header is missing",
"reasonCode": "AUTHENTICATION_ERROR"
}
All of 2 types
-
Type: Error
Example
{ "status": "fail", "reason": "example" } -
Type: object
reasonCode
Type: UnauthorizedErrorReasonCode
Код ошибки:
AUTHENTICATION_ERROR— Ошибка авторизации. Повторно получите API-ключ.
Список кодов ошибок открытый и будет дополняться, необходимо уметь обрабатывать неизвестные коды ошибок.
Enum:
AUTHENTICATION_ERRORreason
Type: string
Example:
Authorization header is missingExample
{ "reasonCode": "AUTHENTICATION_ERROR", "reason": "Authorization header is missing" }
UnauthorizedErrorReasonCode
Код ошибки:
AUTHENTICATION_ERROR— Ошибка авторизации. Повторно получите API-ключ.
Список кодов ошибок открытый и будет дополняться, необходимо уметь обрабатывать неизвестные коды ошибок.
Type: string
Const: AUTHENTICATION_ERROR
Example: AUTHENTICATION_ERROR
429 Too Many Requests
Слишком много запросов, повторите запрос позже.
Если ошибка сохраняется при разумном использовании API, обратитесь в поддержку.
500 Internal Server Error
Внутренняя ошибка сервера. Тело ответа может отсутствовать или иметь произвольный формат.
При получении статуса 5XX, повторите запрос.