API

One API for all consumers of accounting data. A3.Finance uses it on equal terms with 1C and any other external system.

Four rules of the API

  • No privileged channel

    There is no direct database access and no internal calls that bypass the API. Our own product gets the same fields and the same limits as an external accounting system.

  • One direction

    The API sends accounting facts out and accepts nothing for writing. The consumer builds its own projection, and everyone has the same numbers.

  • Deletion is not transmitted

    A reversal is transmitted. The consumer sees a correction the same way it looks in the ledger: a reversing entry plus a new operation.

  • Identifiers are stable

    A repeated export of a period returns the same posting and account identifiers, so the consumer creates no duplicates.

Export on request

All methods take a legal entity and support pagination. Postings can be fetched incrementally: only those posted after the last sync.

GETGetChartOfAccounts

Chart of accounts: type, currency, parent, required analytics, origin

GETGetEntriesExport

Postings for a period or posted after a given moment

GETGetBalancesExport

Trial balance for a period

GETGetCounterpartiesReference

Counterparty directory of the legal entity

GETGetPeriodsExport

Periods with statuses and checksums

Period checksums

The consumer adds up the postings it received and compares them with the totals of the closed period. A mismatch means a lost page or an unfinished export, not a rounding error.

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

Event subscriptions

Events are published as operations are posted, not in a daily batch.

accounting.entry.posted

Operation posted

accounting.entry.reversed

Operation reversed

accounting.period.closed

Period closed, the consumer closes the same period on its side

accounting.period.reopened

Period reopened, reports for it may change

accounting.reference.changed

A directory or the chart of accounts changed

Access and delivery

  • The consumer’s API key is stored only as a hash and shown once
  • Six permissions: chart of accounts, postings, balances, directories, periods, events
  • A key can be limited to one legal entity
  • The event body is signed with HMAC-SHA256, and each event has an idempotency key
  • An undelivered event is retried up to ten times with increasing delay
  • Each posting is tagged with its perimeter: official or internal

Documentation and connection

The method reference is generated from code and published in OpenAPI format in six languages. A consumer connects in the organization settings with no A3 developers involved.