---
metadata:
  - name: generator
    content: Diplodoc Platform v5.55.0
alternate:
  - https://yandex.com/dev/market/partner-api/doc/en/step-by-step/returns.md
  - https://yandex.com/dev/market/partner-api/doc/ru/step-by-step/returns.md
  - https://yandex.com/dev/market/partner-api/doc/zh/step-by-step/returns.md
  - href: en/step-by-step/returns.md
    type: text/markdown
    title: Markdown version
  - href: ../llms.txt
    type: text/markdown
    title: llms.txt
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.com/dev/market/partner-api/doc/en/llms.txt

# Non-purchases and refunds

The buyer has the right to cancel the order until the order is received. He can cancel it in the office at the Market, come to the pick-up point and not pick up the goods, refuse to receive them when the courier arrives, or simply not come to the pick-up point. Such orders become **non-purchases** and are sent to the seller, and when placed according to the model FBY — to the nearest Market warehouse in the region of sale, and then return to the showcase.

The buyer can also cancel the entire purchase or part of it after delivery and receipt of the order. — then registration is required **Refund policy**.

## How to deal with non-purchases and refunds {#new-return}

<!-- source: en/_includes/mermaid/returns.md -->
```mermaid
%%{
  init: {
    'theme': 'base',
    'themeVariables': {
      'primaryColor': '#FDF3E8',
      'primaryTextColor': '#000000',
      'primaryBorderColor': '#BA9C80',
      'lineColor': '#BA9C80',
      'secondaryColor': '#94E1C4',
      'tertiaryColor': '#F84E57',
      'noteBkgColor': '#FED58D'
    }
  }
}%%

sequenceDiagram
    participant Merchant as Your Store
    participant Market as Yandex Market

    rect rgb(251, 243, 232)
        note right of Merchant: Receiving a list of non-redeems and returns
        Merchant ->>+ Market: Campaign ID<br>GET v2/campaigns/{campaignId}/returns
        Market ->> Market: Checks if there are<br>non-redeems and returns.
        Market -->>- Merchant: OK: list of non-redeems and returns, if any.
    end

    opt
      rect rgb(251, 243, 232)
          note right of Merchant: Optional step
          note right of Merchant: Receiving order information
          Merchant ->> Market: Cabinet ID<br>POST v1/businesses/{businessId}/orders
          Market -->> Merchant: OK: order information.
      end
    end

    opt
      rect rgb(251, 243, 232)
          note right of Merchant: Optional step
          note right of Merchant: Receiving a return application
          Merchant ->>+ Market: GET v2/campaigns/{campaignId}/orders/{orderId}/returns/{returnId}/application
          Market -->> Merchant: OK: return application.
      end
    end

    opt
      rect rgb(251, 243, 232)
          note right of Merchant: Optional step
          note right of Merchant: Receiving photos of items in the return
          Merchant ->>+ Market: GET v2/campaigns/{campaignId}/orders/{orderId}/returns/{returnId}/decision/{itemId}/image/{imageHash}
          Market -->> Merchant: OK: item photos.
      end
    end

    opt
      rect rgb(251, 243, 232)
          note right of Merchant: Optional step
          note right of Merchant: For FBY-, FBS-, and Express-stores: creating a chat
          Merchant ->>+ Market: Cabinet ID<br>POST v2/businesses/{businessId}/chats/new
          Market ->> Market: Creates a chat<br>with the user.
          Market -->>- Merchant: OK: chat ID.
        end
    end

    rect rgb(251, 243, 232)
        note right of Merchant: Receiving available return decisions
        Merchant ->>+ Market: POST v1/businesses/{businessId}/returns/decisions
        Market -->>- Merchant: OK: list of available decisions.
    end

    rect rgb(251, 243, 232)
        note right of Merchant: Submitting the return decision and confirming it
        Merchant ->>+ Market: POST v2/campaigns/{campaignId}/orders/{orderId}/returns/{returnId}/decision/submit
        Market -->> Merchant: OK: operation execution status.
    end
```
<!-- endsource: en/_includes/mermaid/returns.md -->

{% note info "How refund statuses change" %}

For models [FBY, FBS and Express](https://yandex.com/dev/market/partner-api/doc/en/step-by-step/fby-fbs-express-return-status-model.md) and [DBS](https://yandex.com/dev/market/partner-api/doc/en/step-by-step/dbs-return-status-model.md).

{% endnote %}

1. Check if there are any new non-purchases and refunds., — [GET v2/campaigns/{campaignId}/returns](https://yandex.com/dev/market/partner-api/doc/en/reference/returns/getReturns.md).

    To get refunds that require a solution, pass the parameter `statuses` with the value `PREMODERATION_DECISION_WAITING` for FBY-, FBS- and Express-orders and `WAITING_FOR_DECISION` for DBS- orders.

    {% note tip "Use API notifications instead of this step." %}

    Yandex.Market will send you a request. [POST notification](https://yandex.com/dev/market/partner-api/doc/en/push-notifications/reference/sendNotification.md) when there is a new non-purchase or refund.

    Send the received message `returnId` in the method [GET v2/campaigns/{campaignId}/orders/{orderId}/returns/{returnId}](https://yandex.com/dev/market/partner-api/doc/en/reference/returns/getReturn.md) to get information about non-purchase or refund.

    [How to work with notifications](https://yandex.com/dev/market/partner-api/doc/en/push-notifications/index.md)

    {% endnote %}

    There may be several refunds per order. This happens when the customer returns the items one at a time.

    {% cut "**Partial non-purchase**" %}

    When the buyer refuses a part of the goods, the order status is returned. `DELIVERED`.

    To find out which items the buyer picked up, compare [the list of items in the order](*item-list) and [list of non-purchased items](*return-item-list).

    {% endcut %}

    {% cut "**Quick Return**" %}

    If you have enabled the option **Quick refund for cheap marriage**, the parameter `fastReturn` will return with the value `true`.

    Read more about the option in [Yandex.Market Help for sellers](https://yandex.ru/support/marketplace/ru/orders/returns/decision#let-it-be).

    {% endcut %}

1. If necessary, get information about orders. — method [POST v1/businesses/{businessId}/orders](https://yandex.com/dev/market/partner-api/doc/en/reference/orders/getBusinessOrders.md).

    For products that you excluded from the order yourself, the parameter `count` will return with the value `0`.

1. If necessary, request a refund request and photos of the items in the refund using the following methods:

    * [GET v2/campaigns/{campaignId}/orders/{orderId}/returns/{returnId}/application](https://yandex.com/dev/market/partner-api/doc/en/reference/returns/getReturnApplication.md).
    * [GET v2/campaigns/{campaignId}/orders/{orderId}/returns/{returnId}/decision/{itemId}/image/{imageHash}](https://yandex.com/dev/market/partner-api/doc/en/reference/returns/getReturnPhoto.md).

1. **For FBY-, FBS- and Express-shops:** You can discuss the refund details with the buyer. To do this, create a chat — [POST v2/businesses/{businessId}/chats/new](https://yandex.com/dev/market/partner-api/doc/en/reference/chats/createChat.md). For more information on how to work with chats, see [Instructions](https://yandex.com/dev/market/partner-api/doc/en/step-by-step/chats.md).

1. Before submitting the solution, get a list of available solutions. — [POST v1/businesses/{businessId}/returns/decisions](https://yandex.com/dev/market/partner-api/doc/en/reference/returns/getReturnAvailableDecisions.md).

    The response will return the available types of solutions and the reasons for the rejection.

1. Submit one of the available refund solutions within 48 hours after creating the application. — [POST v2/campaigns/{campaignId}/orders/{orderId}/returns/{returnId}/decision/submit](https://yandex.com/dev/market/partner-api/doc/en/reference/returns/submitReturnDecision.md).

    **For FBY-, FBS- and Express-shops:** If the buyer does not agree with the decision, he may open a dispute. After that:

    * The refund status will change to `PREMODERATION_DISPUTE`.
    * If you use API notifications, you will receive notifications with the type `ORDER_RETURN_STATUS_UPDATED` and `CHAT_ARBITRAGE_STARTED`.
    * A chat with the referee will appear. [Getting available chats](https://yandex.com/dev/market/partner-api/doc/en/reference/chats/getChats.md)

{% note warning "There were marked items in the non-purchase or return" %}

Put such products into circulation. Read more about labeling on [The Honest Sign website](https://честныйзнак.рф/).

{% endnote %}


## How to calculate the cost of such orders {#cost}

In the request [POST v1/businesses/{businessId}/orders](https://yandex.com/dev/market/partner-api/doc/en/reference/orders/getBusinessOrders.md) The cost of the goods in the order is refunded, but it does not include non-purchased and returned goods.

To calculate correctly, subtract from [the order price](*order-cost) [refund amount](*amount).

## How to get a report on non-purchases and refunds {#report}

For information on how to receive reports, see [step-by-step instructions](https://yandex.com/dev/market/partner-api/doc/en/step-by-step/reports.md).

[*item-list]: Parameter `items` in the request [POST v1/businesses/{businessId}/orders](https://yandex.com/dev/market/partner-api/doc/en/reference/orders/getBusinessOrders.md).

[*return-item-list]: Parameter `items` in the request [GET v2/campaigns/{campaignId}/returns](https://yandex.com/dev/market/partner-api/doc/en/reference/returns/getReturns.md).

[*order-cost]: Parameter `buyerItemsTotalBeforeDiscount` in the request [POST v1/businesses/{businessId}/orders](https://yandex.com/dev/market/partner-api/doc/en/reference/orders/getBusinessOrders.md).

[*amount]: Parameter `amount` in the request [GET v2/campaigns/{campaignId}/orders/{orderId}/returns/{returnId}](https://yandex.com/dev/market/partner-api/doc/en/reference/returns/getReturn.md).