Flow
ServicesAccounting Service

Accounting Service

Chart of accounts and event publishing — the first production service on the platform.

The accounting service implements the Chart of accounts: The hierarchical set of accounts in one jurisdiction; codes are unique per chart, classifications are a closed enum, and parent links form a tree. slice: create accounts with hierarchy, Account classification: One of asset, liability, equity, revenue, or expense; required on every account and used to derive normal balance and financial statement placement., postability, Cedar authz, and Transactional outbox: Events are inserted into an events table in the same transaction as the state change; a publisher drains unpublished rows to RabbitMQ. publishing of account.created to RabbitMQ.

The ledger lives in the same service as a separate package (internal/ledger/) — planned, not yet implemented.

Domain
Services
Kind
Go HTTP service
Lifecycle
Active
flowctl project
None
Stacks
Runs on its own

Response shape note

Accounting returns bare JSON on success and RFC 9457 application/problem+json on errors. It does not yet use the template's HTTP envelope — see FRICTION.md.

Domain docs

Detailed design notes also live under docs/accounting/chart-of-accounts.md and docs/accounting/open-questions.md.

On this page