---
metadata:
  - name: generator
    content: Diplodoc Platform v5.57.3
alternate:
  - https://yandex.com/dev/market/partner-api/doc/en/step-by-step/laas-order.md
  - https://yandex.com/dev/market/partner-api/doc/ru/step-by-step/laas-order.md
  - https://yandex.com/dev/market/partner-api/doc/zh/step-by-step/laas-order.md
  - href: ru/step-by-step/laas-order.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/ru/llms.txt


# Работа с LaaS-заказом

С помощью API Маркета вы можете получать, создавать, изменять и отменять заказы.


## Создать заказ {#create}

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

sequenceDiagram
    participant Merchant as Ваш магазин
    participant Market as Яндекс Маркет

    opt
      rect rgb(251, 243, 232)
          note right of Merchant: Необязательный шаг
          note right of Merchant: Для самовывоза: получение списка пунктов выдачи
          Merchant ->> Market: POST v2/businesses/{businessId}/logistics-points
          Market -->> Merchant: OK: список пунктов выдачи.
      end
    end

    rect rgb(251, 243, 232)
        note right of Merchant: Получение остатков и идентификаторов складов
        Merchant ->> Market: POST v2/campaigns/{campaignId}/offers/stocks
        Market -->> Merchant: OK: остатки товаров и идентификаторы складов.
    end

    rect rgb(251, 243, 232)
        note right of Merchant: Получение вариантов доставки заказов
        Merchant ->> Market: POST v2/campaigns/{campaignId}/delivery-options
        Market -->> Merchant: OK: варианты доставки.
    end

    rect rgb(251, 243, 232)
        note right of Merchant: Создание заказа
        Merchant ->>+ Market: POST v2/campaigns/{campaignId}/orders/create
        alt Заказ создан как черновик (draft=true)
            Market ->> Market: Создает заказ<br>в статусе RESERVED.
        else Заказ создан без черновика (draft=false)
            Market ->> Market: Создает заказ<br>в статусе PROCESSING STARTED.
        end
        Market -->>- Merchant: OK: идентификатор заказа.
    end

    opt
        note right of Merchant: Если заказ создан с draft=true
        rect rgb(251, 243, 232)
            note right of Merchant: Подтверждение заказа
            Merchant ->>+ Market: Статус PROCESSING с подстатусом STARTED<br>PUT v2/campaigns/{campaignId}/orders/{orderId}/status
            Market ->> Market: Запускает операцию<br>по подтверждению заказа.
            Market -->>- Merchant: OK: идентификатор операции.
        end
        rect rgb(251, 243, 232)
            note right of Merchant: Проверка статуса операции
            Merchant ->> Market: Идентификатор операции<br>POST v2/businesses/{businessId}/operations
            Market -->> Merchant: OK: информация об операции.
        end
    end

```
<!-- endsource: ru/_includes/mermaid/create-order.md -->

1. **Для самовывоза:** при необходимости вызовите метод [POST v1/businesses/{businessId}/logistics-points](https://yandex.com/dev/market/partner-api/doc/ru/reference/logistic-points/getLogisticPoints.md), который возвращает список пунктов выдачи заказов Маркета.

    Регулярно запрашивайте эту информацию, чтобы в системе магазина хранить актуальные данные. Например, раз в день.

1. Проверьте остатки на складах — метод [POST v2/campaigns/{campaignId}/offers/stocks](https://yandex.com/dev/market/partner-api/doc/ru/reference/stocks/getStocks.md).

    В ответе также вернутся идентификаторы складов, на которых хранятся товары.

1. Получите доступные варианты доставки. Для этого в методе [POST v1/campaigns/{campaignId}/delivery-options](https://yandex.com/dev/market/partner-api/doc/ru/reference/delivery-options/getDeliveryOptions.md) передайте все товары в заказе и информацию для курьерской доставки или самовывоза.

    При необходимости также передайте идентификаторы складов, с которых нужно забрать товары. Если этого не сделать, Маркет сам выберет склады.

1. Создайте заказ с помощью метода [POST v1/campaigns/{campaignId}/orders/create](https://yandex.com/dev/market/partner-api/doc/ru/reference/orders/createOrder.md). Для доставки курьером передайте полный адрес, в том числе регион.

    Значение параметра `draft`:

    * `true` — Маркет создаст заказ в статусе `RESERVED` и будет ждать подтверждения от магазина.
    * `false` — Маркет создаст заказ в статусе `PROCESSING` с подстатусом `STARTED` и начнёт его обработку, подтверждение не требуется.

1. Если заказ находится в статусе `RESERVED` и вы готовы его подтвердить, передайте статус `PROCESSING` с подстатусом `STARTED` в методе [PUT v2/campaigns/{campaignId}/orders/{orderId}/status](https://yandex.com/dev/market/partner-api/doc/ru/reference/orders/updateOrderStatus.md). Если не сделать это в течение часа после создания заказа, Маркет отменит заказ.

    В ответе вернется идентификатор операции.

1. Проверьте статус операции с помощью метода [POST v1/businesses/{businessId}/operations](https://yandex.com/dev/market/partner-api/doc/ru/reference/operations/getOperations.md).


## Изменить заказ {#change}

Вы можете изменить:

* данные получателя;
* интервал дат курьерской доставки.

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

sequenceDiagram
    participant Merchant as Ваш магазин
    participant Market as Яндекс Маркет

    rect rgb(251, 243, 232)
        note right of Merchant: Для изменения интервала дат курьерской доставки
        note right of Merchant: Получение доступных интервалов доставки
        Merchant ->> Market: POST v2/campaigns/{campaignId}/orders/update-options
        Market -->> Merchant: OK: интервалы доставки.
    end

    rect rgb(251, 243, 232)
        note right of Merchant: Изменение заказа
        Merchant ->>+ Market: POST v2/campaigns/{campaignId}/orders/update
        Market ->> Market: Запускает операцию<br>по изменению заказа.
        Market -->>- Merchant: OK: идентификатор операции.
    end

    rect rgb(251, 243, 232)
        note right of Merchant: Проверка статуса операции
        Merchant ->> Market: Идентификатор операции<br>POST v2/businesses/{businessId}/operations
        Market -->> Merchant: OK: информация об операции.
    end
```
<!-- endsource: ru/_includes/mermaid/change-order.md -->

1. **Для изменения интервала дат курьерской доставки:** получите доступные временные интервалы с помощью метода [POST v1/campaigns/{campaignId}/orders/update-options](https://yandex.com/dev/market/partner-api/doc/ru/reference/orders/getOrderUpdateOptions.md).

1. Запустите операцию по изменению заказа. Для этого укажите идентификатор заказа и новые данные в методе [POST v1/campaigns/{campaignId}/orders/update](https://yandex.com/dev/market/partner-api/doc/ru/reference/orders/updateOrder.md).

    Передавайте только ту информацию, которую хотите изменить. При необходимости вы можете отредактировать и данные получателя, и интервал дат курьерской доставки одновременно.

1. Проверьте статус операции с помощью метода [POST v1/businesses/{businessId}/operations](https://yandex.com/dev/market/partner-api/doc/ru/reference/operations/getOperations.md).


## Отменить заказ {#cancel}

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

sequenceDiagram
    participant Merchant as Ваш магазин
    participant Market as Яндекс Маркет

    rect rgb(251, 243, 232)
        note right of Merchant: Отмена заказа или заказов
        Merchant ->>+ Market: Статус `CANCELLED` с причиной отмены `SHOP_FAILED`<br>PUT v2/campaigns/{campaignId}/orders/{orderId}/status<br>или<br>POST v2/campaigns/{campaignId}/orders/status-update
        Market ->> Market: Запускает операцию<br>по отмене заказа.
        Market -->>- Merchant: OK: идентификатор операции.
    end

    rect rgb(251, 243, 232)
        note right of Merchant: Проверка статуса операции
        Merchant ->> Market: Идентификатор операции<br>POST v2/businesses/{businessId}/operations
        Market -->> Merchant: OK: информация об операции.
    end

    opt
      rect rgb(251, 243, 232)
          note right of Merchant: Необязательный шаг
          note right of Merchant: Проверка статуса заказа или заказов
          Merchant ->> Market: POST v1/businesses/{businessId}/orders
          Market -->> Merchant: OK: информация о заказе или заказах.
      end
    end
```
<!-- endsource: ru/_includes/mermaid/cancel-order.md -->

1. Запустите операцию по отмене заказа. Для этого передайте статус `CANCELLED` с причиной отмены `SHOP_FAILED` в методе:

    * [PUT v2/campaigns/{campaignId}/orders/{orderId}/status](https://yandex.com/dev/market/partner-api/doc/ru/reference/orders/updateOrderStatus.md) — для одного заказа;
    * [POST v2/campaigns/{campaignId}/orders/status-update](https://yandex.com/dev/market/partner-api/doc/ru/reference/orders/updateOrderStatuses.md) — для нескольких заказов.

    Не передавайте другие статусы.

1. Проверьте статус операции — метод [POST v1/businesses/{businessId}/operations](https://yandex.com/dev/market/partner-api/doc/ru/reference/operations/getOperations.md).

1. При необходимости проверьте статус заказа: используйте метод [POST v1/businesses/{businessId}/orders](https://yandex.com/dev/market/partner-api/doc/ru/reference/orders/getBusinessOrders.md) с фильтром `orderIds`.
