F
SaaS PlatformMaintained

FinIQ

Your money. All banks. One truth.

Built for family businesses juggling UK and Ukrainian accounts. FinIQ pulls transactions from 5 banks, converts 3 currencies, and finally answers "where did the money go?"

6 months
1 people
Architect & Developer
IC Studio

Key Metrics

5
Banks Connected
3
Currencies
3
Languages
50+
Categories

The Problem

When your business spans two countries, you get invoices in USD, expenses in GBP, and supplier payments in UAH. Excel can't keep up. Xero doesn't understand Ukrainian banks. QuickBooks isn't built for this.

The Solution

A financial ERP that speaks Open Banking. Connect Monzo with OAuth. Sync Monobank with a token. Import PrivatBank CSVs. Everything converts to your base currency automatically. Budgets track spending across all accounts.

Key Features

True Multi-Bank Sync

Monzo, Revolut, Monobank, PrivatBank—OAuth where available, smart import where not.

Real-Time FX Rates

Transactions convert at historical rates. Today's balance uses live rates. No manual lookups.

Auto-Categorization

ML model learns your spending patterns. "Uber" goes to Transport. Always.

Budget Wizard

Set monthly limits by category. Get alerts at 80%. See trends over time.

Multi-User Access

Accountant sees reports. Business owner sees everything. Configurable per-user.

Three Languages

English, Russian, Ukrainian. Switch anytime. Because family businesses are multilingual.

Before & After

Monthly Reconciliation
Before
8 hours
After
15 min
-97%
Tax Prep Time
Before
2 weeks
After
2 days
-86%
Missing Transactions
Before
~5%
After
0%
-100%

Technology Stack

Frontend

React 19TypeScriptInertia.jsTailwind CSSRecharts

Backend

Laravel 12PHP 8.2

Database

PostgreSQL

Integrations

Monzo Open BankingMonobank APIPrivatBank APIRevolut

Technical Highlights

Open Banking Done Right

90-day transaction history from Monzo with Strong Customer Authentication support.

Monobank FOP Integration

Special handling for Ukrainian self-employed accounts (Фізична особа-підприємець).

Smart Duplicate Detection

Same transaction from bank statement and card notification? Merged automatically.

Offline-First Categories

Category assignments sync later. App stays fast even on flaky connections.

Challenges Overcome

Monzo's 90-day history limit

Background job syncs daily. Historical data preserved in PostgreSQL forever.

Ukrainian bank API instability

Retry logic with exponential backoff. Fallback to CSV import when APIs fail.

Lessons Learned

  • Open Banking is powerful but banks implement it differently. Abstract early.
  • Currency conversion is harder than it sounds. Edge cases everywhere.
  • Family business software needs to be multilingual from day one. Retrofitting is painful.
#FinTech#Open Banking#Multi-currency#Laravel#Family Business#ERP