---
title: "Получить шаблоны продаж или закупок"
method: GET
path: "/api/v1/core/trade/templates"
tags: ["Core trade"]
---

# Получить шаблоны продаж или закупок

`GET /api/v1/core/trade/templates`

## Request

- Base URL: `https://erp.akeda.ru`
- URL: `https://erp.akeda.ru/api/v1/core/trade/templates`
- 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

Шаблоны продаж или закупок с повторением (ERP-1578): тело продажи или закупки, повторение, действия при создании, ближайшее срабатывание и дата последнего созданной продажи или закупки. Архивные — только с archived=true или state=archived.

## Query parameters

- `side` 'sale' | 'purchase'
- `state` 'active' | 'paused' | 'archived'
- `contact_id` string, uuid
- `contract_id` string, uuid
- `department_id` string, uuid
- `archived` boolean
- `limit` integer
- `offset` integer

## Headers

- `X-Tenant` string, required

## Response `200`

Шаблоны продаж или закупок

- CoreOrderTemplateList
  - `results` CoreOrderTemplate[], required
    - `id` string, uuid, required
    - `side` 'sale' | 'purchase', required
    - `state` 'active' | 'paused' | 'archived', required
    - `order` CoreOrderInput, required: Продажа или закупка из запроса: поля одни для формы, загрузки и фасадов модулей.
      - `side` 'sale' | 'purchase', required
      - `number` string: Свой номер; пусто — номер выдаёт счётчик вида
      - `date` string, date, required
      - `business_id` string, uuid
      - `company_id` string, uuid
      - `contact_id` string, uuid
      - `counterparty` CoreOrderCounterparty: Покупатель загрузки без id: юрлицо узнаётся по ИНН и КПП, физлицо — по телефону или заводится.
        - `name` string
        - `inn` string
        - `kpp` string
        - `phone` string
        - `email` string
      - `contract_id` string, uuid
      - `channel_id` string, uuid
      - `price_below_min_reason` string: Причина продажи ниже минимальной цены; принимается только с правом core.price_below_min и пишется в журнал продажи
      - `project_id` string, uuid
      - `department_id` string, uuid
      - `cfo_id` string, uuid
      - `pnl_item_id` string, uuid
      - `warehouse_id` string, uuid
      - `basis_id` string, uuid
      - `title` string
      - `currency` string, required
      - `prices_include_vat` boolean: Цены с НДС («в том числе»); по умолчанию true
      - `discount` string: Скидка на продажу или закупку целиком; раскладывается по строкам пропорционально их суммам до НДС
      - `delivery_date` string, date
      - `due_date` string, date
      - `scenario` 'one_off_sale' | 'contract_sale' | 'self_service'
      - `manager_note` string
      - `warehouse_note` string
      - `comment` string
      - `buyer` CoreOrderBuyer: Покупатель-физлицо: розничный продажа или закупка стоит на общей карточке покупателя, и различает покупателей только это.
        - `name` string
        - `phone` string
        - `email` string
      - `lines` CoreOrderLineInput[], required
        - `id` string, uuid
        - `kind` 'goods' | 'service' | 'material' | 'semi_product'
        - `product_id` string, uuid
        - `article` string: Артикул — позиция узнаётся по нему, если id не назван
        - `title` string, required
        - `unit` string
        - `unit_id` string, uuid
        - `quantity` string, required: Десятичное число строкой
        - `price` string: Цена строки; не названа у позиции номенклатуры — цену подбирает сервер (договор → канал → контрагент → вид по умолчанию)
        - `discount` string: Десятичное число строкой
        - `vat_rate` string: Ставка НДС строки; пусто — по учётной политике юрлица на дату продажи или закупки
        - `base_qty` string: Десятичное число строкой
        - `basis_document_id` string, uuid
        - `basis_line_id` string, uuid
        - `price_type_id` string, uuid
        - `price_source` '' | 'manual' | 'contract' | 'contract_price' | 'channel' | 'contact' | 'contact_price' | 'default' | 'supplier': Откуда цена строки; набранная цена без источника — ручная
      - `responsibles` CoreOrderResponsible[]
        - `employee_id` string, uuid, required
        - `employee_name` string
        - `share` string, required: Доля в процентах: больше нуля, не больше ста
      - `stages` CoreOrderStage[]: Этапы работ целиком, правка по id; не названы — не меняются
        - `id` string, uuid
        - `position` integer
        - `title` string
        - `planned_date` string, date
        - `amount` string: Сумма этапа в валюте продажи или закупки с налогом
        - `line_ids` UUID[]: Строки продажи или закупки, которые закрывает этап; пусто — строки-услуги по порядку
      - `payment_terms` CoreOrderPaymentTerm[]: График оплат целиком, правка по id; не назван — не меняется
        - `id` string, uuid
        - `position` integer
        - `title` string
        - `amount` string
        - `due_date` string, date
        - `due_trigger` '' | 'after_stage': '' — срок датой; after_stage — через delay_days после исполнения этапа stage_id
        - `stage_id` string, uuid
        - `delay_days` integer
        - `share` string: Доля итога документа в процентах, только на входе: строка без суммы получает сумму от итога с НДС, последняя такая строка добирает копейки
      - `cabinet_status_id` string, uuid
      - `confirm` boolean: Сразу подтвердить созданный продажу или закупку
    - `schedule` CoreOrderTemplateSchedule, required
      - `period` 'month' | 'quarter' | 'week', required
      - `day` integer, required: Число месяца или день недели ISO (1 — понедельник).
      - `from` string, date, required
      - `until` string, date
    - `actions` CoreOrderTemplateActions, required
      - `confirm` boolean: Провести продажу или закупку сразу; false — черновик.
      - `invoice` '' | 'issue' | 'draft'
      - `invoice_days` integer
      - `closing` '' | 'upd' | 'act'
      - `closing_when` '' | 'on_order' | 'after_days' | 'period_end'
      - `closing_days` integer
    - `resumed_from` string, date
    - `version` integer, required
    - `created_by` integer
    - `updated_by` integer
    - `created_at` string, date-time
    - `updated_at` string, date-time
    - `contact_name` string
    - `contract_number` string
    - `contract_date` string
    - `department_name` string
    - `amount` string, required: Сумма строк шаблона — подсказка списка.
    - `upcoming` CoreOrderTemplateRun[]
      - `key` string, required
      - `date` string, date, required
      - `invoice_date` string, date
      - `closing_date` string, date
    - `last_run` string, date
    - `last_error` string
    - `last_error_text` string: Причина отказа последнего срабатывания словами.
  - `total` integer, required

## Other responses

- `400`: Некорректный запрос или нарушение бизнес-правила
- `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/3c60ded179f2?raw)
