Ofxstatement
Tool to convert proprietary bank statement to OFX format, suitable for importing to GnuCash or other personal finance applications.
Install / Use
/learn @kedder/OfxstatementREADME
OFX Statement
.. image:: https://github.com/kedder/ofxstatement/actions/workflows/test.yml/badge.svg?branch=master :target: https://github.com/kedder/ofxstatement/actions/workflows/test.yml .. image:: https://coveralls.io/repos/kedder/ofxstatement/badge.png?branch=master :target: https://coveralls.io/r/kedder/ofxstatement?branch=master .. image:: http://www.mypy-lang.org/static/mypy_badge.svg :target: http://mypy-lang.org/ .. image:: https://img.shields.io/badge/code%20style-black-000000.svg :target: https://github.com/psf/black
Ofxstatement is a tool to convert proprietary bank statements to OFX format, suitable
for importing into personal accounting systems like GnuCash_ or homebank_. This
package provides a command line tool to run: ofxstatement. Run ofxstatement -h
for more help. ofxstatement works under Python 3 and is not compatible with Python
2.
.. _GnuCash: https://gnucash.org/ .. _homebank: https://www.gethomebank.org/
Rationale
Most internet banking systems are capable of exporting account transactions to
some sort of computer readable format, but few support standard data formats,
like OFX. On the other hand, personal accounting systems such as GnuCash
support standard formats only, and will probably never support proprietary
statement formats of online banking systems.
To bridge the gap between them, this ofxstatement tool was created.
.. _GnuCash: https://gnucash.org/ .. _OFX: https://en.wikipedia.org/wiki/Open_Financial_Exchange
Mode of Operation
The ofxstatement tool is intended to be used in the following workflow:
-
At the end of each month, use your online banking service to export statements from all of your bank accounts in a format known to ofxstatement.
-
Run
ofxstatementon each exported file to convert it to OFX. Shell scripts or a Makefile may help to automate this routine. -
Import the generated OFX file into your personal accounting system.
Installation and Usage
Before using ofxstatement, you have to install a plugin for your bank (or
write your own!). Plugins are installed as regular python packages, with
easy_install or pip, for example::
$ pip3 install ofxstatement-lithuanian
Note that ofxstatement itself will be installed automatically this way. After
the installation, the ofxstatement utility will be available.
Users of Ubuntu and Debian operating systems can install ofxstatement from official package repositories::
$ apt install ofxstatement ofxstatement-plugins
You can check that ofxstatement is working by running::
$ ofxstatement list-plugins
You should get a list of your installed plugins.
After installation, the usage is simple::
$ ofxstatement convert -t <plugin> bank_statement.csv statement.ofx
The resulting statement.ofx is then ready to be imported into a personal
accounting system.
Known Plugins
There are several user-developed plugins available:
================================= ============================================
Plugin Description
================================= ============================================
ofxstatement-mt940_ Swift MT940 statements
ofxstatement-iso20022_ Generic ISO-20022 format
ofxstatement-paypal-2_ PayPal, *.csv for private accounts
ofxstatement-transferwise_ Transferwise CSV (international)
ofxstatement-nordigen_ Plugin for GoCardless and Nordigen data parsing
ofxstatement-lithuanian_ Plugins for several banks, operating in
Lithuania: Swedbank, Danske and common Lithuanian exchange format - LITAS-ESIS.
ofxstatement-czech_ Plugin for Poštovní spořitelna
(maxibps) and banks using GPC
format (e.g., FIO banka, module
gpc).
ofxstatement-airbankcz_ Plugin for Air Bank a.s. (Czech Republic)
ofxstatement-raiffeisencz_ Plugin for Raiffeisenbank a.s. (Czech Republic)
ofxstatement-skippaycz_ Plugin for Skip Pay s.r.o. (Czech Republic)
ofxstatement-unicreditcz_ Plugin for UniCredit Bank Czech Republic and Slovakia
ofxstatement-equabankcz_ Plugin for Equa Bank a.s. (Czech Republic)
ofxstatement-cz-komercni_ Komerční banka (Czech Republic)
ofxstatement-mbankcz_ mBank S.A. (Czech Republic)
ofxstatement-partnersbankacz_ Partners Banka, a.s. (Czech Republic)
ofxstatement-otp_ Plugin for OTP Bank, operating in Hungary
ofxstatement-bubbas_ Set of plugins, developed by @bubbas:
dkb_cc and lbbamazon.
banking.statements.osuuspankki_ Finnish Osuuspankki bank
banking.statements.nordea_ Nordea bank (at least Finnish branch of it)
ofxstatement-seb_ SEB (Sweden), it parses Export.xlsx for private accounts
ofxstatement-lansforsakringar_ Länsförsäkringar (Sweden), it parses Kontoutdrag.xls for private accounts
ofxstatement-be-belfius_ Belfius (Belgium)
ofxstatement-be-keytrade_ KeytradeBank (Belgium)
ofxstatement-be-ing_ ING (Belgium)
ofxstatement-be-kbc_ KBC (Belgium)
ofxstatement-be-argenta_ Argenta (Belgium) (by @woutbr)
ofxstatement-be-argenta-nick_ Argenta (Belgium, also supports french version) (fork by @Nick-DT)
ofxstatement-be-crelan_ Crelan (Belgium)
ofxstatement-be-triodos_ Belgian Triodos Bank CSV statements
ofxstatement-be-newb_ Belgian cooperative bank newB
ofxstatement-be-vdk-fr_ VDK (Belgium, French statements)
ofxstatement-be-hellobank-fr_ Hello Bank (Belgium, French statements)
ofxstatement-germany_ Plugin for several german banks (1822direkt and Postbank at the moment)
ofxstatement-dab_ DAB Bank (Germany)
ofxstatement-consors_ Consorsbank (Germany)
ofxstatement-de-triodos_ German Triodos Bank CSV statements (also works for GLS Bank)
ofxstatement-sp-freiburg_ Sparkasse Freiburg-Nördlicher Breisgau (Germany)
ofxstatement-de-ing_ Ing Diba Bank (Germany)
ofxstatement-mastercard-de_ Mastercard PDF statements (Germany)
ofxstatement-fidelity_ Fidelity CSV statements
ofxstatement-sparkasse-de_ Sparkasse PDF statements (Germany)
ofxstatement-austrian_ Plugins for several banks, operating in Austria:
Easybank, ING-Diba, Livebank, Raiffeisenbank.
ofxstatement-postfinance_ Swiss PostFinance (E-Finance Java text based bank/credit statements).
ofxstatement-fineco_ FinecoBank (Italy)
ofxstatement-intesasp_ Intesa San Paolo xlsx balance file (Italy)
ofxstatement-chebanca_ CheBanca! xlsx format (Italy)
ofxstatement-n26_ N26 Bank (Italy)
ofxstatement-it-banks_ Widiba and Webank (Italy)
ofxstatement-bancoposta_ BancoPosta - Poste Italiane (Italy)
ofxstatement-hype_ Hype - Banca Sella (Italy)
ofxstatement-betterment_ Betterment (USA)
ofxstatement-simple_ Simple (USA, defunct) JSON financial statement format
ofxstatement-mbank-sk_ MBank.sk (Slovakia)
ofxstatement-latvian_ Latvian banks
ofxstatement-ee-seb_ SEB (Estonia), parses proprietary csv file
ofxstatement-ee-swedbank_ Swedbank (Estonia), parses proprietary csv file
ofxstatement-polish_ Support for some Polish banks and financial institutions
ofxstatement-russian_ Support for several Russian banks: Avangard, AlfaBank, Tinkoff, SberBank (both debit and csv), VTB.
ofxstatement-is-arionbanki_ Arion bank (Iceland)
ofxstatement-revolut_ Revolut Mastercard
ofxstatement-al_bank_ Arbejdernes Landsbank (Denmark)
ofxstatement-cd-tmb_ Trust Merchant Bank (DRC)
ofxstatement-zm-stanbic_ Stanbic Bank (Zambia)
ofxstatement-dutch_ Dutch financial institutes like ICSCards and ING
ofxstatement-french_ French financial institutes like BanquePopulaire
ofxstatement-schwab-json_ Charles Schwab investment history JSON export
ofxstatement-bbva_ BBVA (Spain)
ofxstatement-qif_ Converts Quicken Interchange Format (QIF) formatted bank transaction files
ofxstatement-santander_ Converts Santander transaction files
ofxstatement-santander-es_ Converts Santander ES transaction files
ofxstatement-directa_ Directa SIM Broker
ofxstatement-upday_ UpDay
ofxstatement-bkk_ Bangkok Bank
================================= ============================================
.. _ofxstatement-lithuanian: https://github.com/kedder/ofxstatement-lithuanian .. _ofxstatement-czech: https://gitlab.com/mcepl/ofxstatement-czech .. _ofxstatement-airbankcz: https://github.com/milankni/ofxstatement-airbankcz .. _ofxstatement-raiffeisencz: https://github.com/milankni/ofxstatement-raiffeisencz .. _ofxstatement-skippaycz: https://github.com/archont00/ofxstatement-skippaycz .. _ofxstatement-unicreditcz: https://github.com/milankni/ofxstatement-unicreditcz .. _ofxstatement-equabankcz: https://github.com/kosciCZ/ofxstatement-equabankcz .. _ofxstatement-mbankcz: https://github.com/SinyaWeo/ofxstatement-mbankcz .. _ofxstatement-partnersbankacz: https://github.com/archont00/ofxstatement-partnersbankacz .. _ofxstatement-otp: https://github.com/abesto/ofxstatement-otp .. _ofxstatement-bubbas: https://github.com/bubbas/ofxstatement-bubbas .. _banking.statements.osuuspankki: https://github.com/koodaamo/banking.statements.osuuspankki .. _banking.statements.nordea: https://github.com/koodaamo/banking.statements.nordea .. _ofxstatement-germany: https://github.com/MirkoDziadzka/ofxstatem
Related Skills
beanquery-mcp
43Beancount MCP Server is an experimental implementation that utilizes the Model Context Protocol (MCP) to enable AI assistants to query and analyze Beancount ledger files using Beancount Query Language (BQL) and the beanquery tool.
valuecell
9.9kValueCell is a community-driven, multi-agent platform for financial applications.
REFERENCE
An intelligent middleware layer between crypto wallets and traditional payment systems.
cashu-skill
A Cashu wallet skill for AI agents
