Accounting Engine
Accounting Engine
Section titled “Accounting Engine”The accounting engine is the core of CryptaCount. It transforms classified transactions into proper double-entry journal entries through a structured pipeline, maintains a chart of accounts, and manages accounting periods with formal close workflows.
Accounting Sidebar Sections
Section titled “Accounting Sidebar Sections”The Accounting section in the sidebar provides access to:
| Sidebar Label | Feature |
|---|---|
| Accounting → Opening Balances | Set opening balances for existing positions |
| Accounting → Accounting Periods | Manage accounting periods |
| Accounting → Period Close | Period close workflow with validation checks |
| Accounting → Generate Journals | Batch journal generation (migration) |
| Accounting → Journal Entries | View and manage journal entries |
| Accounting → Impairment | Impairment testing |
| Manual Adjustments | Manual journal adjustments (approval workflow) |
| Audit Attachments | Supporting document attachments for audit trail |
Accounting Pipeline
Section titled “Accounting Pipeline”The pipeline processes events through a status workflow:
PENDING → CLASSIFIED → POSTED (or FAILED / MANUAL_REVIEW / SKIPPED)The pipeline processes:
- Raw blockchain events into classified accounting events
- Classified events into posted journal entries
- Multi-leg groups (complex transactions with multiple accounting legs)
- Hash chain verification for tamper detection
Double-Entry Bookkeeping
Section titled “Double-Entry Bookkeeping”Every transaction processed by CryptaCount generates journal entries where debits equal credits.
Example — Purchasing 1 ETH at €2,100:
| Account | Debit | Credit |
|---|---|---|
| Digital Assets — ETH | €2,100 | |
| Cash / Fiat | €2,100 |
Example — Receiving 0.5 LINK as a staking reward (FMV €7.25):
| Account | Debit | Credit |
|---|---|---|
| Digital Assets — LINK | €7.25 | |
| Staking Income | €7.25 |
Example — Selling 1 ETH at €2,600 (cost basis €2,100 under FIFO):
| Account | Debit | Credit |
|---|---|---|
| Cash / Fiat | €2,600 | |
| Digital Assets — ETH | €2,100 | |
| Realized Gain — ETH | €500 |
Chart of Accounts
Section titled “Chart of Accounts”Manage GL accounts under Accounting → Chart of Accounts. The chart of accounts uses 8 account types with debit/credit normal balances:

| Type | Normal Balance | Description |
|---|---|---|
| ASSET | Debit | Digital assets, cash, receivables |
| LIABILITY | Credit | Borrowings, payables |
| EQUITY | Credit | Retained earnings, reserves |
| REVENUE | Credit | Income from operations |
| EXPENSE | Debit | Operating costs, fees |
| CONTRA_ASSET | Credit | Accumulated depreciation |
| CONTRA_LIABILITY | Debit | Contra liability accounts |
| CONTRA_EQUITY | Debit | Treasury stock, etc. |
The chart supports 30 account subtypes for detailed classification (Current Asset, Cash and Equivalents, Receivable, Inventory, Staking Reward, Mining Reward, Transaction Fee, etc.).
GL accounts can be imported, mapped to wallets, mapped to external addresses, and assigned to CEX accounts. Special accounts (like default gain/loss accounts) can be designated.
Journal Entries
Section titled “Journal Entries”View and manage journal entries under Accounting → Journal Entries:

- Create manual journal entries
- Post draft entries
- Reverse posted entries
- Search and filter by date, account, and transaction type
- Reassign GL accounts on existing entries via Balances → Reassign GL
Tamper-Evident Journal Hashing
Section titled “Tamper-Evident Journal Hashing”Each journal entry is cryptographically hashed. The hash chain links each entry to its predecessor — any modification to a historical entry breaks the chain, making unauthorized changes immediately detectable.
Accounting Periods
Section titled “Accounting Periods”Manage periods under Accounting → Accounting Periods:
- Create monthly or custom periods
- Open and close periods
- Year-end close workflow
Period Close Workflow
Section titled “Period Close Workflow”The period close follows a structured process:
- Run checks — Automated validation checks verify data completeness
- Review results — View which checks passed or failed
- Waive — Optionally waive non-critical failed checks with justification
- Close — Formally close the period, locking it from further changes
- Reopen — If needed, reopen a closed period (with audit trail)
- Lock — Permanently lock a period (prevents reopening)
Opening Balances
Section titled “Opening Balances”Set opening balances under Accounting → Opening Balances for wallets that had existing positions before connecting to CryptaCount:
- Import opening balances from a file
- Set balances as of a specific date
- Auto-populate suggested dates based on wallet activity
Generate Journals
Section titled “Generate Journals”The journal generation tool under Accounting → Generate Journals provides batch processing for:
- Migrating transactions that predate the accounting pipeline
- Regenerating journals after rule changes
- Status tracking with start/cancel/cleanup controls
Impairment Testing
Section titled “Impairment Testing”Impairment testing under Accounting → Impairment supports:
- Running impairment calculations across the portfolio
- Viewing impairment results by asset
- Different impairment models based on cost basis method (one-way for historic FIFO methods, two-way for NRV methods)
Manual Adjustments
Section titled “Manual Adjustments”Manual adjustments support an approval workflow:
- Create adjustment entries with justification
- Pending adjustments await approval
- Approve or reject adjustments
- Post approved adjustments to the ledger
Audit Attachments
Section titled “Audit Attachments”Upload supporting documents under Audit Attachments:
- Attach files to journal entries, transactions, or periods
- Upload and download attachments
- Maintain audit trail with document references
Accounting Rules
Section titled “Accounting Rules”Configure rules under Settings → Rules to automate journal generation:

- Define rules with conditions and actions
- Test rules against sample data
- Version control for rule changes