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

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

`GET /api/v1/core/trade/templates/{id}`

## Request

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

Шаблон с ближайшими срабатываниями (upcoming: даты продажи или закупки, счёта и закрывающего), датой последней созданной продажи или закупки и причиной отказа последнего срабатывания словами.

## Response `200`

Шаблон

- CoreOrderTemplate
  - `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: Причина отказа последнего срабатывания словами.

## Other responses

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

---

[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)
