Setting up OFXDirectConnect

From GnuCash
Revision as of 17:21, 10 December 2006 by Despertaferro (talk | contribs) (Added a reply to a user's question)
Jump to: navigation, search

Online Banking in Gnucash 2 - OFXDirectConnect

GnuCash 2 can import financial data from several types of files. But you can also connect directly from within your account registers to your financial institutions to download transaction data directly to your registers. In Europe, for banks using HBCI, you can even initiate bank transactions from within GnuCash. Those of us in the U.S., living in a Quicken and MSMoney dominated environment, generally must use OFX based data for online banking.

At present, OFXDirectConnect can be used to download transaction data from credit card and bank accounts. Investment transactions should still be imported from downloaded OFX files (I use ofx.py) via GnuCash's File>Import>Import OFX/QFX... menu option.

AqBanking

GnuCash now uses AqBanking as a means to handle connections to financial institutions. GnuCash must be configured using --enable-hbci and --enable-ofx in order for OFXDirectConnect to be available.

The Ubuntu distribution does not have these options enabled by default in repositories, as when using apt-get, aptitude or the Synaptic Package Manager. This is due to a dependency on one piece of non-GPL software (the OpenSSL package, used for SSL communication). You can find information on compiling GnuCash and its dependencies from source here: http://ubuntuforums.org/showthread.php?p=1800261

AqBanking has its own setup wizard for the purpose of setting up account identification and user login ID for your online connections. This page is intended to document how to use this wizard to enable you to download data directly from your bank or credit card company into the appropriate GnuCash register.

You must have Libofx 0.8.2 or higher and AqBanking 2.0.0 or higher to user OFXDirectConnect in Gnucash

The AqBanking Set-up Wizard

  1. From the GnuCash main window, choose the menu item: Tools>HBCI Setup...
  2. Click the Forward button in the Initial HBCI Setup window that appears.
  3. In the following window, click the Start AqHBCI Wizard button which appears in the upper left
  4. In the Configuration window which appears, click on the Backends tab,
    1. Click on the line containing "aqofxconnect" to select the AqBanking backend that handles OFXDirect Connect,
    2. And click the Enable button

AqB-Backends.png

Your installation of GnuCash/AqBanking may have several additional backends listed. For OFXDirectConnect, only the aqofxconnect backend needs to be enabled.

After enabling the backend, you are ready to define "Users" -- one for each of the financial institutions that can send you OFX data.

Background: I have installed Gnucash on a Ubuntu 6.1 amd64 system following the instructions in the article Installing GnuCash on Debian. When I reach this step of selecting the backend I do not have the aqofxconnect backend in the list.
aqdtaus version 2.0.0
aqgedldka.. version 2.0.0
aqhbci version 2.0.0
aqnone version 2,0,0
I have found one other post on the web with the identical problem. If there are instructions of how to get aqofxconnect onto this list if it is missing that would be most useful for people like me.
The ofxdirectconnect parts of aqbanking have probably been packaged into a separate package named libaqbanking-ofxdirectconnect or similar. Please check your distribution for potential additional sub-packages of libaqbanking. The aqbanking source distribution includes all these parts, but compilation and installation depends on certain configure switches to be activated. --Cstim 04:59, 16 November 2006 (EST)
In Ubuntu Edgy 6.10 the package is called libofx2c2a. Note though, that the version available from the repositories is 0.8.0 and in this article it is mentioned that you need at least 0.8.2 for OFXDirectConnect to work. This might be the source of your problems. Note: although I myself replied here, I believe these comments should be moved to the discussion page of the article. --Despertaferro 12:21, 10 December 2006 (EST)

Defining a User in AqBanking

  1. In the same Configuration window that is already open,
    1. Click on the Users tab, and
    2. Click on the New button

AqB-newuser.png

At this point, the Select Backend window appears. Use the Backend popup menu to select "aqofxconnect - OFX-DirectConnect backend" and Click OK

The User Configuration window appears with the Intro tab chosen. Click on the General tab, and you are ready to start entering information that AqBanking will need to login to one of your accounts.

In the General tab:

User Name = anything you'd like. It is the local name you want to associate with a given logon ID
User ID = the login name the bank associates with your account.
If you have web access to your data, this ID is usually the same one you use to login to the bank/credit card web site
Some banks use your SSN as the default User ID, particularly if the bank thinks you are using Quicken to connect
The User ID field is the one AqBanking sends as part of its OFX login request
Customer ID = ? (I don't know. I just set it equal to the User ID, and I haven't had problems.)
Country = whichever country your financial institution is in -- usually United States of America for OFXDirectConnect
Bank ID = RTN (Routing Transit Number, sometimes referred to as ABA number) for checking/savings
=? for credit cards (I usually set this equal to the OFX <FID> tag discussed under the OFX tab of the User Configuration window

AqB-UserGeneral.png

In the OFX tab: On this page you need some data that may be hard to find. Financial institution help-line staff will have no idea what you're talking about if you ask them. Their supervisors will probably deny that any such information exists. So you'll have to find it yourself. See the section "Where to find connection info" for some ways to find this information.

FID = the value of the OFX tag <FID> usually a 4 or 5 digit number, but the OFX spec does not limit it to numerical values
ORG = another OFX tag... <ORG>, sometimes referred to as FIORG
this one can be weird. Chase's credit card <ORG> is B1 because they are now using the servers acquired along with the rest of BankOne, and they haven't changed the front end
Broker Id = another OFX tag
usually blank for banks and credit cards
If the data you are looking at has "Yodlee" in the broker ID, you need to find another OFX tag source
Yodlee is a branding agent that stands between you and your data. You will need to find the next server down the link list before you will be able to log in via GnuCash/AqBanking
Server URL = the exact, complete server URL for the OFX data server that has your account data

AqB-UserOFX.png

Using AqBanking to set up accounts

Once a User is defined, you could click on the Accounts tab and define the account(s) associated with the previously define User(s). But it is usually easier to let AqBanking retrieve an account list for each user. If successful, you don't have to worry about the Accounts tab at all.

In the OFX tab of the User Configuration, Click the "Supports Account List Downloads" check box, and Click the "Get Accounts" button

AqBanking should ask you for your password/PIN Enter the password and click OK

On the first connection, AqBanking will ask if you want to accept the SSL Certificate the server is reporting.

You must accept it (Once or Permanently) or the connection attempt will abort.
For the very security minded, you could try to verify the certificate independently, but I don't know how to do that.
I just accept the certificates permanently -- I'm only downloading data, not initiating transactions.

If the connection was successful, you should see something like:

AqB-getaccountsuccess.png

(If it only displays the last line, "Finished. You may close this window", you most likely have an incorrect setting. Try changing the HTTP Version to 1.1 [from 1.0], or make sure your FID and ORG settings are correct, the URL is correct, etc. Additionally, if it does connect but says "service not enabled" in red, make sure you signed up for the Quicken service (and not necessarily Microsoft Money). For example, you have to tell (California and non-California) Bank of America, by calling 1-800-792-0808, that you need Quicken access and there might be a $9.95 monthly fee, which may be waived if your accounts satisfy certain conditions, such as monthly direct deposit.)

At this point, you should have one or more automatically generated accounts in the AqBanking files on your machine. The account(s) information you downloaded won't be visible in the AqBanking setup wizard until the next time you open the wizard (the Accounts tab does not refresh automatically), but the data is on your machine and available to GnuCash's HBCI setup.

Click Close on the "Requesting account list" communication progress window

Click OK in the AqBanking Configuration window, and you return to the GnuCash HBCI Setup window.

Click Forward to go to the "Match HBCI accounts with GnuCash accounts" window

Click on an account name on the left (the account defined in the AqBanking setup wizard configuration), and select the GnuCash account that should be associated with it

Click the Forward button

In the next window, click the Apply button

You're now ready to use OFXDirectConnect from your GnuCash register.

Using Gnucash to download transactions directly to an account register

After you have successfully run the AqBanking setup wizard

  1. Open the register for the account that is to connect to the financial institution
  2. Choose the menu item: Actions>Online Actions>Get Transactions...
  3. Enter your password in the pop-up window and Click OK
  4. GnuCash will connect to your account and download transactions
  5. Any new transactions will appear in GnuCash generic import matcher
    1. Click the A or R boxes as appropriate (Add new or Reconcile)
    2. Select a split account if the importer shows the line in yellow
    3. Click OK, and Gnucash adds or reconciles transactions in your register. You're done.

Where to find connection info

See OFX Direct Connect Bank Settings