Cancellation of the order by the buyer
The method is available for the DBS model.
If you are using an API Key token, one of the accesses in the list is required to call the method
- inventory-and-order-processing — Order processing and inventory
- all-methods — Full account management
Confirms or rejects the buyer's request to cancel the order, which has been sent to the delivery service.
The buyer can cancel the order during its processing or delivery. If the order is still being processed (status PROCESSING), you do not need to confirm the cancellation of the order — it will be canceled automatically.
If the order has already been sent to the delivery service (status DELIVERY or PICKUP) and the user cancelled it, you can notify the cancellation service within 48 hours.
- The delivery service found out about the cancellation before handing over the order to the buyer — confirm the cancellation with a request PUT v2/campaigns/{campaignId}/orders/{orderId}/cancellation/accept.
- The order has already been delivered — reject the cancellation using the same request. Then the customer will still have the order, and the money for it will not be refunded.
How to find out about cancelled orders:
- Pass the parameter
onlyWaitingForCancellationApprovein the request POST v1/businesses/{businessId}/orders. - In the office or via email — A cancellation notification will be sent to it.
- Enable API notifications. Yandex.Market will send you a request. POST notification when there is a new request to cancel the order. How to work with notifications
If you do not confirm or reject the cancellation within 48 hours, the order will be cancelled automatically.
| ⚙️ Limit: 500 requests per hour |
|---|
Request
PUT
https://api.partner.market.yandex.ru/v2/campaigns/{campaignId}/orders/{orderId}/cancellation/accept
Path parameters
|
Name |
Description |
|
campaignId |
Type: integer The ID of the campaign (store) — The technical identifier that represents your store in the Yandex Market system when working through the API. It is uniquely linked to your store, but it is intended only for automated interaction. You can find it using a query GET v2/campaigns or find it in the seller's office on the Market. Click on your account icon → Settings and in the menu on the left, select APIs and modules:
⚠️ Do not confuse it with:
Min value: |
|
orderId |
Type: integer The order ID. |
Body
application/json
{
"accepted": true,
"reason": "ORDER_DELIVERED"
}
|
Name |
Description |
|
accepted |
Type: boolean The decision to cancel the order:
|
|
reason |
Type: string Possible reasons why the order cannot be cancelled.
Enum: |
Responses
200 OK
The response to the order cancellation was successfully transmitted.
Body
application/json
{
"status": "OK"
}
Type: object
400 Bad Request
The request contains incorrect data. More information about the error
Body
application/json
{
"status": "OK"
}
Type: object
401 Unauthorized
The authorization data is not specified in the request. More information about the error
Body
application/json
{
"status": "OK"
}
Type: object
403 Forbidden
The authorization data is incorrect or access to the resource is prohibited. More information about the error
Body
application/json
{
"status": "OK"
}
Type: object
404 Not Found
The requested resource was not found. More information about the error
Body
application/json
{
"status": "OK"
}
Type: object
420 Method Failure
The resource access limit has been exceeded. More information about the error
Body
application/json
{
"status": "OK"
}
Type: object
500 Internal Server Error
Internal error of the Market. More information about the error
Body
application/json
{
"status": "OK"
}
Type: object
pathParams:
- description: "The ID of the campaign (store) — The technical identifier that represents your store in the Yandex Market system when working through the API. It is uniquely linked to your store, but it is intended only for automated interaction.\n\nYou can find it using a query [GET\_v2/campaigns](../../reference/campaigns/getCampaigns.md) or find it in the seller's office on the Market. Click on your account icon → **Settings** and in the menu on the left, select **APIs and modules**:\n\n* block **Campaign ID**;\n* tab **Query log** → drop-down list in the block **Show logs**.\n\n⚠️ Do not confuse it with:\n- the store's identifier, which is displayed in the merchant's personal account.\n- advertising campaigns.\n"
name: campaignId
in: path
required: true
schema:
type: integer
format: int64
minimum: 1
- description: The order ID.
name: orderId
in: path
required: true
schema:
type: integer
format: int64
searchParams: []
headers: []
body: |-
{
"accepted": true,
"reason": "ORDER_DELIVERED"
}
schema:
type: object
required:
- accepted
properties:
accepted:
description: >
The decision to cancel the order:
* `true` — The order is canceled, and the
delivery service found out about the cancellation before handing the
order over to the buyer.
* `false` — The order is not canceled, as
it has already been delivered to the buyer by courier or transferred to
the order pick-up point.
type: boolean
reason:
description: >
Possible reasons why the order cannot be cancelled.
* `ORDER_DELIVERED` — the order has
already been delivered.
* `ORDER_IN_DELIVERY` — the order is
already with the courier.
type: string
enum:
- ORDER_DELIVERED
- ORDER_IN_DELIVERY
bodyType: application/json
method: put
security:
- type: apiKey
name: 'Api-Key'
in: header
- type: oauth2
x-inline: true
flows:
implicit:
authorizationUrl: https://oauth.yandex.ru/authorize
scopes:
market:partner-api: API Яндекс.Маркета / Поиска по товарам для партнеров
path: v2/campaigns/{campaignId}/orders/{orderId}/cancellation/accept
host: https://api.partner.market.yandex.ru
No longer supported, please use an alternative and newer version.