Overview
Companies represent legal entities within an organization. Each company has its own:- Functional currency (primary operating currency)
- Chart of accounts (accounts are company-specific)
- Fiscal year end (defines fiscal periods)
- Jurisdiction (country of incorporation/operation)
Companies are the primary scope for accounting operations. Journal entries, accounts, and fiscal periods are all scoped to a company.
Company Data Model
packages/core/src/company/Company.ts
Core Properties
Unique identifier for the company
Reference to parent organization
Display name of the company (e.g., “Acme Corp”)
Legal registered name (e.g., “Acme Corporation, Inc.”)
Country of incorporation (ISO 3166-1 alpha-2 code like “US”, “GB”, “DE”)
Primary operating currency per ASC 830 (ISO 4217 code)
Currency used for financial statements (often same as functional currency)
Fiscal year end date (month and day)
Whether the company is currently active
Optional Properties
Tax identification number (EIN, VAT number, etc.)
Date when the company was legally incorporated
Company registration number for the jurisdiction
Official legal address where the company is registered
NAICS or SIC industry classification code
Legal structure (Corporation, LLC, Partnership, etc.)
Jurisdiction where incorporated (if different from operating jurisdiction)
Account for posting net income during year-end close
Company Types
Companies can have different legal structures:packages/core/src/company/CompanyType.ts
- Corporation
- LLC
- Partnership
- Sole Proprietorship
- Non-Profit
- Cooperative
- Branch
- Other
C-Corp, S-Corp, or public company with shareholders
Fiscal Year End
The fiscal year end defines when the company’s fiscal year closes:packages/core/src/company/Company.ts
Common Fiscal Year Ends
Calendar Year (December 31)
Calendar Year (December 31)
Fiscal Year Ending March 31
Fiscal Year Ending March 31
Fiscal Year Ending June 30
Fiscal Year Ending June 30
Fiscal Year Ending September 30
Fiscal Year Ending September 30
Display Format
Functional vs Reporting Currency
Functional Currency
The currency of the primary economic environment in which the entity operates:- Currency in which company generates revenue
- Currency in which company incurs expenses
- Currency of financing and investing activities
Functional currency cannot be changed after initial setup. It reflects the economic reality of the company’s operations.
Reporting Currency
The currency used for presenting financial statements:- May differ from functional currency
- Used for consolidated group reporting
- Translation adjustments recorded in equity (OCI)
Same Currency Scenario
US subsidiary with USD functional currency and USD reporting currencyNo translation needed - amounts recorded directly
Creating a Company
UI Workflow
The company creation form includes multiple sections:- Basic Information
- Currency
- Fiscal Year
- Additional Details
- Company Name (required)
- Legal Name (required)
- Jurisdiction (required, searchable dropdown)
- Tax ID (optional)
- Incorporation Date (optional)
- Registration Number (optional)
Form Component
packages/web/src/components/forms/CompanyForm.tsx
- When jurisdiction is selected, functional currency auto-fills from jurisdiction’s default
- Reporting currency defaults to same as functional currency
- Fiscal year end defaults to December 31
API Request
Company Hierarchies
Accountability supports complex company structures through consolidation groups rather than parent-child relationships on companies themselves.
- Multiple consolidation scenarios for the same company
- Different ownership percentages in different contexts
- Flexible consolidation methods (full, equity, cost, VIE)
Retained Earnings Account
TheretainedEarningsAccountId field specifies where net income is posted during year-end close:
Automatic Configuration
When applying a Chart of Accounts template, the retained earnings account is automatically identified by the
isRetainedEarnings flagManual Configuration
Can be manually set in company settings to point to any Equity account with category “RetainedEarnings”
Best Practices
Choosing Functional Currency
Choosing Functional Currency
Use the currency that best reflects the company’s economic environment:Correct: UK subsidiary operates primarily in UK → GBPIncorrect: UK subsidiary operates in UK but parent is in US → Don’t use USD as functional currency just because parent uses USDReporting currency can be USD for consolidation purposes.
Fiscal Year End Selection
Fiscal Year End Selection
Consider:
- Industry norms: Retail often uses January 31 (post-holiday season)
- Tax year alignment: Match jurisdiction’s tax year for simpler compliance
- Seasonal business cycles: End fiscal year after busy season for accurate results
Legal Name vs Display Name
Legal Name vs Display Name
- Legal Name: Use full registered name exactly as it appears on incorporation documents
- Display Name: Use shorter, user-friendly name for everyday use
- Legal Name: “Acme Corporation (UK) Limited”
- Display Name: “Acme UK”
Technical Details
Helper Methods
packages/core/src/company/Company.ts
Type Guards
Related Pages
- Organizations - Parent container for companies
- Chart of Accounts - Company-specific account structure
- Fiscal Periods - Period management per company
- Multi-Currency - Currency translation for reporting