Investments
Goal
Maintain an investments holdings register with buys, sells, prices, and revaluation.
Who it is for
subsidiary_ledgers.view to list; investments.manage for holdings/trades/prices; investments.revalue to revalue; investments.admin for setup.
Preconditions
Optional module investments enabled. Open Operations → Subsidiary Ledgers → Investments.
Steps
- New holding: Code, Name. Columns show qty, cost, unit price, market value, unrealized.
- Buy: quantity, unit cost, bank/cash GL.
- Sell: quantity, proceeds, bank/cash GL (cannot exceed qty →
insufficient_holding). - Record price, then Revalue (UI posts toward reserve).
- Investments setup: valuation method, income recognition, impairment approval, revaluation frequency, instrument types catalog. (Many setup fields are persisted prefs/catalogs; trade/revalue paths do not all branch on them yet.)
Hard stops
Sell over quantity; delete only when qty 0 (API; limited UI); no_investment_price; period/posting/FX guards as usual.