Chart of Accounts
What It Models
A chart provides the accounts to which a unit records money and the mappings that direct financial activity. It includes standard-purpose assignments, bank and merchant destinations, and department and project classifications. Tax payable links connect shared rate configuration to the unit’s liability destinations.
Identity and Attributes
Codes are normalized at creation and remain unique within their unit and collection. The same code can exist in another unit. A computed display label combines code and optional name.
Defaults select one account per purpose. Bank records hold descriptive details and an optional four-digit suffix. Merchant records retain a processor reference without credentials and show Not Connected. Departments and projects supply separate reporting vocabularies. Availability and record locks are stored settings; mutation versions are maintained automatically.
Relationships
Chart records stay in their originating unit. Internal destinations are checked against that unit. Financial and product configuration can retain restricting references that prevent deletion. Tax mappings belong to the rate setup even though their destination is a chart account.
Invariants
Fixed codes and unit ownership preserve chart identities. The console locks account currency, while the service permits a supported replacement subject to references. Default-purpose assignments keep their destinations active. Restricting keys enforce deletion safety for declared dependencies, and the service translates the dependencies it recognizes. Soft references and unrecognized refusal paths are outside that guarantee.
How It Is Stored and Shared
Books maintains the chart and purpose mappings. Posting reads the shared configuration when resolving destinations. Product setup and Reconciliation consume the same records; Reconciliation writes its settlement fields, while maintenance handles workspace exports and removal.
Customer chart rows have no declared custom fields and use workspace row policies. Purpose and processor catalogues are global vocabularies. No configuration revision stream or change event is produced.
Open Design Questions
The console filters default choices by expected type, while the service accepts other types. The required-default warning list is also local to the console. Replacing tax rates removes the mappings that previously issued tax lines refer to; Product must choose how those mappings survive configuration changes.