User Manual

Accounting Engine

Last updated September 20, 2026 · CryptaCount Team

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

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

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

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

Manage GL accounts under Accounting → Chart of Accounts. The chart of accounts uses 8 account types with debit/credit normal balances:

Chart of accounts structure

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

View and manage journal entries under Accounting → Journal Entries:

Journal ledger with hash chain

  • 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

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

Manage periods under Accounting → Accounting Periods:

  • Create monthly or custom periods
  • Open and close periods
  • Year-end close workflow

Period Close Workflow

The period close follows a structured process:

  1. Run checks — Automated validation checks verify data completeness
  2. Review results — View which checks passed or failed
  3. Waive — Optionally waive non-critical failed checks with justification
  4. Close — Formally close the period, locking it from further changes
  5. Reopen — If needed, reopen a closed period (with audit trail)
  6. Lock — Permanently lock a period (prevents reopening)

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

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

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

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

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

Configure rules under Settings → Rules to automate journal generation:

Accounting rules configuration

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

Was this article helpful?

Let us know if this answered your question

Accounting Engine — CryptaCount Support