---
title: "Атомарно восстановить проводки указанных операций"
method: POST
path: "/api/v1/finance/registers/repair"
tags: ["Finance registers"]
---

# Атомарно восстановить проводки указанных операций

`POST /api/v1/finance/registers/repair`

## Request

- Base URL: `https://erp.akeda.ru`
- URL: `https://erp.akeda.ru/api/v1/finance/registers/repair`
- 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

Работает только по явному списку UUID; кабинет целиком не сканирует и не перепроводит.

## Headers

- `X-Tenant` string, required

## Request body

- FinanceRegisterRepairRequest
  - `transaction_ids` UUID[]
  - `cash_document_ids` UUID[]

## Response `200`

Результат точечного восстановления

- FinanceRegisterRepairResult
  - `transactions_repaired` integer, required
  - `cash_documents_repaired` integer, required
  - `failures` FinanceRegisterRepairFailure[], required
    - `id` string, uuid, required
    - `code` string, required: Machine-readable reason (not_found, nothing_to_restore, wrong_document_type, period_closed, document_changed, payload_invalid, ledger_setup_missing, balance_shortage, ledger_imbalance, unexpected).
    - `error` string, required: Human-readable reason in the request language; an internal failure carries the case code instead of the raw error.

## 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/a99574d597cc?raw)
