Accounting Workspace
What It Models
The Accounting workspace collects configuration shared across the customer’s sets of books. It includes terms, payment methods, transitional tax setup, policy settings and recurring timing. It also represents Accounting’s participation in Platform’s workspace provisioning, export and erasure.
Identity and Attributes
Accounting uses Platform’s workspace key and reads its time zone and availability state. Shared vocabularies have independent configuration identities. Payment methods combine editable presentation with fixed engine behavior; provisioning adds the protected starting set atomically.
Settings are returned as defaults at version zero until first saved. Schedules store definitions and execution history in maintenance. One occurrence has one history identity, but its unfinished handler may run more than once.
Relationships
Definitions and policies apply to every unit. Tax-rate links select accounts in unit charts, and settings reference statement content. Scheduled work belongs to its subject’s module; maintenance supplies timing and history rather than ownership of the subject.
Invariants
The implementation protects method behavior, declared financial references, singleton settings and valid template choices. Scheduling prevents duplicate run identities and pauses repeated failure; it does not promise one handler execution. Export blocks recognized secret patterns. Purge checks the workspace state before each bounded removal.
How It Is Stored and Shared
Books maintains shared definitions and settings. Maintenance owns the schedule tables and serves lifecycle calls; its reads and purge writes span Accounting. Other financial modules consume shared configuration directly. Platform retains ownership of the workspace record and lifecycle transitions.
Customer tables use forced row-level security, with narrow cross-workspace policies for schedule claims. The registered configuration has no custom-field capability or configuration history stream.
Open Design Questions
Tax ownership, history and Billing’s scheduling boundary remain unsettled. Several policy settings have no console control, and the Reconciliation and Close switches have no change path in this API. The single conceptual owner spans Books and maintenance, so responsibility must be read together with the physical ownership boundary.