Skip to main content

Daftarche

tests PyPI Python License

Daftarche (دفترچه, "little account book") is a desktop app for personal bookkeeping. It imports bank statements in QFX/OFX format, sorts every transaction into income, expense or transfer with categories, sub-categories and tags, matches transfers between your own accounts, and shows where the money went: a dashboard, monthly charts, account balances over time and a searchable transaction table that exports to Excel.

Everything stays on your computer, in one SQLite file. Statements have been tested with CIBC's QFX downloads; other banks' QFX/OFX files use the same format.

Installation

Python 3.10 or newer. With pipx (its own environment, recommended):

pipx install daftarche

or with pip, in an environment of your choice:

pip install daftarche

To start it with a double-click, run once:

daftarche install-app

This adds Daftarche to your Applications folder (macOS), the Start menu (Windows) or the applications menu (Linux), with its own icon. It starts the daftarche of the Python you ran the command with, and keeps working after updates.

To update, use Help → Check for Updates… in the app (it also checks quietly at start-up) or daftarche update in a terminal.

For development, install from a clone: git clone https://github.com/vahid-anari/daftarche.git, then pip install -e ".[dev]" in the folder; such a copy is updated with git pull.

Use

daftarche                     open the app
daftarche update              update from PyPI (asks first; --check only looks)
daftarche install-app         add the app to Applications / Start menu (--remove to undo)
daftarche --version

Import → Select QFX File… reads a statement downloaded from your bank's website; the account is recognised from the file, transactions already imported are skipped, and saved mappings fill in the categories. Edit what is left in the preview, then Import New. Transactions → Match Transfers pairs the two sides of a transfer between your accounts. Edit → Manage… edits the types, accounts, categories and tags; Edit → Settings… (⌘,) changes the font and colours. View → Uncategorized… (⌘U) and View → Unmatched Transfers… (⇧⌘U) show what is still left to sort, all time; double-click a line to see those transactions.

Your data

Nothing personal is stored in the program folder or in this repository. The app keeps its files in one folder:

~/Library/Application Support/Daftarche/      (macOS)
    daftarche.db                     all transactions, accounts, categories
    config.json                      theme and view settings
    backups/daftarche-last.db        written at every start
    backups/daftarche-YYYY-MM.db     first start of each month; the last 12 are kept

On Windows the folder is %APPDATA%\Daftarche, on Linux ~/.local/share/daftarche. Set DAFTARCHE_HOME to use another folder, for example a test copy. File → Back Up Database… and Restore Backup… save and load a copy of the database by hand. The monthly snapshots sit on the same disk as the database; Settings → Extra backup folder also copies them to a folder of your choice (iCloud Drive, an external disk), and Time Machine covers the data folder too. Help → Show Data Folder opens it.

Development

pip install -e ".[dev]"
pytest

The tests use only invented data (tests/data/sample.qfx) and a temporary data folder. python tools/make_icon.py redraws the icon and the splash image. Pushing a tag vX.Y.Z publishes a GitHub Release with that version's section of CHANGELOG.md; python -m build && twine upload dist/* puts it on PyPI.

License

MIT License. See LICENSE.

Author

Vahid Anari · GitHub · LinkedIn

Related projects: linecat · sciwidgets · Maxwell Bloch Studio

Metadata

Release files for daftarche 0.10.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for daftarche 0.10.0
File Size Uploaded
daftarche-0.10.0.tar.gz 488.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for daftarche 0.10.0
File Interpreter ABI Platform
daftarche-0.10.0-py3-none-any.whl Python 3 none any Details

Total release size: 966.8 kB

Release files / daftarche-0.10.0.tar.gz

Download URL daftarche-0.10.0.tar.gz
Size 488.4 kB
Tags Source
SHA-256 checksum
How to use checksums
d0a62d94c43ad106e69f6b9faac48a95ea8a3716a20a6a9f20ff50fe4cdaffd7
BLAKE2b-256 checksum
How to use checksums
f465ef4be2ecbdd0456f14bfc52a4f13a3cb9fd9ce3c1923385a2ec13f212dd2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / daftarche-0.10.0-py3-none-any.whl

Download URL daftarche-0.10.0-py3-none-any.whl
Size 478.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b5923e8368a48d6c5fe95bd2622ec78101bf205234df3415a584fa7fd8e9ea5c
BLAKE2b-256 checksum
How to use checksums
bad6074f6fbdf1bdc78284eab6ac8706ce8ce6980095357d2b07a6968365c468
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release history Release notifications | RSS feed

0.16.0

2 release files

0.15.2

2 release files

0.15.1

2 release files

0.15.0

2 release files

0.14.2

2 release files

0.14.1

2 release files

0.14.0

2 release files

0.13.2

2 release files

0.13.1

2 release files

0.13.0

2 release files

0.12.0

2 release files

0.11.0

2 release files

This release

0.10.0 This release

2 release files

0.9.0

2 release files

0.8.2

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.0

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page