A 100% free, open-source single-entry bookkeeping (maksuperusteinen yhdenkertainen kirjanpito) and invoicing suite built specifically for Finnish sole traders (toiminimiyrittรคjรคt / yksityiset elinkeinonharjoittajat).
Features โข Two-Tier Privacy โข Architecture Guide โข Design System (Apple HIG) โข 2026 Tax Engine โข Security Policy โข Contributing
Finland has over 240,000 registered sole traders. Most freelancers, IT consultants, and gig workers face a harsh dilemma:
| Model | Players | Cost | Trade-offs | Toiminimi Flow Advantage |
|---|---|---|---|---|
| Percentage Platforms | OP Kevytyrittรคjรค | 5% of turnover | Costs โฌ1,000โโฌ3,000+/year; locks you into one bank. | โฌ0/month. Keep 100% of what you bill; use any bank. |
| SaaS Light Accounting | UKKO Toiminimi, Holvi Zen | โฌ15 โ โฌ95 / month | Hidden fees for mileage logs and depreciation. | 100% Free & Open Source. No monthly subscriptions. |
| Accounting Agencies | Tilitoimistot | โฌ100 โ โฌ250 / month | Overkill for consultants with 5โ30 monthly transactions. | Guided, self-serve single-entry cash-basis ledger. |
| DIY Spreadsheets | Excel / Google Sheets | Free | Anxiety over OmaVero box numbers and 5% tax deduction. | Spreadsheet-level privacy with accountant-level tax guidance. |
Toiminimi Flow is designed with a strict privacy-first, zero-knowledge philosophy:
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ TOIMINIMI FLOW SUITE โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โผ โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Tier 1: Instant Local Mode (Unregistered) โ โ Tier 2: Registered Cloud Sync (Firebase) โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ โข Zero signup or login required โ โ โข Google & Apple Sign-In ONLY โ
โ โข Runs 100% on-device in browser storage โ โ โข Firebase Authentication backend โ
โ โข No backend servers or user tracking โ โ โข Cloud receipt archival (Drive/iCloud/GCS) โ
โ โข Receipts stored via Link / File Path โ โ โข Seamless cross-device encrypted sync โ
โ โข Complete single-entry bookkeeping & PDF โ โ โข Zero cloud lock-in: user owns their data โ
โ โข Form 5 & VAT OmaVero 1-click helpers โ โ โข Total privacy: only Auth ID is preserved โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
- Start Immediately: No account creation or password required. Open the web app and begin invoicing and tracking deductions right away.
- On-Device Storage: Data stays entirely on your device (
localStorage/ cache). - Zero-Storage Receipt References & 1-Click Local Folder Access: Because browser
localStoragehas a ~5MB quota, receipts are never stored as bloated Base64 strings (0 bytes binary). Instead, connect your local receipt folder once via the W3C File System Access API to open local PDFs/images in 1 click, or reference external URLs (Google Drive, iCloud, Dropbox, OneDrive) with zero quota limitations.
- Minimalist Auth: Strictly Google OAuth and Apple Sign-In (no custom password databases or email collection).
- Personal Cloud Storage: Receipts upload directly to personal cloud storage (Google Drive, iCloud, or Firebase Storage).
- Encrypted Sync: Seamless multi-device synchronization with end-to-end user data ownership.
- Finnish Invoicing Engine:
- Automatic sequential invoice numbering.
- Domestic Finnish reference number (viitenumero) generator using the standard 7-3-1 modulo 10 checksum algorithm.
- SFS 4175 Finnish currency & number formatting (
18 255,00 โฌ,25,5 %). - Professional PDF invoice export with official bank transfer slip (tilisiirtolomake) at the bottom.
- The "Toiminimi Tax Safe" (Verosuoja):
- Real-time calculation of Safe-to-Withdraw Cash (Turvallinen nostovara).
- Automatically isolates deductible business expenses and reserves both VAT payable and personal income tax buffer, preventing unexpected year-end tax shocks (jรครคnnรถsvero / mรคtkyt).
- Form 5 Assistant (Lomake 5 -apuri):
- Automatically maps your transactions to official Finnish Tax Administration (Vero) Form 5 lines:
- Line 300: Net Turnover (Liikevaihto ALV 0%)
- Line 340: Grants & Subsidies (Saadut tuet ja avustukset, Starttiraha)
- Line 350: Materials & Supplies (Aineet ja tarvikkeet)
- Line 374: Operating Expenses (Muut vรคhennyskelpoiset kulut, including payment gateway fees)
- Line 378: Additional Deductions (Lisรคvรคhennykset - Mileage & Home Office)
- Line 380: 5% Entrepreneur Relief (Yrittรคjรคvรคhennys) automatically deducted from positive business profit!
- 1-click clipboard copy buttons with Finnish comma decimal notation for pasting directly into MyTax (OmaVero).
- Automatically maps your transactions to official Finnish Tax Administration (Vero) Form 5 lines:
- Driver's Log (Ajopรคivรคkirja):
- Log business travel in personal vehicles (date, route, kilometers, purpose, passengers).
- Automatically computes Form 5 Line 378 deductions using statutory 2026 rates (โฌ0.55 / km + โฌ0.04 / passenger).
- Home Office Deduction (Tyรถhuonevรคhennys):
- Toggle between statutory standard deduction tiers (Tier 1: โฌ980 for >50% remote work; Tier 2: โฌ490 for 25โ50%; Tier 3: โฌ245 for occasional) or actual expenses.
- Merchant & POS Settlements:
- Record payouts from card terminals and payment gateways (Zettle, SumUp, Stripe, Wolt, Foodora) tracking gross sales and deductible commission fees.
- Tax Calendar Sync (.ics):
- Computes statutory deadlines for VAT, Form 5, prepayment tax (ennakkovero), and additional prepayment (lisรคennakko).
- Export standard RFC 5545
.icsiCalendar files with built-in alarms (7 days and 2 days before) for Google Calendar, Apple Calendar, and Outlook.
- Apple HIG & Cross-OS Ergonomics:
- Touch-friendly 44ร44px minimum targets, spring drag gestures, and pull-to-refresh with subtle haptic vibration.
- Mobile CSS scroll-snap horizontal carousel with active dot indicators for top cashflow & tax metrics.
- Responsive table-to-card reflow preventing horizontal overflow on phones and tablets.
- Input auto-zoom prevention (16px touch scale) on iOS Safari.
- Progressive Web App (PWA) Offline Architecture:
- Installable on iOS (Safari Home Screen), Android (Chrome), Windows, and macOS.
- Service worker caching (
public/sw.js) guarantees 100% offline functionality without internet connectivity.
- Git-Like Ledger Snapshot, Version History & Multi-Device Smart Merge:
- Global Header Quick-Save Trigger: Dynamic header pill displays unsaved mutations counter (
Save Snapshot ยท 3) and switches to a calm status (โ Saved ยท #7f3a9c) when clean. - Git-Like Immutable Checkpoints: Snapshots are saved to an isolated IndexedDB store (
toiminimi_snapshots_db) using 0 bytes oflocalStoragequota. - Deterministic Diff Engine: Line-by-line visual inspector showing exact additions (
+), modifications (~), and deletions (-) across invoices, expenses, travel records, and business settings with financial KPI deltas. - Multi-Device Smart Merge Engine: Seamlessly combine changes across multiple PCs/laptops (e.g. desktop at office and laptop at home) using UUID matching and timestamp resolution with zero lost edits.
- Auto-Safety Restores: Generates an automatic safety snapshot prior to restoring older checkpoints or importing backup files so no work is ever lost.
- Zero-Storage Local Folder Sync: Connect a local folder once via W3C File System Access API to mirror
toiminimi_latest_backup.jsonautomatically.
- Global Header Quick-Save Trigger: Dynamic header pill displays unsaved mutations counter (
All tax parameters are centralized in services/veroTaxEngine.ts reflecting current Verohallinto statutes:
export const VERO_CONSTANTS = {
MILEAGE_RATE_2026: 0.55, // โฌ/km in 2026
PASSENGER_RATE_2026: 0.04, // โฌ/km per extra passenger
HOME_OFFICE_TIER_1: 980, // Over 50% home working days
HOME_OFFICE_TIER_2: 490, // 25% - 50% home working days
HOME_OFFICE_TIER_3: 245, // Occasional remote work
STANDARD_VAT_RATE: 25.5, // Standard VAT in Finland (since 1.9.2024)
REDUCED_VAT_RATE_2026: 13.5, // 2026 reduced VAT
VAT_EXEMPTION_THRESHOLD: 20000, // Small business threshold (โฌ20,000)
YEL_MANDATORY_THRESHOLD: 9423.09, // 2026 statutory minimum annual YEL income
UNEMPLOYMENT_SECURITY_THRESHOLD_2026: 15481,// 2026 Kela / Yrittรคjรคkassa threshold
ENTREPRENEURIAL_DEDUCTION_RATE: 0.05 // 5% Entrepreneur Relief (Yrittรคjรคvรคhennys)
};- Node.js (version 18 or higher; Node 20+ recommended)
npmorpnpm
# 1. Clone the repository
git clone https://github.com/alexysimus/ToiminimiFlow.git
cd ToiminimiFlow
# 2. Install dependencies
npm install
# 3. Start local development server
npm run devVisit http://localhost:3000 in your browser.
# Type check and build optimized bundle
npm run lint
npm run build
# Preview production build locally
npm run previewThe production output is placed in dist/ ready to be served by any static host.
Because Toiminimi Flow runs completely client-side in Tier 1, it costs โฌ0 / month to host on:
- Cloudflare Pages: Connect your GitHub repository; framework preset:
Vite; build command:npm run build; output directory:dist. - Vercel: Import repository; build command:
npm run build; output directory:dist. - GitHub Pages: Add a standard GitHub Action to deploy
dist/on push tomain.
- EPC SEPA QR Code: Render EPC SEPA QR codes on invoice slips to support mobile banking scans (OP, Nordea, S-Pankki) for Revolut Pro (
LT...) and Wise (BE...) accounts. - ISO 11649 RF Reference Generator: 1-click toggle between domestic Finnish viitenumero and international
RFreferences. - Periodic VAT Return Helper: Dedicated quarterly/monthly OmaVero ALV modal for Box 301, Box 307, and Box 308.
- Tier 2 Firebase Integration: Google & Apple Sign-In, and personal cloud storage sync for receipts.
- Asset Depreciation (Poistot): Tracking capital investments over โฌ1,200 depreciated at 25% reducing balance on Form 5 Line 372.
Contributions, bug reports, and feature requests are very welcome!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'feat: add amazing feature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Flow Toiminimi is an independent open-source software project and calculation aid. It is not affiliated with or endorsed by the Finnish Tax Administration (Verohallinto / Vero). This software is provided for informational and record-keeping purposes and does not constitute formal legal, accounting, or tax advice. Always review your final figures in MyTax (OmaVero) before official submission.
Distributed under the MIT License. See LICENSE for more information.