# Accounting For business and household account we use hledger, using helper scripts from git://source.jones.dk/ledger to handle data stored across a hierarchy of ledger files. FIXME: Include helper scripts as csv2hledger and shledger ## Essentials Track money earned and spent, and compute profit (e.g. for reporting income tax). ### Income Save invoice entries grouped e.g. by customer to path //income/.ledger: $EDITOR data/2016/income/kp.ledger git add data/2016/income/kp.ledger git commit -m "Income 2016 from KP." Use payment due date as date2. ### Expenses Save expense entries grouped e.g. by provider to path //expenses/.ledger: $EDITOR data/2016/expenses/bahn.ledger git add data/2016/expenses/bahn.ledger git commit -m "Expenses 2016 to Bahn." ## Validation ### Bank save bank transactions as e.g. CSV files to path //assets/.csv: recode latin1/crlf..utf8 data/2016/assets/12345678901.csv git add data/2016/assets/12345678901.csv git commit -m "Bank transactions 2016." Convert to hledger format: mycsv2ledger data/2016/assets/12345678901.csv git add data/2016/assets/12345678901.ledger git commit -m "Bank transactions 2016, hledger format." ### Payments Compare income with bank transactions of payments, checking that last column is zero at end of each day: myhledger register assets:receivable -p "in 2016" --date2 Edit paid invoices: Adjust date2 to be the date moeny was received (i.e. "effective date" at bank). ### Private Verify transactions registered as private: myhledger reg assets:advances --date2 -p "in 2016" Add filter for non-private bank transactions to path //assets/.csv.local.rules or globally to path /.rules. ## Reports ### Income tax myhledger is -Bp 2016 Profit is the inverse of the "total" at bottom (an income statement is oriented towards _expenses_). ### Sales tax Outgoing tax (inverse of lower right corner value): myhledger reg tax:sales -w 80 -Bp "from 2016 to 2016-07" Incoming tax (lower right corner value): myhledger reg tax:expenses -w 80 -Bp "from 2016 to 2016-07" Payee-handled EU tax (inverse of lower right corner value): myhledger reg income:sales:eu -w 80 -Bp "from 2016 to 2016-07"