Accounting entity

Accounting entity

An accounting entity is the bookkeeping scope you keep separate journals, VAT, and reports for. In BusDK, that scope is defined by the workspace directory: one BusDK workspace represents exactly one internal business entity, and all datasets inside that workspace belong to that entity by construction.

Ownership

Owner: bus init. This module creates a new workspace and writes the workspace-level accounting entity settings into the workspace datapackage.json as a BusDK extension (see Workspace configuration (datapackage.json extension)).

Other modules consume the accounting entity settings as read-only workspace configuration when they validate, post, reconcile, report, or produce filings:

bus accounts reads workspace scope and entity settings to keep charts and validations consistent. bus invoices reads entity settings for invoice dates, currency, and VAT context. bus vat reads VAT registration, reporting cadence, timing basis, and registration dates for period allocation/reporting. bus journal posts and reports per entity scope, and bus reports reads Finnish statutory profile keys for layout defaults, comparatives, and signature metadata.

Actions

Create an accounting entity creates a new workspace directory so journals and VAT never mix across business entities. Configure accounting entity settings updates workspace-level currency, fiscal-year, VAT, and reporting-profile settings.

Properties

Accounting entity settings are workspace-level configuration stored in datapackage.json at the workspace root as BusDK metadata. The settings include base currency (base_currency), fiscal year boundaries (fiscal_year_start and fiscal_year_end), VAT registration (vat_registered), VAT reporting cadence (vat_reporting_period), VAT timing (vat_timing), optional VAT registration dates (vat_registration_start), and Finnish statutory reporting-profile keys under reporting_profile.fi_statutory (reporting standard, income statement scheme, comparatives default, presentation unit, and signature metadata). The canonical reference for all keys and semantics is Workspace configuration (datapackage.json extension); the bus config CLI is the single place to create and update these settings.

Relations

An accounting entity is the shared scope for all master data and bookkeeping records in a workspace. Scope is derived from the workspace root directory, not from a per-row key, and entity-wide settings are resolved from datapackage.json rather than being referenced on row-level in operational datasets.

Within a workspace, there is one chart of accounts (and therefore many ledger accounts) and one set of accounting periods that define when bookkeeping is open, closed, and locked.

Multi-company workflows are expressed as multi-workspace operations; see Workspace scope and multi-workspace workflows.