W przygotowaniuIn preparation
v1.2.7
Wkrótce (jeszcze nie w buildzie)Soon (not built yet)

NaprawioneFixed

  • iOS: dostęp do funkcji Premium — na iPhone funkcje Premium (połączenie banku, CIS, raporty i inne) są teraz odblokowane dla testerów, bo zakup Premium jest tymczasowo ukryty (wymóg Apple do czasu wdrożenia płatności przez App Store)
  • Bramka Premium — kliknięcie funkcji Premium otwiera ekran Premium (na Androidzie z opcją zakupu) zamiast pokazywać suchy komunikat "Premium subscription required" — bardziej intuicyjnie
  • iOS: access to Premium features — on iPhone, Premium features (bank connection, CIS, reports and more) are now unlocked for testers, since the Premium purchase is temporarily hidden (Apple requirement until App Store payments are implemented)
  • Premium gate — tapping a Premium feature now opens the Premium screen (with a purchase option on Android) instead of a bare "Premium subscription required" alert — more intuitive
Kod gotowyCode ready Wejdzie w kolejnym buildzieShips in the next build
Hotfix
v1.2.6 Najnowszy buildLatest build
21 lipca 202621 July 2026

NaprawioneFixed

  • Linki weryfikacyjne w mailach — nowy format odporny na uszkodzenia w transporcie poczty; linki potwierdzania emaila i resetu hasła działają niezawodnie w każdym kliencie pocztowym
  • Przycisk "Już potwierdziłem" — pokazuje wynik sprawdzenia (potwierdzone / jeszcze nie), zamiast nie dawać żadnej reakcji
  • iOS — zakup Premium ukryty do czasu wdrożenia płatności przez App Store (zgodność z wytycznymi Apple 3.1.1); pierwsza wersja iOS zatwierdzona przez App Review, beta dostępna w TestFlight
  • Verification links in emails — new format resistant to corruption in email transport; email confirmation and password reset links now work reliably in every mail client
  • "I confirmed it" button — now shows the check result (confirmed / not yet) instead of giving no feedback
  • iOS — Premium purchase hidden until App Store payments are implemented (Apple guideline 3.1.1 compliance); first iOS version approved by App Review, beta available on TestFlight
Build #12 versionCode 12 Internal Testing + TestFlight
Feature release
v1.2.5
15 lipca 202615 July 2026

Nowe funkcjeNew features

  • Samouczek krok po kroku — interaktywny przewodnik na 8 ekranach (Home, MTD, Skaner, Kalkulatory, Usługi, Konsultacje, Rezerwacje, Profil), 31 kroków w PL i EN. Powtórka: Profil → Samouczek
  • Weryfikacja emaila — po rejestracji przychodzi link weryfikacyjny; niepotwierdzone konta nie zalogują się ponownie (ochrona przed fałszywymi adresami). Baner w aplikacji z opcją "Wyślij ponownie"
  • Kilometrówka: ręczne dodawanie tras — formularz (dystans, skąd, dokąd, cel) z automatycznym przeliczaniem ulgi 45p/25p
  • Kalkulator VAT z wyborem stawki — 20% / 5% / 0%
  • Kalkulatory CGT i dywidend z wyborem progu podatnika — poprawne stawki wg progu Income Tax
  • Step-by-step tutorial — interactive guide across 8 screens (Home, MTD, Scanner, Calculators, Services, Consultations, Bookings, Profile), 31 steps in PL and EN. Replay: Profile → Tutorial
  • Email verification — a verification link is sent after registration; unconfirmed accounts cannot sign in again (protection against fake addresses). In-app banner with a "Resend" option
  • Mileage: manual trip entry — form (distance, from, to, purpose) with automatic 45p/25p allowance calculation
  • VAT calculator with rate selector — 20% / 5% / 0%
  • CGT and dividend calculators with taxpayer band selector — correct rates based on your Income Tax band

Naprawione bugi (audyt całej aplikacji — 30 znalezisk)Bug fixes (full app audit — 30 findings)

  • Kalkulator CGT — aktualne stawki 18%/24% (zamiast przestarzałej 20%)
  • Kalkulator dywidend — progi 8.75% / 33.75% / 39.35% zamiast płaskiej stawki
  • Polski przecinek w kalkulatorach — "1234,56" liczone poprawnie (wcześniej wynik ×100)
  • Rezerwacja o 9:00 — slot działał tylko dla godzin dwucyfrowych
  • Ochrona przed podwójną rezerwacją — zajęty termin zwraca czytelny komunikat
  • Start offline nie wylogowuje — profil z cache, tokeny czyszczone tylko przy realnym odrzuceniu
  • Status banku — wygasła zgoda Open Banking pokazywana jako "niepołączony" zamiast fałszywego "połączony"
  • Wyszukiwarka usług działa — szukanie po nazwie/opisie + filtry kategorii
  • Pusty raport zablokowany — bez banku i transakcji aplikacja prosi o połączenie banku zamiast wysyłać pusty PDF
  • Daty konsultacji — dynamiczny bieżący miesiąc (zamiast zaszytego "kwietnia 2026")
  • Rejestracja — walidacja hasła i UTR po polsku przed wysłaniem, język konta wg języka aplikacji, "Pomiń" zapamiętane na stałe
  • Minione rezerwacje — automatycznie przechodzą do "zakończonych"
  • Kilkanaście mniejszych poprawek: tłumaczenia PL/EN, £NaN w kalkulatorach, polskie znaki w powiadomieniach, mail potwierdzenia dla darmowych rezerwacji (PL+EN)
  • CGT calculator — current 18%/24% rates (instead of the outdated 20%)
  • Dividend calculator — 8.75% / 33.75% / 39.35% bands instead of a flat rate
  • Decimal comma in calculators — "1234,56" now calculated correctly (previously ×100 too high)
  • 9:00 booking slot — used to work only for two-digit hours
  • Double-booking protection — a taken slot returns a clear message
  • Offline start no longer logs you out — profile served from cache; tokens cleared only on a real rejection
  • Bank status — expired Open Banking consent shown as "not connected" instead of a false "connected"
  • Services search works — search by name/description + category filters
  • Empty report blocked — with no bank and no transactions the app asks you to connect a bank instead of sending an empty PDF
  • Consultation dates — dynamic current month (instead of a hardcoded "April 2026")
  • Registration — password and UTR validated client-side in your language, account language follows the app language, "Skip" remembered permanently
  • Past bookings — automatically move to "completed"
  • A dozen smaller fixes: PL/EN translations, £NaN in calculators, Polish characters in notifications, confirmation email for free bookings (PL+EN)
Build #11 versionCode 11 Internal Testing
Hotfix
v1.2.4
1 czerwca 20261 June 2026

Krytyczne poprawkiCritical fixes

  • Polskie znaki przywrócone w całej aplikacji (~1600 napraw) — błąd kodowania UTF-8 z poprzedniej wersji
  • Symbol £ przywrócony na ekranach TaxReserve, Invoice Generator, VAT Monitor, Calculator, CIS Refund
  • Kolory kategorii — tekst kategorii w liście transakcji teraz w brand color per IRIS bucket (Travel=niebieski, Cost of Goods=czerwony, Office=jasnoniebieski, Private Outcome=bursztyn)
  • Stabilność konstruktora Date — naprawione kolizje nazw zmiennych po wcześniejszym refactor'ze
  • Polish characters restored across the entire app (~1600 fixes) — UTF-8 encoding bug from the previous version
  • £ symbol restored on TaxReserve, Invoice Generator, VAT Monitor, Calculator and CIS Refund screens
  • Category colours — category labels in the transaction list now use brand colours per IRIS bucket (Travel=blue, Cost of Goods=red, Office=light blue, Private Outcome=amber)
  • Date constructor stability — fixed variable name collisions after an earlier refactor
Build #10 versionCode 10 Internal Testing
Feature release
v1.2.3
28 maja 202628 May 2026

Naprawione bugiBug fixes

  • Multi-account bank — Tide/inne banki z 2+ kontami: podłącza WSZYSTKIE konta (Main + Savings), nie tylko pierwsze
  • Pattern Builder — przycisk "Prywatne" działa, dodano "Zatwierdź X dla N tx" zamiast natychmiastowego apply
  • Wzorce kategoryzacji — usunięty blokujący alert po każdym sukcesie
  • Multi-account banking — Tide/other banks with 2+ accounts: connects ALL accounts (Main + Savings), not just the first one
  • Pattern Builder — "Personal" button works; added "Apply X to N tx" instead of an instant apply
  • Categorisation patterns — removed the blocking alert after every success

Nowe funkcjeNew features

  • Kolory kategorii w liście transakcji - szybka wizualna identyfikacja per IRIS bucket
  • Karta "Dokończ konfigurację" — prominentne CTA gdy bank/HMRC niepołączone
  • Smart auto-sync transakcji co 1h w tle (TrueLayer)
  • Raport XLSX z 3 zakładkami — SL (Sales Ledger), PL (Purchases Ledger), P&L (Summary)
  • Category colours in the transaction list - quick visual identification per IRIS bucket
  • "Finish setup" card — prominent CTA when bank/HMRC are not connected
  • Smart auto-sync of transactions every hour in the background (TrueLayer)
  • XLSX report with 3 sheets — SL (Sales Ledger), PL (Purchases Ledger), P&L (Summary)

UI/UX

  • Safe area — system buttons (Home/Back) nie nachodzą na content (22 ekrany)
  • Android nav bar — białe tło + ciemne ikony niezależnie od theme'u OS
  • KeyboardAvoidingView — klawiatura nie zasłania pól w Category Picker i Send Report
  • Safe area — system buttons (Home/Back) no longer overlap content (22 screens)
  • Android nav bar — white background + dark icons regardless of the OS theme
  • KeyboardAvoidingView — the keyboard no longer covers inputs in Category Picker and Send Report

BezpieczeństwoSecurity

  • Supabase RLS — Row-Level Security włączone na tabelach businesses, business_bank_accounts, user_categorization_rules, sa_settlements
  • Supabase RLS — Row-Level Security enabled on the businesses, business_bank_accounts, user_categorization_rules and sa_settlements tables
Build #9 versionCode 9 Google Play Internal Testing
Internal only
v1.2.2
19 maja 202619 May 2026

NaprawioneFixed

  • Tide sync 403 (UK.OBIE.Reauthenticate) — okno requestu zmienione z 90 na 88 dni (limit OBIE/PSD2 SCA-free)
  • Strona powrotu z banku — brandowana strona HTML zamiast surowego JSON, deep link optimaapp://banking
  • Disconnect single account — wymagany connection_id (wcześniej brak parametru kasował WSZYSTKIE konta)
  • Filtr okresu MTD Panel — wszystkie opcje w tym samym roku podatkowym; matematycznie miesiąc ⊆ kwartał ⊆ rok
  • Tide sync 403 (UK.OBIE.Reauthenticate) — request window changed from 90 to 88 days (OBIE/PSD2 SCA-free limit)
  • Bank return page — branded HTML page instead of raw JSON, deep link optimaapp://banking
  • Disconnect single accountconnection_id now required (previously a missing parameter removed ALL accounts)
  • MTD Panel period filter — all options within the same tax year; mathematically month ⊆ quarter ⊆ year

DodaneAdded

  • Bank account dropdown (modal bottom-sheet) zamiast chipów — czytelny selektor konta
  • Self Assessment Settlement — PDF + CSV + email do biura, multi-business support
  • Filtr per-account + miesięczny w endpointcie /banking/transactions
  • Bank account dropdown (modal bottom-sheet) instead of chips — a clear account selector
  • Self Assessment Settlement — PDF + CSV + email to the office, multi-business support
  • Per-account + monthly filter on the /banking/transactions endpoint
Backend only Nie wdrożona do Play StoreNot shipped to the Play Store
Feature release
v1.2.1
13 maja 202613 May 2026

NaprawioneFixed

  • Transaction duplication — 22 837 duplikatów usuniętych, dodany unique index uq_tx_dedup, dwustopniowy dedup (reference + business-key hash)
  • isInflow bugamount > 0 klasyfikował dodatnie expense jako income. Fix: transaction.type ma pierwszeństwo
  • Pagination w auto-kategoryzacji.range(0, BATCH-1) nigdy nie zwiększał offsetu, zatrzymywała się na pierwszej partii
  • Private Outcome — wycofany z totalExpenses w P&L (koszty prywatne nie obniżają taxable profit)
  • Transaction duplication — 22,837 duplicates removed, unique index uq_tx_dedup added, two-stage dedup (reference + business-key hash)
  • isInflow bugamount > 0 classified positive expenses as income. Fix: transaction.type takes precedence
  • Auto-categorisation pagination.range(0, BATCH-1) never advanced the offset, stopping at the first batch
  • Private Outcome — removed from totalExpenses in P&L (private costs do not reduce taxable profit)

DodaneAdded

  • CIS gross-up — przy oznaczeniu income tx jako CIS, reverse-calculate Gross z Net per cis_status (verified 20% / gross 0% / unverified 30%)
  • IRIS P&L 15 kategorii — sortowanie wg IRIS_CATEGORY_ORDER zamiast po kwocie
  • HMRC SA302 1:1 — Income Tax bands (tapered PA), Class 2 NIC reform (£0 dla profit ≥ £12,570), Class 4 NIC main + upper band
  • CIS gross-up — marking an income tx as CIS reverse-calculates Gross from Net per cis_status (verified 20% / gross 0% / unverified 30%)
  • IRIS P&L 15 categories — sorted by IRIS_CATEGORY_ORDER instead of amount
  • HMRC SA302 1:1 — Income Tax bands (tapered PA), Class 2 NIC reform (£0 for profit ≥ £12,570), Class 4 NIC main + upper band
Google Play Internal Testing
Pierwsza wersjaFirst release
v1.1.0
30 marca 202630 March 2026

Co zawieraWhat's included

  • 30+ ekranów z pełną lokalizacją PL/EN
  • Backend Node.js/Express na Contabo VPS, Docker, Nginx + Let's Encrypt
  • HMRC MTD ITSA sandbox — OAuth 2.0, kwartalne raportowanie
  • Open Banking TrueLayer — początkowo sandbox, później LIVE od 19 maja 2026
  • 5 kalkulatorów podatkowych UK 2025/26 — Income Tax + NI, VAT, Dividend, CGT, Mileage
  • Invoice Generator + bank matching + integracje (Xero, QuickBooks, Zoho, FreeAgent, Sage, FreshBooks)
  • Document scanner + OCR (Google Document AI)
  • Auto-kategoryzacja z pamięcią + business/personal toggle
  • Booking konsultacji z dynamicznym kalendarzem
  • 30+ screens with full PL/EN localisation
  • Node.js/Express backend on a Contabo VPS, Docker, Nginx + Let's Encrypt
  • HMRC MTD ITSA sandbox — OAuth 2.0, quarterly reporting
  • Open Banking TrueLayer — initially sandbox, LIVE since 19 May 2026
  • 5 UK tax calculators 2025/26 — Income Tax + NI, VAT, Dividend, CGT, Mileage
  • Invoice Generator + bank matching + integrations (Xero, QuickBooks, Zoho, FreeAgent, Sage, FreshBooks)
  • Document scanner + OCR (Google Document AI)
  • Auto-categorisation with memory + business/personal toggle
  • Consultation booking with a dynamic calendar
PRE-PRODUCTION Pierwsze opublikowanieFirst publication