API

Единый API для всех потребителей учётных данных. A3.Finance использует его наравне с 1С и любой другой внешней системой.

Четыре правила API

  • Привилегированного канала нет

    Прямого доступа к базе и внутренних вызовов в обход API не существует. Свой продукт получает те же поля и те же ограничения, что и внешняя учётная система.

  • Направление одно

    API отдаёт учётные факты наружу и ничего не принимает на запись. Потребитель строит свою проекцию, а числа у всех одни и те же.

  • Удаление не передаётся

    Передаётся сторно. Потребитель видит исправление так же, как оно выглядит в регистре: сторнирующая запись плюс новая операция.

  • Идентификаторы стабильны

    Повторная выгрузка периода отдаёт те же идентификаторы проводок и счетов, поэтому потребитель не создаёт дублей.

Выгрузка по запросу

Все методы принимают юридическое лицо и постраничную выдачу. Проводки можно забирать инкрементально: только проведённые после последней синхронизации.

GETGetChartOfAccounts

План счетов: тип, валюта, родитель, обязательная аналитика, происхождение

GETGetEntriesExport

Проводки за период или проведённые после указанного момента

GETGetBalancesExport

Оборотно-сальдовая ведомость за период

GETGetCounterpartiesReference

Справочник контрагентов юридического лица

GETGetPeriodsExport

Периоды со статусами и контрольными суммами

Контрольные суммы периода

Потребитель складывает полученные проводки и сравнивает с суммами закрытого периода. Расхождение означает потерянную страницу или незавершённую выгрузку, а не ошибку округления.

GET /api/Contract/GetPeriodsExport?legalEntityId=…
API-KEY: a3c_9f2e…
{
  "year": 2026,
  "month": 1,
  "status": "Closed",
  "controlEntriesCount": 412,
  "controlTotalDebit": 18450320.55,
  "controlTotalCredit": 18450320.55
}

Подписка на события

События публикуются по мере проведения операций, а не пакетом раз в сутки.

accounting.entry.posted

Операция проведена

accounting.entry.reversed

Операция сторнирована

accounting.period.closed

Период закрыт, потребитель закрывает тот же период у себя

accounting.period.reopened

Период открыт заново, отчётность за него может измениться

accounting.reference.changed

Изменился справочник или план счетов

Доступ и доставка

  • API-ключ потребителя хранится только в виде хеша и показывается один раз
  • Шесть прав доступа: план счетов, проводки, остатки, справочники, периоды, события
  • Ключ можно ограничить одним юридическим лицом
  • Тело события подписано HMAC-SHA256, у каждого события ключ идемпотентности
  • Недоставленное событие повторяется до десяти раз с нарастающей задержкой
  • Каждая проводка помечена контуром: официальный или внутренний

Документация и подключение

Описание методов собирается из кода и публикуется в формате OpenAPI на шести языках. Потребитель подключается в настройках организации без участия разработчиков A3.