GnuCash, PNC, OFX and Opportunity Cost

Recently I started using GnuCash, an open to manage my PNC accounts and expenses. While mint.com does a decent job of categorizing expenses, I wanted to have a little more control over my accounting and to have a place to start keeping track of investments, etc, and I didn’t want to pay for Quicken.

GnuCash is a true double-entry accounting software that allows you to keep track your assets, income, expenses, credit cards, etc. all in one place. While I wouldn’t recommend it for pure beginners (you might need to have taken some basic accounting to get the hang of it), it’s pretty powerful for being open-source, and it’s helped me to have a much better handle on the way I should be thinking about my finances.

However, being open-source, it came with its headaches. Getting PNC and GnuCash to play with each other was a chore; there were a few times I wanted to just quit and buy Quicken, but I’m glad I stuck it out, if only for the sake of my ego and feeling like I accomplished something. For any of you struggling with getting PNC and Quicken to work with each other, you need to know the following:

1. You have to get a PIN and Account Number from PNC.

You can apply for one via Online Banking and get it in the mail later.

2. You actually can’t just use the PIN number they give you.

You have to change the PIN number, and the only software which has the backend for this is, guess what, Quicken. Quicken doesn’t offer free trials, so you can’t just download it temporarily, and don’t bother using those free trials that international versions of Quicken offer, since they don’t integrate with US banks. Your best best is to torrent a copy of Quicken to temporarily use in order to change your PIN. Once your PIN is changed, you can use GnuCash to access your accounts with the new PIN number.

By the way, don’t enter your PIN number wrong too many times like I did, or else PNC will lock your account down and you’ll have to call them to get it working again.

3. PNC’s correct OFX banking URL is https://www.oasis.cfree.com/4501.ofxgp.

This was NOT the one listed in GnuCash’s documentation as of this writing, or in the following links, which all claim to have the right URL.

I’m planning on sending requests to these sites to change their listings, but in the meantime, use https://www.oasis.cfree.com/4501.ofxgp.

Speaking of documentation, GnuCash’s documentation is really sparse for trying to get Online Banking working.

4. You can’t download credit card transactions via PNC’s “Direct Connect”

I discovered from this old Moneydance support ticket that PNC doesn’t allow for credit card information download via their OFX backend. You’ll have to download OFX files from PNC and import them into GnuCash manually. Why they don’t allow credit cards to be connected via Direct Connect I have no idea. American Express allows for downloading transactions using a similar backend, and you don’t even have to get a special account number or password. PNC and other banks ought to open this up; there’s really no reason why users shouldn’t be able to download their transaction data from some kind of endpoint.

I think Quicken has a special deal with a large number of banks that allow them to use something called “Web Connect,” which I think uses the same technology Mint.com (which Quicken recently bought out) used to download transaction data. I used tcpView to figure out what IP addresses Quicken and GnuCash were hitting as I wanted to attempt to emulate the “Web Connect” request via GnuCash; however all of the traffic out of Quicken, surprise surprise, goes straight to their server, not to PNC, so I’m out of luck analyzing the data; without Quicken’s keys, the data they send out of their app is pretty useless. From what I’ve read, Quicken more or less has a monopoly on these things, setting up contracts with the banks to get special, highly convenient read-only access to their accounts (someone up there in government please take notice because this is ridiculous). “So much for ‘Open Standards'”.

5. You should probably set up a script to download transactions.

As a last resort for automating these downloads, I discovered CasperJS, which is a headless browser built on top of PhantomJS. I couldn’t get it working when I was dealing with this earlier, so I’ll have to look into it again sometime, or just use PhantomJS itself. In any case, in the future I hope to be able to just run a script to download the OFX files from PNC.

Or maybe I’ll just have to find a bank that allows me to automatically download my credit card transactions.

A final lesson

So, was it worth the $70 I saved not buying Quicken? I probably lost about 8 spare hours just messing with GnuCash and getting things to work. That’s 8 hours I could have spent reading Scripture, spending time with my wife, meeting up with people. I’d be happy to pay $70 for that. However, Lord willing I have a better understanding of financial software and have a good foundation set for the future management of our family’s finances.