qif2ofx
Convert credit card transactions in Quicken Interchange format (QIF) to Open Financial Exchange (OFX). Use this if you can only comfortably import OFX in your finance tool of choice. For example, I use beancount-import (what an excellent tool!), but so far it only directly supports ingesting OFX. My bank decides to only distribute in QIF, so hence this (lazy) way of solving the problem.
The converter assumes you have credit card transactions in your QIF, and not whatever else QIF can be used to represent, because that's my only use-case so far.
Install
The following provides the executable qif2ofx and the python library qif2ofx:
pip install qif2ofx
Usage
OFX is a lot richer than QIF, from what I gathered from briefly looking at the specification (don't, if you want to preserve your sanity. It hurts my eyes. Why did they make all the tags in capital letters). QIF is basically a list of transactions, without real context, while OFX offers rich descriptions of all sorts of financial concepts. Hell, QIF doesn't even have a concept of currency. Hence to convert our QIF input to OFX we need to provide a bunch of metadata:
qif2ofx \
# A glob expression, or path for that matter, of QIF files
# we'd like to convert to OFX
--glob "path/to/**/*.qif" \
# The currency we'd like to set in our OFX file.
--currency GBP \
# Again, QIF has no notion of accounts, OFX does. Tools handling
# OFX expect an account identifier so they can reconcile with
# the appropriate account in the money management tool.
--acctid puppies
This is the bare minimum we need to generate a valid-ish OFX out of your QIF. You can set a few more options through the command line to control some details, see qif2ofx --help for more details.
Metadata
Release files for qif2ofx 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| qif2ofx-0.1.0.tar.gz | 6.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| qif2ofx-0.1.0-py3.8.egg | Legacy Egg format | - | - | Details |
Total release size: 19.1 kB
Release files / qif2ofx-0.1.0.tar.gz
| Download URL | qif2ofx-0.1.0.tar.gz |
|---|---|
| Size | 6.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7d22de980c06809500c2508cd9bbbf8eac068acd4bbea9af1dbb1615ad4a04c9
|
|
BLAKE2b-256 checksum How to use checksums |
b29e1cc537cabcb48698d3400a370a95ad962bbdc92b222bab014af8fe5c2537
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/47.3.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3
|
Release files / qif2ofx-0.1.0-py3.8.egg
| Download URL | qif2ofx-0.1.0-py3.8.egg |
|---|---|
| Size | 12.6 kB |
| Tags | Egg |
|
SHA-256 checksum How to use checksums |
68eacbf1597ffed15d33683781821b9cf894ea572b481594a926132e72415832
|
|
BLAKE2b-256 checksum How to use checksums |
9b067f48efe88f6d6e7faf87377d465809b6692392897a8ad18e2efde9f61759
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/47.3.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3
|