---
title: "Начать книгу бизнеса с даты или перенести дату начала"
method: POST
path: "/api/v1/core/businesses/{id}/ledger-start"
tags: ["Core directories"]
---

# Начать книгу бизнеса с даты или перенести дату начала

`POST /api/v1/core/businesses/{id}/ledger-start`

## Request

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

Подчинённый учёт (склад, расчёты, площадки) — правда, книга из него выводится. Пока книга бизнеса не начата (ledger_started = false), документы пишут только свои регистры, в книгу ничего. Команда начинает книгу с даты или переносит дату: документы бизнеса раньше даты кладут в книгу только балансовую часть — нога результата (90, 91, 26, 44) встаёт на капитал 80, ОПиУ не начисляется; с даты — полностью. На дату начала остатки запасов, расчётов, денег и налогов в книге равны регистрам Akeda по построению — это и есть вступительный баланс. preview=true отвечает сразу (200): сколько документов до и после даты и что придёт в книгу из регистров на дату (opening); при переносе начатой книги — ещё обороты результата и 80 до и после. Без preview команда заводит фоновую разноску и отвечает 202: документы перепроводятся одной транзакцией в фоне, ход и итог — coreGetBusinessLedgerRun. Дата не раньше первого незакрытого дня: иначе 409 core.business.ledger_start_closed. Документ, который не перепровёлся, — отказ разноски с его номером и причиной, ничего не записано. Идущая разноска — 409 core.business.ledger_run_active.

## Path parameters

- `id` string, uuid, required

## Headers

- `X-Tenant` string, required

## Request body

- CoreBusinessLedgerStartInput
  - `ledger_from` string, date, required: Дата начала книги, ГГГГ-ММ-ДД; позже закрытого периода
  - `preview` boolean: true — посчитать последствия, ничего не записав; без него — фоновая разноска

## Response `200`

Предпросмотр: документы до и после даты, что придёт из Akeda на дату, обороты при переносе

- CoreBusinessLedgerStartResult
  - `business_id` string, uuid, required
  - `started_before` boolean, required: Была ли книга начата до команды; false — команда начинает книгу
  - `ledger_from_before` string, required: Дата до команды; пусто — даты не было
  - `ledger_from` string, required: Дата начала книги после команды
  - `preview` boolean, required
  - `documents_before` integer, required: Проведённые документы бизнеса до даты: лягут в книгу балансовой частью против 80
  - `documents_from` integer, required: Проведённые документы бизнеса с даты: лягут в книгу полностью
  - `opening` CoreBusinessLedgerOpening[]: Что придёт в книгу из регистров Akeda на дату начала
    - `code` string, required: Счёт книги: 41 — запасы со склада, 60/62/76.02 — долги по документам Akeda, 80 — капитал против них
    - `name` string, required
    - `amount` string, required: Остаток на дату начала, дебет плюс
  - `changed_from` string, date: Начало отрезка дат, чьи документы меняют книгу; поля нет — с самого начала
  - `changed_to` string, date: Конец отрезка (не включая); поля нет — до конца
  - `changed_documents` integer, required: Сколько документов бизнеса в изменённом отрезке
  - `reposted_documents` integer, required: Сколько документов перепроведено всего: отрезок и все более поздние — они ссылаются на строки книги ранних
  - `accounts` CoreBusinessLedgerStartAccount[], required: Обороты счетов результата и капитала 80 по документам отрезка до и после
    - `code` string, required: Код счёта книги
    - `name` string, required
    - `before` string, required: Оборот счёта по документам изменённого отрезка до переноса, дебет плюс
    - `after` string, required: Тот же оборот после переноса
  - `skipped` CoreBusinessLedgerStartDocument[]: Документы вида без транзакционного проводчика: остались как есть
    - `id` string, uuid, required
    - `number` string, required
    - `type_key` string, required
    - `type_name` string, required
    - `date` string, date, required

## Other responses

- `202`: Разноска заведена и идёт в фоне; ход и итог — coreGetBusinessLedgerRun
- `400`: Некорректный запрос или нарушение бизнес-правила
- `401`: Сессия, ключ или кабинет не подтверждены
- `403`: Текущая роль не имеет требуемого права
- `404`: Запись не найдена или не видима текущему пользователю
- `409`: Конфликт версии, идемпотентности или бизнес-состояния
- `500`: Внутренняя ошибка без раскрытия server-only деталей

---

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