OFX Importer Plugin

Ace Jones

Thomas Baumgart

Getting the plugin

KMyMoney will import OFX files painlessly. However, this functionality is not built into the core program. You must obtain and install the OFX Importer Plugin. Once that is installed, the command to import OFX files will automatically show up under the FileImport submenu.

Note that many prepackaged versions of KMyMoney were built with the OFX importer already included or available as a separate package. If the OFX importer does not seem to be installed in your version, the first place to check is in the same place you got your base KMyMoney package.

If you have installed from RPM, the OFX Importer Plugin is contained within the kmymoney-ofx package. It should be available from whatever source you got the base KMyMoney package. If you have built from sources, all you need to do is have preferably the libOFX 0.9 development headers and libraries installed on your system. The KMyMoney build process will detect these and compile the plugin. At the time of release of KMyMoney 4.6, the latest libofx version was 0.9.4, which is also the minimum required version.

Should you run into trouble trying to compile KMyMoney, and you are certain you have the correct version of libOFX installed, please contact the developers list for assistance. Include a copy of your config.log file, compressed first via gzip.

What is OFX

OFX stands for Open Financial Exchange. According to the OFX web site Open Financial Exchange (OFX) is a unified specification for the electronic exchange of financial data between financial institutions, businesses and consumers via the Internet. OFX is not a financial institution. The specification defines formats for transfer of financial data both by file and by direct interchange.

Although the standard is much more complete and robust than QIF, there are still variations, depending on the specific implementation used by any institution. OFX files may have an extension of OFX or QFX (upper or lower case); this does not imply any particular difference in the content. The specification is based on XML, so the files can be read in any text editor, but as whitespace is not relevant to the content itself, some implementations do not use any, making it very hard for a human to read.

Another site with good information is OFX Home. They maintain a directory of financial institutions that support OFX. This can be useful if you have problems setting up OFX direct connect. They also have a forum for discussions about OFX issues.

Importing an OFX file

The most basic way to import an OFX file is to choose the importer from the menu bar. From the FileImportOFX... menu item. If OFX does not show up under Import, you do not have the OFX Importer Plugin installed correctly. Please see the previous section.

The first thing the importer will do is ask you into which account to import the transactions. If there are transactions from multiple accounts in your file, you will be asked this question multiple times.

After importing, some of your transactions may be shown with an exclamation mark on a yellow triangle in the ledger. This is because they need to be assigned a category. The importer was not able to automatically assign a category based on your past transaction history. You can edit each transaction in the ledger to assign a category, and the mark will be removed.

Please note that this section describes the native OFX importer. OFX files may also be imported using the AqBanking Importer Plugin if you have installed that. Note that the two importers do behave slightly differently, and they are written and supported by two different developers.

Importing Investments

Please note that if you are importing a file with investment transactions, those investments must first exist in your KMyMoney file. The trading symbol is used to match, so please ensure that the symbol in KMyMoney is exactly the same as the one in the file you're importing.

Web Connect

The easiest way to import an OFX file is to set up Web Connect. Visit your bank's web site, and click on a link to download an OFX file. Your browser should ask you what program you would like to use to open the file. Point your browser to KMyMoney. It will then import the downloaded OFX file into the KMyMoney file you most recently had open. You can also change the file associations of your desktop environment, and have KMyMoney open the OFX file automatically for you.

If you need to import the OFX file into some other KMyMoney file, load up that file in KMyMoney first, and then visit your bank's web site.

Direct Connect

OFX Direct Connect is now supported in KMyMoney. This gives you the ability to contact your bank directly to obtain statements. In the future, there will be more help written, and this will be moved to its own section.

To enable this feature, you must compile KMyMoney with the --enable-ofxbanking switch (now the default).

Please be warned: Many banks require a separate signup, will give you a separate password or PIN, and may even charge you a separate fee for this service. No bank directly supports KMyMoney. You will have to tell them you want to bank directly from MS Money or Quicken.

The first step is to configure each account for which you wish to download statements. Go to the Accounts view, right click on the account you wish to configure, and choose Map to online account.... In case more than one online banking plugin is installed on your system you will be asked which one to use. For the internal OFX method select KMyMoney OFX. A list of banks will be downloaded from the Internet and a wizard will guide you through choosing a bank, entering your username and password, and selecting an account. Should you find that your bank is not listed, then it may still be possible to use the manual option. Your bank may be able to provide the required parameters, or you may have to do some research to find them.

Note

Setting up OFX Direct Connect can sometimes be a challenge, especially as the implementation at most institutions do not provide sufficient details in error messages. One particular issue to note is that many institutions require you to change your password the first time you access it online using this method. Unfortunately, at this time, the library that KMyMoney uses (libofx) does not have a way to interactively change a password. In some cases, it is possible to get a technical support person at the institution to change the password for you. Until we are able to expand this section with more detailed troubleshooting information, if you have trouble getting this to work for you, you can ask for help on the KMyMoney developer list .

Once you have an account set up with online banking, go to the ledger for that account. Then choose AccountUpdate account... menu item. This will connect to your bank, and download a statement for the last 60 days.

Note

In version of KMyMoney prior to 4.6, the payee name was always taken from the PAYEEID field. As of version 4.6, the payee name can be based on either the PAYEEID, NAME, or MEMO field in the OFX transaction. You can configure this feature and some other OFX direct connect settings by selecting the appropriate tab in the Edit account dialog.

Exporting an OFX file

It is not possible to export your data as an OFX file currently. If you are interested to contribute in this area, please contact the libofx development team for details.