Help
Support
Banky.cool is built and supported by one person. Write to support@banky.cool and you get a real answer, usually within a few days.
Never send your bank statements, exports or database file. They are not wanted and not needed to help you. Describe what happened, say which bank and which file format, and paste the error message with amounts and account numbers removed.
The iPhone beta
Banky.cool for iPhone is in the TestFlight beta. The public TestFlight link is coming soon. Until it is up, email support@banky.cool and you get an invite.
- Install Apple's free TestFlight app from the App Store.
- Open the invite link on the iPhone itself. TestFlight picks it up and installs Banky.cool.
- Launch it. With no database yet it starts empty and asks nothing: no account, no password.
- Import on the phone by sharing a PDF or camt.053 file into Banky.cool from Files or Mail, or sync an encrypted snapshot from your computer as described below.
Beta builds expire after 90 days and TestFlight prompts you to update. Feedback goes through TestFlight's built in Send Feedback, or by email.
Syncing from your computer
The command line tool writes an encrypted snapshot into a folder you choose, and the phone reads it from Banky/mirror in Files. The password is yours and never leaves your devices.
bank sync --dir /path/to/mirror --push-base
Copy the resulting base-*.sqlite.gz.enc into Banky/mirror on the iPhone, using Files, iCloud Drive or USB, reopen Banky.cool and enter the sync password.
The command line tool
Free, self contained, and the same engine the iPhone app runs. Download it here, then:
- Open Banky-CLI-macOS.dmg. A window appears with the
bankbinary and a bin shortcut. - Drag
bankonto thebinshortcut. That is the whole install: it copies one file into/usr/local/bin. Finder asks for your password, because that folder belongs to the system. - The first run is blocked by Gatekeeper, because this build is not notarised by Apple. Clear the quarantine flag once:
xattr -d com.apple.quarantine /usr/local/bin/bank - Check that it works:
bank help
If /usr/local/bin does not exist yet, create it with sudo mkdir -p /usr/local/bin. To uninstall, delete /usr/local/bin/bank and your data folder. There is no installer, no receipt and no background agent.
- Unzip Banky-CLI-windows-amd64.zip.
- Drag the Banky folder anywhere you keep programs. Your user folder is fine, no admin rights needed.
- SmartScreen warns about an unrecognised publisher, because this build is not code signed. Choose More info then Run anyway.
- Open a terminal in that folder and run
bank.exe help. Optionally add the folder to yourPATH.
To uninstall, delete the folder. Nothing is written to the registry.
- Unpack the archive:
tar xzf Banky-CLI-linux-amd64.tar.gz - Move the binary onto your
PATH:install -m 755 Banky/bank ~/.local/bin/bank - Check that it works:
bank help
To uninstall, delete the binary and your data folder.
Verifying your download
Every archive is listed in SHA256SUMS. Compare before you install:
shasum -a 256 Banky-CLI-macOS.dmg # macOS, Linux
certutil -hashfile Banky-CLI-windows-amd64.zip SHA256 # Windows
First run
- Download statements from your eBanking as usual. camt.053 XML is the most reliable, and PDF, CSV, MT940 and whole ZIP bundles all work.
- Import them. The format is detected from the content of the file, so names do not matter:
bank import ~/Downloads/statements.zip - Sort them into categories:
bank categorize - Open the interface, which runs on your machine only:
bank server # http://127.0.0.1:8787
Run bank help for the full command list. Every read command accepts --json, and --dry-run shows what an import would do without touching the database.
Requirements
- PDF statements need
pdftotextfrom Poppler on the desktop:brew install poppleron macOS,apt install poppler-utilson Debian and Ubuntu. Everything else needs nothing extra. On iPhone, PDFs are handled natively with no setup. - Photographed receipts are read with Apple's Vision framework, so that path is macOS and iOS only.
- An external AI model is optional. A tiny categoriser ships with Banky.cool and runs on your own machine. If you would rather use a bigger model, point it at a local or remote Ollama host.
Common questions
Which banks are supported?
Today PostFinance and UBS, including UBS credit cards and Depots. More banks are coming. Because camt.053 is a Swiss wide standard and the CSV engine understands German and English column names, many other banks import fine already. Try it with --dry-run and tell me what happens.
Can Banky.cool move money or make payments?
No. There is no payment code in it: it reads statements and writes to your own local database.
Why is the binary not signed or notarised?
Because this is a free beta from an independent developer, and signing certificates cost money every year on both platforms. The workarounds above are one time. If that trade off does not sit right with you, check the checksums first, and watch it with a firewall, which is a stronger check than a signature anyway.
Is the source available?
Not yet. The download is a compiled binary. That is exactly why the privacy claim is written to be tested rather than trusted: run a network monitor and watch it stay quiet.
I re-imported a file. Did I double my transactions?
No. Files and individual transactions are both fingerprinted, so a byte identical file is skipped outright and an overlapping statement period only adds what is genuinely new.
Where is my data?
In the data folder: ./data/ by default, or wherever you point --data or $BANK_DATA. One SQLite file plus archived source documents and snapshots. Back it up like any other folder, because nobody else has a copy.
How do I start over?
bank reset --yes wipes the data for a clean re-import. It keeps your category rules and snapshots the database first.
Reporting a problem
Email support@banky.cool with:
- What you ran or tapped, and what happened instead
- Platform and version.
bank helpprints the version, or check Settings on iPhone - The bank and file format involved, for example a PostFinance PDF statement
- The error message, with amounts, IBANs and names removed
For a parser bug the most useful thing is a synthetic file that reproduces it: same layout, invented numbers. Please do not send a real statement.
