End-to-end encrypted device sync
Your devices reconcile directly with each other — signed change log, CRDT merge, QR pairing with safety numbers, LAN-direct with a relay that only ever holds ciphertext. No account, no server.
Local-first · open source with ethical-use clauses
beatrax pulls your bank, credit card, PayPal and app-store subscriptions into a single view of the month — then resolves the chains between them, so you can see what actually paid for what.
No telemetry · no cloud account · no sync server you don't own
Everything below has already landed on the development line. What is left before v2.0 ships is the mobile client as a full sync peer, and getting it into the app stores.
Your devices reconcile directly with each other — signed change log, CRDT merge, QR pairing with safety numbers, LAN-direct with a relay that only ever holds ciphertext. No account, no server.
Assign every euro, roll balances over, move money between envelopes.
iOS and Android, each holding their own encrypted copy.
Code-signed builds for macOS and Windows.
An optional connector, off by default, with your own key.
Multi-condition rules that rename, categorise, tag and annotate on import.
Bring your budget across from YNAB, nYNAB or Actual.
Compose, save and pin your own reports.
Three promises
The database, the OAuth tokens, the cached receipts — all on your disk. No telemetry, no cloud sync, no account to create. When devices do sync, they sync directly to each other, end-to-end encrypted, through a relay that only ever holds ciphertext.
CAMT.053, MT940 and CSV from European banks, ICS credit-card PDFs, PayPal exports. No screen-scraping, no shared credentials. An optional open-banking connector exists, off by default, with your own API key.
A PayPal charge funded by your bank. A card purchase settled weeks later in one bulk SEPA debit. beatrax links both ends, so a transaction stops being a mystery line and starts being an answer.
The problem it kills
The bank shows a €225 card settlement. The card statement shows fifteen purchases. PayPal shows an order the bank calls a transfer. Every month you rebuild the same picture by hand, and every month you give up somewhere near the middle.
beatrax does the reconciliation once, then keeps doing it.
How it works
The setup wizard walks you through your bank, your credit card, PayPal and — if you want it — your email receipts. Every step is skippable and repeatable later.
It parses the format, fingerprints every row so re-importing the same file changes nothing, and resolves the counterparty behind each IBAN.
Unknown counterparties land in a keyboard-driven triage queue. Uncategorised rows land in an inbox. One keystroke each, and the rules ripple out to future imports.
Recurring charges are detected, drift is flagged, unusual charges surface, and the forecast projects your balance 30 to 365 days out.








What's inside
Every surface below is real — these are screenshots of the app running against a demo dataset, not mockups.
In, out and net for the period, with the alerts that need you first and the savings goals you're actually moving toward.
Search across all retained history, filter by date, account, amount or category, and recategorise inline. Flip to original currency to see what a charge really cost.
Every merchant, bank, person and self-account that has moved money, with twelve-month totals, monthly averages and a sparkline of recent activity.
PayPal funded by your bank, a card purchase settled weeks later in a bulk SEPA debit — beatrax links both ends and shows the fan-out.
Upcoming fixed payments laid out by day, each with a running projected balance so you can see a tight week before it arrives.
Compose a report from metric, grouping, period, currency mode and filters. Save the ones you keep asking; pin the three you want on the dashboard.
Assign every euro to a category, carry balances month to month, move money between envelopes, and decide up front what happens when one overspends.
A 30- to 365-day projection across every account, with what-if scenarios you can lay over the baseline to see a dip before it happens.
Set a target and a date; beatrax derives the finish date from your actual cash flow rather than wishful arithmetic.
Carve a real account into named virtual pots that always reconcile back — allocated plus unallocated equals the real balance, always.
Recurring charges found in your history, with the monthly total computed across currencies and every occurrence listed.
Mark rows cleared, enter the statement balance, and watch the difference converge — or get told exactly how far off it is.
Tag what's deductible against your country's deduction categories, then export a clean per-year CSV or PDF for your records.
When an approved subscription's latest charge moves outside your threshold, it lands here with prior and current amounts and the annualised impact.
Charges that deviate from your own baseline — large versus typical, a first-time merchant, a suspected duplicate — surfaced and dismissible.
A transaction from an IBAN beatrax has never seen lands here with its recent activity. Name it once and every transaction sharing that IBAN is labelled.
Anything that arrived without a category, in a keyboard-driven queue. Number keys assign, arrows move, Enter saves — and the rules ripple forward.
Payment reminders, shortfall warnings and over-budget nudges land in a deduplicated inbox with read state synced across your devices.
Pair by QR or word-code, verify by safety number, sync directly over the LAN. The relay fallback only ever holds ciphertext.
A PIN or your OS biometric, separate from account login, that re-locks on idle — and is what releases the at-rest encryption key.
Ingestion state, queue health, read-only SQL, logs, doctor checks and sync health — visible only when you turn developer mode on.
Privacy
beatrax has no backend. There is no account, no telemetry, no crash reporter phoning home, and no hosted copy of your ledger. The SQLite database lives in your application-support directory and is yours to back up, move or delete.
Devices pair by QR code or a spoken word-code and verify each other by safety number. They talk directly over your LAN when both are awake, and fall back to a relay that only ever stores ciphertext it cannot read.
Each device encrypts its own copy with a key derived from your passphrase and released only by the app-lock. Removing a device rotates the group key and re-wraps it to the devices you kept.
The connector is off by default and needs your own aggregator key. When on, your machine talks to the aggregator directly — no beatrax server sits in the middle, because there isn't one.
Install
macOS, Windows and Linux. Every release publishes SHA-256 checksums and a signed manifest, so you can verify exactly what you downloaded.
Every release publishes SHA-256 checksums and a signed manifest.
Every line of beatrax is public: read it, build it, modify it, fork it. The licence adds ethical-use clauses on top, which is the one thing that keeps it from being OSI-certified — the difference, and the reasoning, are written out in full.