---
title: "Получить очередь продаж к отгрузке"
method: GET
path: "/api/v1/stock/sales/to-ship"
tags: ["Stock purchasing"]
---

# Получить очередь продаж к отгрузке

`GET /api/v1/stock/sales/to-ship`

## Request

- Base URL: `https://erp.akeda.ru`
- URL: `https://erp.akeda.ru/api/v1/stock/sales/to-ship`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-Api-Key`
  - OAuth 2 (authorization code, authorization URL `https://erp.akeda.ru/oauth2/authorize`, token URL `https://erp.akeda.ru/oauth2/token`, scopes: `akeda:delegate`)
  - HTTP bearer

Очередь склада «К отгрузке» (этап 2 ERP-1427): подтверждённые и исполняемые продажи ядра, у которых отгружен не весь товар. По каждой продаже — товарные строки (заказано, отгружено, осталось), отгрузки склада по продаже, признак живого резерва и доступность «Отгрузить» с кодом причины. Услуги в строки не попадают. Документооборот не нужен. Потолок очереди — 200 продаж.

## Headers

- `X-Tenant` string, required

## Response `200`

Продажи к отгрузке

- StockOrderShippingPage
  - `results` StockOrderShipping[], required
    - `order_id` string, uuid, required
    - `number` string, required
    - `date` string, required
    - `state` string, required
    - `contact_id` string, uuid, required
    - `contact_name` string
    - `company_id` string, uuid
    - `warehouse_id` string, uuid
    - `warehouse_note` string
    - `channel_id` string, uuid
    - `channel_name` string
    - `channel_condition_id` string, uuid
    - `channel_condition_name` string
    - `lines` StockOrderShippingLine[], required
      - `line_id` string, uuid, required
      - `product_id` string, uuid, required
      - `title` string, required
      - `unit` string
      - `ordered_qty` string, required
      - `shipped_qty` string, required
      - `remaining_qty` string, required
      - `reserved_qty` string: ERP-2581: сколько из остатка строки обеспечено бронью с товаром на складе; раскладка по порядку строк, не больше остатка. Комплект без остатка считается по броне компонентов: обеспечено столько комплектов, сколько набирается из неё. Нет поля — бронь не посчитана
      - `short_qty` string: ERP-2581: сколько из остатка строки не обеспечено (остаток минус reserved_qty)
    - `shipments` StockOrderShipment[], required
      - `id` string, uuid, required
      - `order_id` string, uuid, required
      - `number` string, required
      - `date` string, required
      - `status` string, required
      - `warehouse_id` string, uuid
      - `deal` string, uuid
      - `lines` StockOrderShipmentLine[], required
        - `product_id` string, uuid, required
        - `qty` string, required
      - `needed_qty` string: Только у черновика сборки (ERP-2423): сколько нужно собрать по строкам немаркированного товара (picked_qty строк), в базовой единице. Нет поля — сборка марками, черновик до ERP-2423 или проведённая отгрузка
      - `picked_qty` string: Только у черновика сборки (ERP-2423): сколько собрано по тем же строкам, в базовой единице. Не меньше needed_qty — строки собраны
    - `picking` StockOrderShipment
      - `id` string, uuid, required
      - `order_id` string, uuid, required
      - `number` string, required
      - `date` string, required
      - `status` string, required
      - `warehouse_id` string, uuid
      - `deal` string, uuid
      - `lines` StockOrderShipmentLine[], required
        - `product_id` string, uuid, required
        - `qty` string, required
      - `needed_qty` string: Только у черновика сборки (ERP-2423): сколько нужно собрать по строкам немаркированного товара (picked_qty строк), в базовой единице. Нет поля — сборка марками, черновик до ERP-2423 или проведённая отгрузка
      - `picked_qty` string: Только у черновика сборки (ERP-2423): сколько собрано по тем же строкам, в базовой единице. Не меньше needed_qty — строки собраны
    - `reserved` boolean, required
    - `coverage` object: ERP-2581: обеспеченность остатка к отгрузке бронью. Остаток брони по товару минус непокрытое (бронь, под которой на складе физически нет товара — правило отчёта резервов: без товара остаются самые новые обещания). Нет поля — отгружать нечего
      - `state` 'full' | 'partial' | 'none', required: full — все строки к отгрузке обеспечены; none — ни одной единицы; иначе partial
      - `lines` integer, required: Сколько товарных строк ещё к отгрузке
      - `covered_lines` integer, required: Сколько из них обеспечены полностью
    - `reservations` object[]: Остаток резерва самой продажи по складам (товар → количество). Свободный остаток склада его уже вычел, а отгрузка по продаже гасит свой резерв
      - `warehouse_id` string, uuid, required
      - `products` object, required
    - `can_ship` boolean, required
    - `ship_blocked` string
    - `ship_warehouse` object: Склад отгрузки по умолчанию; нет поля — сервер склад не подобрал, его выбирает человек
      - `id` string, uuid, required
      - `name` string, required
      - `source` 'order' | 'reservation' | 'channel' | 'policy' | 'stock', required
  - `count` integer, required

## Other responses

- `401`: Сессия, ключ или кабинет не подтверждены
- `403`: Текущая роль не имеет требуемого права

---

[API](https://skmtc.dev/akeda/apis/akeda-erp-client-api.md) · [All operations](https://skmtc.dev/akeda/apis/akeda-erp-client-api/llms.txt) · [OpenAPI document](https://skmtc.dev/akeda/apis/akeda-erp-client-api/revisions/a99574d597cc?raw)
