Import bank transactions to QuickBooks desktop
Intuit disabled QuickBooks' function of retrieving bank transactions in May 2023 in order to push people to subscribe to their expensive online edition ($60/month).
QuickBooks can import qbo files. If a bank allows only ofx files, one usually just need to modify these files slightly to make them importable to QuickBooks Desktop - converting it to a qbo file. Unfortunately, Intuit is nice enough to disable qbo import. The only option is converting a qbo or an ofx file to an IIF file. One can pay over $100/year to use a utility program to convert these files.
A nice fellow started to share his great tool QuickBooks QBO / CSV to IIF converter in early 2024. It saves time and prevents typos. It has many functions. Its basic functions should suffice for banking accounts with no more than a few dozens of transactions per month.
After downloading and starting the app, do the following monthly.
- Export the transactions of the past month on a bank or credit card company's website to a qbo file.
- Start the app and enter the default account (e.g., the most frequently used account such as "Sales - Software", "Travel Expense").
- Click but "Load QBO/QFX" to load the qbo file.
- Make sure the transactions already in QB (e.g., tax payments generated from QB, overlap with the previous monthly import) are unchecked and others are checked.
- Click the account column for each transaction which account is not the default account, and enter the account name (e.g., Computer and Internet Expenses, Payroll Expenses).
- Edit the the Vendor/Payee if the name is not already in QB. For TD bank accounts, the names usually are already in QB. For Citi Bank's credit accounts, the payee names usually have odd prefixes and/or affixes, so they need to be edited. One can use a general name such as EV Charging to save creating new names in QB and copy the imported names to the Memo.
- Click button "Convert to IIF" to create the IIF file.
- In QB: File > Utilities > Import... to import the newly created IIF file.
The entire process should take no more than 10 minutes.
Updating the app is easy: just download the app to the same directory so that the .json file persisting auto-complete text can be reused.
IIF files are ASCII text, TSV (Tab-Separated Value) files. It is one of the worst document formats. It should be avoided whenever possible.
OFX file:
ofxparser.net which has a NuGet package is a great library for parsing OFX file
IIF
IIF format is fairly simple.
It contains lines starting with "!" to explain the columns of the corresponding data line.
For example, the following file start with three lines !TRNS, !SPL,!ENDTRNS to explain the columns of the TRNS, SPL, and ENDTRNS lines following them respectively.
!TRNS TRNSID TRNSTYPE DATE ACCNT NAME CLASS AMOUNT DOCNUM CLEAR
!SPL SPLID TRNSTYPE DATE ACCNT NAME CLASS AMOUNT DOCNUM CLEAR
!ENDTRNS
TRNS 15 DEPOSIT 7/16/1998 Checking 50 N
SPL 16 DEPOSIT 7/16/1998 Income Account Customer Class Name -50 236 N
ENDTRNS