Boston Linux & Unix (BLU) Home | Calendar | Mail Lists | List Archives | Desktop SIG | Hardware Hacking SIG
Wiki | Flickr | PicasaWeb | Video | Maps & Directions | Installfests | Keysignings
Linux Cafe | Meeting Notes | Blog | Linux Links | Bling | About BLU

BLU Discuss list archive


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Discuss] Personal finance with Moneydance - my howto



There was some discussion here back in 2008 or so about personal finance
software options for Linux.  At the time, Quicken was king of the hill in this
category; I don't know whether they're still on top, but I stopped updating
after Quicken 6 which was for its time a true category-killer with its
graphical visualizations.  If your New Year's resolution calls for getting on
top of your finances, including mobile data entry, then take up my challenge
here.

If I had a kid back when I installed Quicken 6, he'd be most of the way
through high school by now.  So I figured in this day and age of iPads and
mobile computing, there must be a far-superior alternative.

Enter Moneydance, a rival to Quicken with most of the same odd quirks.  What
drew me to it is the company now has a mobile app that effectively moves your
virtual checkbook from a laptop into your phone:  you can enter transactions
the way you might use one of the many mobile expense-reporting tools out
there, and have it securely sync with your own non-cloud private installation
of personal finance software.  (Sorry, Big Data Inc, I don't want all my
personal finance transactions stored on your cloud to harvest at will!  Call
me paranoid.)  I'm used to the Quicken approach to things, so I decided to try
this first rather than the very-different GnuCash (which apparently also has a
companion mobile app these days, alas not available to me now that I've been
accepted into the iPhone Borg).

The rest of this posting is basically a how-to of my successful installation
of version 2012.3 build 852, with all the complexities of migrating an ancient
data set.  Expect to spend at least an hour first time through; this how-to
will save you from the day and a half it took me.  First I'll call out some
prerequisites and limitations so you can determine whether this is right for
you:

Prerequisites:

- You need an Internet-connected Linux laptop or desktop with local wifi
(distro can be any, they offer a couple of package types including
vendor-neutral shell-archive)
- Optional - you need a reasonably-current iPhone for the mobile app; Android
version is still in development
- The app runs under Java 1.6 which you should have working first
- You're either starting personal finance software for the first time (in
which you should look to someone else for guidance), or you have a trusty old
copy of Quicken circa 1995-2004 that you've decided it's once and for all time
to replace (if you have a newer one, it should be easier to transfer)

Limitations:

- Quicken users will miss some of the chart-manipulation features such as
adding/hiding columns in tabular reports
- Input data filters for graphs are provided only per-account, rather than per
expense/income category
- If you want to use online banking, check that your institution is supported
(mine, alas, isn't:  the app uses OFX for bill payment) -- a list is published
at http://infinitekind.com/fi
- The app is free to try, you can import all your data, and then start using
it for up to 100 manual transactions before paying the $50 license (you can
google for discount codes, one of which is in effect at the time I write this;
in any case it's cheaper than the $70 charge for equivalent Quicken Deluxe
which provides no such trial download)

It's otherwise really quite similar to the long-familiar Quicken.  Onward to
how I got it all set up:

1) Go to the vendor website and download the app, choosing the "Other Linux
Install Script (64-bit)" option unless you have a strong reason to choose one
of the others.  I originally downloaded 2012.2 which had a critical bug; since
I started this 3 days ago, they've yanked that version and put 2012.3 up on
their download page (without fanfare, and they only have a single download
link mislabeled with the wrong version, rather than a list of available old
build versions, but I digress).

2) As root, run the script and let it choose /opt/moneydance for its install
directory.  Upon first run, it'll give you a typical
do-you-accept-this-license page, and then invite you to open a file or import
data.

3a) Put the Linux installation aside for a moment, and build a migration kit
for your old Quicken.  If you have something older than Quicken 99, download
that first.  If you have something older than Quicken 2004, download that.
(Remarkably, you'll need /both/ if yours is < 99.)  At present, Intuit
provides these at the following URL:
http://quicken.intuit.com/support/help/install--register--and-convert/using-an-intermediate-version-to-convert-older-versions-of-quicken/GEN82211.html

3b) (An aside -- the reason you need to do the transfer of really-old data in
two steps is this:  there's a bug in the '99 version export of investment
accounts which causes the transactions to show up hidden.  The '04 version can
batch up all of its output in one .QIF file, older versions have to export a
single account at a time.  The bottom line is there have been changes to the
.QIF format, and there are some incompatibilities between Quicken and
Moneydance that you really need to minimize by getting the file format cleanly
up to 2004.)

4) On your Windows box, install Quicken 2004 (and 99 if you need it).  I got a
"File contains invalid signature" warning on the 99 install, ignored it and it
worked fine.  Copy your QDATA files to a working directory.

5) On your investment, credit, cash and checking/savings accounts, invoke the
Reconcile function to check off all transactions if you haven't already done
this routinely.  (Quicken doesn't support reconcile for liability accounts.)

6) Fire up the newer Quicken(s), let it update your QDATA files and then exit
out.  (These steps sound long/tedious but can be done in just a couple
minutes.  You can fiddle around and try to bypass them, as I first tried, but
in the end its quicker to just plow through this.)

7) Compare account balances, asset pricing, portfolio, etc between your
original file and the 2004 version.  Make sure everything matches (the steps
up to this point should pretty much guarantee a match).

8) From the 2004 Quicken, create two .QIF export files.  Name the first one
main.QIF; select All Accounts and un-check Transactions and check off Account
List, Category List, Security Lists.  Name the second one trans.QIF, select
All Accounts and check only Transactions.

9) If your data set includes many split-account transactions (for example
principle/interest on mortgage payments), then you will wind up also creating
a separate <acct>.QIF file for some or all accounts.  Leave Quicken 2004 up to
create these during a later step; you might get lucky and not need this.  (I
had about 40 accounts, this is the biggest chore.)

10) Getting back to the Moneydance welcome screen, tell it to import data from
another application.  Select the trans.QIF file prepared in step #8, and tell
it that it came from another app (vs. download).  Then import data from your
trans.QIF file.

11) At this point you're probably congratulating yourself on your newfound
billionaire status; I briefly had $1,393,980,029.95 in my main brokerage
account.  But don't believe it, you're looking at bugs in the Quicken export
and/or the Moneydance import.  Before you go off googling for what I've
concluded are mostly-incorrect and unhelpful diatribes about how awful this
process is, take a coffee break and recognize you're a lot closer to success
than most would think, because you've had the forethought to mark all your
transactions and to start off with a clean Quicken 2004 export.

12) Most but not all of your historical pricing data has been preserved.  The
import will have generated spurious far-future prices for a number of
securities.  In the Moneydance UI, go through each security and delete the
far-future (as in year 2577 etc) entries, and set the current price to the
most recent.  For securities that aren't traded, such as the value of your
home if you've been tracking things like that, there will be missing entries: 
restore those manually if you care about the historical graphs.

13) Go through the accounts looking for wild data.  I found 2 or 3 accounts
were filled with entries from the wrong accounts.  Fixing these was
surprisingly easy: select-all with ctrl-A, delete all transactions in the
account, then go back to step #9 to pull a single-account .QIF file back in
for such wrong accounts.

14) I found a couple of accounts with one or two minor dup entries; look for
those simple cases and remove them.  Reconciliation markers are usually
missing from the bogus entries.  I had one set of 18 mortgage payments that
got recorded as dups, which came back after the wild-data reset; those had to
be removed by hand, but it turned out to be easy once I saw the monthly
pattern and could compare the remaining-balance ledger in Moneydance side by
side with my original ledger.

15) One other vague annoyance that might need fixing is high-value securities
(like the aforementioned hosue), because Moneydance only keeps 4 digits of
precision on transactions, where Quicken keeps 6 digits.  If you care about
these items, consider doing something like a 100:1 or 1000:1 stock split on
those securities and changing the entries accordingly.

16) Your balances and portfolio lists should now exactly match your original;
check for this and go back through steps #12-15 until they do.

17) Alas, the asset-class and goal information for securities doesn't get
exported: go through your securities list and manually add this info if you
want the asset-allocation graphs to look right.

18) If you have this set up on more than one PC, you'll have to move the
.moneydance directory from your home path to a shared drive on your LAN, and
symlink to it from each PC.  You might also want to add a lockfile-wrapper
launcher script to warn against multiple users; the software doesn't support
concurrent access at the moment, so a bit of scripting is in order for
managing joint accounts.

19) Set an encryption key, AES-128 is supported and works fast on any modern PC.

20) Install the Network Syncing extension, install the iPhone app, and bind
the two together using the generated many-digit hex code (yes, you have to
type the whole string in).  Don't forget to set an access PIN on the mobile
app.

21) Install the Quotes and Exchange Rates extension and configure the
securities you want looked up from the public market feeds.

That's it.  Once you've gotten this far (took me a brief 10 minutes to repeat
this exercise with a 6-account setup that had no investment-accounts to deal
with), then you're up and running with your real data and can make an educated
decision on whether the $40 or $50 license price is worth it to you.  Having a
mobile app tied to my own securely-locked-down home setup is worth a lot more
to me than unleashing my most-private data on some unsecure cloud service:  I
wish this were all FOSS but at least the Linux support is solid and the app is
more polished than what I've seen coming from OSS developers in this software
category.

-rich





BLU is a member of BostonUserGroups
BLU is a member of BostonUserGroups
We also thank MIT for the use of their facilities.

Valid HTML 4.01! Valid CSS!



Boston Linux & Unix / webmaster@blu.org