From 72c1c046aada04f638f7f231c783ce190c54b5e5 Mon Sep 17 00:00:00 2001 From: Jonas Smedegaard Date: Mon, 6 Mar 2017 10:54:53 +0100 Subject: Initial draft. --- USE.md | 97 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 97 insertions(+) create mode 100644 USE.md diff --git a/USE.md b/USE.md new file mode 100644 index 0000000..bca26e5 --- /dev/null +++ b/USE.md @@ -0,0 +1,97 @@ +# 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: + git add data/2016/assets/12345678901.csv + git commit -m "Bank transactions 2016." + +Convert to hledger format: + recode latin1/dos..utf8 data/2016/assets/12345678901.csv + 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" -- cgit v1.2.3