Help wiki Reference
Journal import compatibility
What survives an hledger import, what is reported and what stops it.
Before migration
Keep your source journal and its included files. Import into empty books, preview the report, and compare balances and important assertions before saving. Import is a one-time migration: after it succeeds the database is authoritative and the journal files are no longer watched.
| Journal feature | Kabacus treatment |
|---|---|
| Transactions, exact amounts, costs and declarations | Read into structured rows; included journals are resolved relative to their including file. |
| Transaction and posting comments | Kept; original spacing and standalone comments do not round-trip. |
| Too many places for a commodity | Import raises its precision and reports the change; writes refuse excess precision. |
| Secondary date | Moved to the transaction comment as date2:YYYY-MM-DD; ordinary writes refuse a second date. |
| Automated postings, periodic transactions and P price lines | Ignored and reported; they do not create forecasts or automated entries. |
| Full-line comments, comment blocks, payee and tag directives | Ignored and reported, rather than kept as standalone text. |
| Tags inside transaction or posting comments | Remain comment text; they do not alter posting dates or account kinds. |
| alias, apply account, decimal-mark, D and Y / year directives | Stop import because ignoring them would change how later lines are interpreted. |
| Dates without a year or invalid dates | Refused; use explicit valid calendar dates. |
| Missing includes, include cycles or unreadable syntax | Stop with an error identifying the source location. |
Assertions and differences from hledger
Kabacus uses end-of-day assertions and exact balancing. Its total assertion forms check every commodity, including those held only in subaccounts for ==*. The engine specification calls for reporting assertions that do not hold at end of day during import. Review every import diagnostic rather than assuming an hledger-successful journal has identical semantics.
Verify the result
- Review every ignored feature and precision change in the import report.
- Compare balances per commodity and account, including money accounts with their subaccounts.
- Check card reserves, receivables and any account-kind warnings. Imported names may not match your configured rules.
- Keep the original journal and a verified .kabacus copy. The exported journal does not carry all revision history.