Skip to content
Client: Our own product, web app
  • Web app
  • Our own product
  • Financial workflow
Project status: Live

BankSync

Bank transactions move automatically; people handle only exceptions.

banksync.pxlPreview 1 / 4
Loading project preview… BankSync demo transaction list with dates, accounts, counterparties, amounts and sync or transfer status.
Each transaction shows whether it reached the budget, is a transfer or uses a learned payee rule. Sample data.
BankSync login screen with an orange introduction panel and email/password form.
Only registered users can access the app, with a password and two-factor authentication.
Demo payee-rule table showing match type, field, value, output name, use count and edit/delete buttons.
Rules come from budget corrections, with a visible usage count.
Demo sync history with time, bank, new transaction count and successful status.
Each sync run is recorded, making the last bank response and any failures clear.

Project facts

Project type
Web app with administration
Banky
Fio via API · Tatra banka via notifications
Destination
YNAB budget · Reckon accounting records
Live
Since April 2026
Technology
  • Python
  • FastAPI
  • SQLite
  • APScheduler
  • Next.js
  • TypeScript
  • Docker
  • Fio API
  • IMAP
  • YNAB API
  • Telegram

The brief

BankSync automatically moves Fio and Tatra banka transactions into a budget or accounting records. We built it; it has been live since April 2026. It recognises transfers, prevents duplicates, learns payee names from corrections and alerts on exceptions.

BankSync replaced an n8n workflow with over 25 steps and Google Sheets mapping. That setup was fragile and could not recognise transfers between own accounts. We built one service that can be tested, monitored and repaired, now running in production.

What we did

The most reliable source for each bank

Fio is read directly through its API. Tatra banka's API does not expose credit cards, so the app processes its email notifications. We tried and removed a second Fio source because duplicate paths would add more errors than they solved.

A transfer between your accounts is not an expense

Transactions enter the budget immediately. When the matching transaction on another owned account is found, both entries are converted to one transfer. This gives immediate visibility with later correction.

Learns from corrections

Three quarters of Fio transactions lack a payee name. Once corrected in the budget, BankSync remembers the rule. Card merchant names are extracted from transaction descriptions, keeping the budget readable without manual edits.

Exceptions report themselves

Repeated messages and downloads never create duplicates. Sync failures trigger a phone alert. A two-factor-protected admin interface shows transactions, transfers, sync history and learned rules.

What does this mean for your project?

Perhaps you also have an automation that works until something changes: a chain of steps in a tool like n8n or Make, with a spreadsheet of rules on the side. BankSync replaced a chain like that, more than 25 steps long, with a single service we can test, monitor and fix. It has run in production since April 2026: it moves bank transactions into a budget or the accounting records, never records anything twice and sends a phone alert when a sync fails. If your payments, orders or invoices depend on a similarly fragile chain, it can be replaced with one tool that is clear from day one about what to do with an exception and who gets told.

Need something similar?

Tell us about your project in a few sentences. We get back to you with a suggested next step.

Write to us
Pexelo ecosystem

Need project management as well?

If your project affects processes, teams or a larger transformation, the main Pexelo website covers PM and PMO services with references from larger deployments.