For German page click here.
To all privacy enthusiasts:
I’ve written a lightweight software to analyze your account transactions without being bound to the service of one bank or having to rely on any of the big players. Naturally this comes with a small downside regarding the inconvenience of having to manually import the account data.
If you’re interested in using the program, fell free to download the executeable file (Windows or Mac) or run the source code in a python environment:
Download KYSA
Notes on usage:
- Extract the downloaded zip-file
- Only on Windows: Install KYSA to a location of your choice and start the program after successful installation
- Only on Mac: The KYSA.app file inside the unzipped folder is not verified by Apple, which is why a „corrupted file“ error message is displayed.
- After unpacking, the first start of the *.app file has to be initiated via the terminal in the unpacked folder with the command „xattr -cr KYSA.app“; if necessary, the file must be defined as executable beforehand with „chmod +x KYSA.app“ and executed with root privileges („sudo xattr -cr KYSA.app“). Alternatively try executing „sudo open KYSA.app“ in your terminal
- For version 5.03.0 a packed *.dmg-version is offered for the first time.
- All future program starts can be done as usual with a double click on the icon.
- For Linux: (Ubuntu): The file must first be defined as executable: Either via the check mark in the file properties or via the terminal with „sudo chmod +x KYSA“. The program can then be executed in the terminal with „./KYSA“.
Windows (Windows 8.1 and newer):
macOS Monterey (12) and newer:
Alternatively try *.dmg file:
Ubuntu & derivatives:
Versions 5.xx come with an Ubuntu executable. Unfortunately, I have not yet managed to create an executable version for all Linux distributions (AppImage). But the source code works on all Linux distributions. For those of you wishing to contribute to this work in progress, see down below how. You’ll find parts of the source code under my codeberg-alias codade.
Please see also the notes on usage and privacy further below.
Using KYSA:
You have to export your account transactions to a csv-file so that it can be read-in with KYSA. From version 4.04. on the import of xml-files complying to the SEPA standard (ISO 20022) is also supported. Currently only csv-files of german accounts are supported, but I hope to integrate further accounts in the near future (see more below).
KYSA analyzes the transactions and sorts them into categories based on the entries defined by the user. KYSA is shipped with some categories already pre-defined. You can stick to them, alter the names and dependencies or add new categories.
Moreover, KYSA offers the option to extract all transactions associated with vacations to a separate file. Furthermore you can let KYSA round every payment to the next full amount and extract that sum of roundings (called „roundies“). Last but not least it is possible to link your cash withdrawals in your account transactions to your manually recorded cash payments. For this to work you need to record your cash payments in the „cashbook“-Excel file which is provided within the download zip-file. After importing this excel file KYSA matches all entries to the data records which were already processed. This analysis step can help you to get a more realistic overview of the amounts spent in each category (cash and card payments).
The results of KYSA’s analytical steps are returned as Excel-File (opt-in), which you then can use for further calculations. Moreover KYSA provides a set of diagrams (e.g. Boxplot, Bar and Pie Charts) to help you understand your spendings at a quick glance. Diagrams are saved as pictures (png-files), so you can easily access them on multiple platforms without starting KYSA again.
Since the versions 4+, a locally hosted dashboard is also part of KYSA’s functionality. There, the data can be dynamically displayed as pie charts or bar charts and two different time periods of one data set can be compared with each other.
Starting with version 5.01, the whole data management runs via a completely encrypted SQLite database (SQLCipher). Main categories can now additionally be coded as cost or income categories.
Version 5.03 is the first version that comes with an auto-updater. The code is now also optimized for Python3.10. This ensures the future development capability. An overview of all changes (changelog) can be found here or in the program.
Below you find some screenshots of the User Interface and resulting diagrams (without values and category names):
Screenshots Version 5:
Main program:



Dashboard:



Outputted charts:



(with breakdown if applicable)

Support KYSA
You can support KYSA in three ways:
- Help me with the development of the program either through contributions to the code or through deploying the source code as executeable file for other platforms. Since there is always room for improvement in terms of both user experience and the categorization process, I’m looking forward to every support. The source code is available at codeberg.org.
- You can also support the project by mailing me a csv-file of your bank account, in case it is not supported yet. Please be aware that you have to delete all you personal information (account id, name, transactions…) before uploading. Make sure that empty rows at the beginning of the file are not deleted and let me know whether these exist or not. Please also enure that all header columns are kept and let me know which character encoding set is used within the csv.
- If you encounter any misbehaviour or bug, please open an issue at the codeberg repository explaining the problem and which OS you’re using.
- You can donate me a coffee via Liberapay.
Thanks for your feedback and support!
Note on usage
Currently only *.csv exports of the following german bank accounts are supported:
- Apobank (current account)
- C24 (current account)
- comdirect (current account & credit card)
- Commerzbank (current account)
- Consorsbank (current account)
- DKB (current account & credit card)
- Deutsche Bank (current account)
- Fidorbank (current account)
- Fyrst Business (current account)
- Genossenschaftsbank (current account)
- Hypovereinsbank (current account)
- ING (current account)
- MLP Bank (current account) (not validated with real data)
- N26 (current account)
- Norisbank (current account)
- Postbank (current account)
- Sparkasse (current account) (csv-MT940 format)
- Teo (current accoutn)
- Triodos Bank (current account)
- Volksbank (current account)
You can use KYSA for free. I do not assume any liability for results and/or possible problems or data loss that may occur during use. The software is provided as is; warranty claims are excluded. The provisions of the attached software license apply.
More information on the program and license conditions can be found here: KYSA Documentation / KYSA License.
Installation
Windows:
The windows version is provided as zip-file. After extraction you can execute the installer, which leads you through the installation.
Please be aware that the Windows Security Center may display a security alert, as the folder was downloaded via the web and is not registered with Windows. In that case you have to grant an exceptional permission to execute the file.
Mac:
The KYSA.app file is not verified by Apple and must therefore be opened with the Ctrl-key pressed. For beta-versions please execute KYSA.exe from within the folder.
Linux:
Currently only Ubuntu is supported, but hopefully this will change in the future. To use KYSA you have to enable executing the KYSA.exe as program. Then please open the folder where you unzipped the downloaded file via the Terminal and start the program with executing „./KYSA_vXXX“
Privacy Notice
KYSA was developed to help you analyze your transactions without spying on you. The program doesn’t collect any information about you nor your payments. An internet connection is only needed to download the program or to run the account type updater. The categorization works via the manually assigned categories and search strings, which ensures that no connection to a server is needed.