App-HomeBank2Ledger
view release on metacpan or search on metacpan
finances using HomeBank (which is awesome) and I wanted to investigate
using plain text accounting programs. It works well enough for my data,
but you may be using HomeBank features that I don't so there may be
cases this doesn't handle well or at all. Feel free to file a bug
report. This script does NOT try to modify the original HomeBank files
it converts from, so there won't be any crazy data loss bugs... but no
warranty.
Features
* Converts HomeBank accounts and categories into a typical set of
double-entry accounts.
* Retains HomeBank metadata, including payees and tags.
* Offers some customization of the output ledger, like account
renaming.
This program is feature-complete in my opinion (well, almost -- see
"CAVEATS"), but if there is anything you think it could do to be even
better, feedback is welcome; just file a bug report. Or fork the code
and have fun!
Use cases
You can migrate the data you have in HomeBank so you can start
maintaining your accounts in Ledger (or Beancount).
Or if you don't plan to switch completely off of HomeBank, you can
continue to maintain your accounts in HomeBank and use this script to
also take advantage of the reports Ledger offers.
INSTALL
There are several ways to install homebank2ledger to your system.
using cpanm
You can install homebank2ledger using cpanm. If you have a local perl
(plenv, perlbrew, etc.), you can just do:
cpanm App::Homebank2Ledger
to install the homebank2ledger executable and its dependencies. The
executable will be installed to your perl's bin path, like
~/perl5/perlbrew/bin/homebank2ledger.
If you're installing to your system perl, you can do:
cpanm --sudo App::Homebank2Ledger
to install the homebank2ledger executable to a system directory, like
/usr/local/bin/homebank2ledger (depending on your perl).
Downloading just the executable
You may also choose to download homebank2ledger as a single executable,
like this:
curl -OL https://raw.githubusercontent.com/chazmcgarvey/homebank2ledger/solo/homebank2ledger
chmod +x homebank2ledger
For developers
If you're a developer and want to hack on the source, clone the
repository and pull the dependencies:
git clone https://github.com/chazmcgarvey/homebank2ledger.git
cd homebank2ledger
make bootstrap # installs dependencies; requires cpanm
OPTIONS
--version
Print the version and exit.
Alias: -V
--help
Print help/usage info and exit.
Alias: -h, -?
--manual
Print the full manual and exit.
Alias: --man
--input FILEPATH
Specify the path to the HomeBank file to read (must already exist).
Alias: --file, -i
--output FILEPATH
Specify the path to the Ledger file to write (may not exist yet). If
not provided, the formatted ledger will be printed on STDOUT.
Alias: -o
--format STR
Specify the output file format. If provided, must be one of:
* ledger
* beancount
--account-width NUM
Specify the number of characters to reserve for the account column in
transactions. Adjusting this can provide prettier formatting of the
output.
Defaults to 40.
--accounts
( run in 2.085 seconds using v1.01-cache-2.11-cpan-cdf2f3d4e48 )