Bobby’s PocketSense OFX script package ~ so far, this is is my favorite!!
Wow! I put out a request for a Python subroutine to clean up the Discover OFX file and within 3 days – Bobby wrote scrubber.py that does exactly that. Even though your data connection occurs via a secure, encrypted (HTTPS) connection using these scripts, he found a way to also encrypt all of your locally stored personal account information right in Python, eliminating the need for a plain-text BAT file with all of that information that I was in turn encrypting into an EXE file.
He also wrote another script setup.py to simplify the setup process and he wrote an excellent installation and user’s guide that also has a link to the most recent version of his script package named “PocketSense”, so that just about anyone will be able to import their financial data once their Microsoft Money program goes offline.
Having just tried it out within hours of it’s publication, I can attest to how easy it is to setup and how great it works – even with Discover transactions!
[UPDATE 3/4/2010] Although PocketSense started out as an enhanced repackaging of TFB’s automated script to address the aforementioned issues, in the past month it has really evolved (and there are more enhancements to come!) with many improvements, so if you couldn’t get TFB’s script to function with your bank, give this package a try. And if you want to be able to update all of your information by clicking on a link within Money, see my posting above regarding the webpage add-in to Money.
[NOTE] One note to readers regarding Discover downloads – although the transactions will no longer replicate using this script method (thanks to his great scrubber routine), if you run these scripts in parallel with online updates (this isn’t normal, but some of us want to gain confidence in the Python script method (or we’re Beta testing🙂 )prior to halting online updates), the transactions won’t be matched together as the transaction IDs still must differ slightly between the two methods. Simply choose the “Change” option to manually match the duplicates together and all is well.
Here are a couple of extracts from his write-up…
Money has a useful feature called import, which offers a back-door solution to gathering online updates. In its simplest implementation, the user goes to each of their financial institutions and downloads their latest transactions, subsequently importing the resulting files into Money. I guess that if you only have a single online account, this option wouldn’t be too onerous. By no surprise, many of us have more than two or three accounts, and repeating this cycle over and over again every time we want to update would be less than satisfactory. Fortunately, we don’t have to. Thanks to OFX transaction servers, the dirty work can be done for you. I began looking into the option a few weeks ago and, during a Google search, ran across TheFinanceBuff web site. His series, titled Replacing Money, presented a discussion of Python scripts that appeared to do what I wanted. The article consists of a series of posts describing how he got started, the changes he made, and some alternatives he had considered. As presented, the option requires a few computer skills that many users probably won’t feel comfortable employing, but it looked promising to me.
I started off with the notion that I would just fix a few issues that I was experiencing, and get things working. I quickly ran into the issues with Discover, and soon found myself rewriting sections of the code and also putting a “wrapper” around it in the form of a setup routine.
Setup: There is now a Setup.py routine for configuring account information. This was necessary to implement user-name/password encryption. If I had remembered how bad it is to write a command-line menu structure… I probably would have never started.
Security: Passwords and user-names can be encrypted. The encryption that I settled is standard DES, which accepts up to an 8-byte password (key). This isn’t a crack-proof algorithm, but unless you’re running money for “da man”, it’s more than satisfactory for keeping even a techno-savvy thief from extracting your info. As for the security of the code itself, it’s all “open”, meaning that anyone (yes… you) can look at the inner workings and see that nothing spooky is going on. The code makes a secure connection directly with each institution and transfers data over that secure, encrypted link. There is no other connections made and your information is not being (silently) sent to somewhere in north Siberia.
Scrubbing the Statements: As discussed here, I also ran into issues when downloading Discover Card transactions. To fix that issue, I ended up implementing a “scrubber” routine that re-formats Discover transactions before sending them to Money. The interface is “open”, meaning that it’s easy to add a “scrubber” for any other institution or statement format.
Thank you Bobby for sharing PocketSense with all of us that want to stick with Microsoft Money!!!