C.R.E.A.M. - A personal finance app
PythonFlaskSQLitePDF Parsing
Cash Rules Everything Around Me — a personal finance management app for Swiss bank accounts and invoices.
Features
Bank imports
- Dedicated importers for BEKB, PostFinance and Revolut
- Recursive document discovery in
03-Bewegungen/(bank subfolders supported) - Multi-account support via IBAN-aware matching
- Duplicate protection with stable import hashes
- Repair and normalization CLI helpers for legacy PostFinance imports
Invoice imports
- Import from pending and paid folders
- Parse amount, due date, invoice date, and issuer from Swiss invoice/QR PDFs
- Manual correction directly in UI (title, amount, due date, status, category)
- Delete single invoice DB entries for clean re-import testing
- Remember title rules per issuer, including category defaults
Categories
- Assign categories to transactions and invoices in the UI
- Filter both dashboard tabs by category
- Manage categories in dedicated
Kategorientab:- create
- search/filter
- rename
- safe delete when unused
- hierarchy with parent/child paths (for example
Energie/Gas)
Search & Filter
- Advanced transaction search and filter view.
- Multi-Select account, category, year & amount
- Text filter for description, recipients with pattern matching
- Group result by account, category, description, recipients, year or month
Technical details
C.R.E.A.M. is a personal bookkeeping application build with Python and designed for Swiss residents who receive bank statements and invoices as PDF files. Instead of manually typing every transaction into a spreadsheet, you drop your PDF statements into designated folders and the app parses them automatically — extracting dates, amounts, recipients, and even QR-bill payment slips. You review and correct entries through a dark-mode dashboard running locally in your browser.