--- id: ofxparse version: "0.21" license: MIT License license_treatment: permissive maintenance: abandoned --- # ofxparse — Tools for working with the OFX (Open Financial Exchange) file format License: permissive · Maintenance: abandoned · Downloads: 197.6K/mo ## What it is and what it does ofxparse reads Open Financial Exchange (.ofx and .qfx) files—the standard format banks, credit card companies, and investment brokers use to export account statements—and converts them into Python objects you can query for accounts, transactions, positions, and balances. It handles three account types: bank accounts, credit card accounts, and investment accounts, each with different statement structures and transaction types. The package is designed for one-way parsing: reading OFX files you've downloaded from your financial institution and extracting their data into your application. It has no runtime dependencies (only build-time ones), making it lightweight once installed. However, the project has been abandoned for over five years with no active maintenance, so it may not handle newer OFX variants or edge cases from current financial software. Use it for: - Extract transaction history from downloaded bank statements to build personal finance dashboards or ledgers. - Aggregate account balances and positions from multiple financial institutions into a single Python data structure. - Parse investment account statements to extract holdings, trades, and performance data for portfolio analysis. - Migrate financial data from OFX exports into custom accounting or bookkeeping applications. - Automate reconciliation workflows by reading OFX files and matching transactions to internal records. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Parses Open Financial Exchange (.ofx) format files from banks, credit card companies, and investment brokers into structured Python objects for account and transaction data. No, unless you are maintaining legacy code that already depends on it. The package is abandoned (last release 2021-05-31, no commits or updates since), installs only from source, and has no active maintenance. For new projects, use a maintained OFX parser or consider whether your financial institution offers a modern API instead. If you must parse OFX files, verify first that the package handles your institution's current format. ## Install pip install ofxparse uv add ofxparse poetry add ofxparse ## Installing ofxparse Before you install: High install friction due to source distribution only. Package is abandoned as of 1901 days since last release; no maintenance or updates are expected. Suitable only for legacy systems or read-only parsing of existing OFX files. License in practice: MIT license permits commercial and private use with minimal restrictions. You may use, modify, and distribute the package freely provided you include the license notice. Quickstart: pip install ofxparse from ofxparse import OfxParser import codecs with codecs.open('file.ofx') as fileobj: ofx = OfxParser.parse(fileobj) account = ofx.account print(account.account_id, account.statement.balance) Requires BeautifulSoup4, six, and lxml as build/runtime dependencies; no prebuilt wheels available (source distribution only). Verify before relying: - Whether the package still works reliably with modern OFX file formats from current banking systems. - Compatibility with Python versions beyond 3.6 (classifiers list only up to 3.6). - Whether BeautifulSoup4, six, and lxml are reliably installable in current environments. ## Package facts - License: MIT License (permissive) - Python support: unspecified - Install friction: high - Maintenance: abandoned - Downloads: 197.6K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags ofx file parser, open financial exchange, bank statement parsing, ofx to python, financial data extraction, investment account statements, qfx parser, finance, data-parsing, legacy [View on SkillFed](https://skillfed.io/packages/ofxparse) · [View on PyPI](https://pypi.org/project/ofxparse/)