🗂️ Klasyfikacja i analiza

Automatyzacja analizy faktur z KSeF — co zautomatyzujesz, a czego nie

Redakcja Pianista 2026-04-22 Aktualizacja: 2026-04-22

Marketing wokół KSeF i księgowości obiecuje pełną automatyzację przez sztuczną inteligencję. Praktyka jest bardziej prozaiczna: około 80% pracy analitycznej na fakturach da się zautomatyzować prostymi regułami i słownikami, około 15% wymaga dopełnienia modelem językowym, a pozostałe 5% nie podda się żadnej maszynie. Poniżej rozbicie trzech warstw — co gdzie zastosować, co faktycznie oszczędza czas, a czego nie warto pokazywać w prezentacji zarządu jako „AI".

W skrócie

80% klasyfikacji faktur z KSeF to reguły i słowniki — szybkie, tanie, w pełni weryfikowalne (audit trail). AI dopełnia tam, gdzie reguł nie da się napisać: opisy nieustandaryzowane, nowi dostawcy, wykrywanie anomalii — zawsze jako sugestia, nigdy jako automat. Człowiek decyduje o 5%: interpretacja VAT, akceptacja kosztu, rozstrzyganie sporów. Reguły skalują się i są rozliczalne. AI jest warstwą dopełniającą, nie zastępczą.

Trzy warstwy automatyzacji — reguły, AI, człowiek

Każda praca analityczna na fakturze rozpada się na trzy typy decyzji, różne pod względem kosztu, skalowalności i weryfikowalności. Tabela poniżej pokazuje rozkład w typowym workflow firmy średniej wielkości (200-500 kontrahentów miesięcznie, 3-10 oddziałów, klasyfikacja rodzajowa + MPK + projekt).

Warstwa Co obsługuje % workflow Koszt Weryfikowalność
Reguły i słowniki NIP → oddział, regex na opisie, słowniki kontrahentów, walidacja strukturalna ~80% Niski (godziny pracy controllera) Pełna — każda decyzja ma powód
Model językowy (AI) Klasyfikacja opisów nieustandaryzowanych, sugestie dla nowych dostawców, detekcja anomalii ~15% Średni (moc obliczeniowa + dotrenowanie) Częściowa — sugestia z prawdopodobieństwem
Człowiek Interpretacja VAT, akceptacja kosztu, decyzje sporne, zatwierdzenia kierownika ~5% Wysoki (czas eksperta) Pełna — decyzja uzasadniona wiedzą i mandatem

Procentowe rozbicie nie jest uniwersalne — firma z bardzo zdyscyplinowanym zamawianiem (każdy zakup ma kod projektu wpisany w numer zamówienia) może mieć 90% obsługiwane regułami. Firma o chaotycznym procesie zakupowym, dużej rotacji dostawców, opisach typu „usługa" bez kontekstu — może spaść do 60% reguł i potrzebować szerszej warstwy AI. Proporcje są punktem wyjścia, nie sztywnym prawem.

Co dobrze robią reguły

Reguła to deterministyczna funkcja: wejście, warunek, wyjście. „Jeśli NIP sprzedawcy = 5252344078, przypisz oddział Warszawa". Reguła jest szybka, przewidywalna, testowalna i — co najważniejsze w controllingu — audytowalna. W przypadku pytania księgowej lub biegłego „dlaczego ta faktura trafiła na MPK 50101?" odpowiedź brzmi: „bo reguła nr 47 przypisuje dostawców energii do oddziału X, a ten dostawca ma NIP zmapowany do X". Kontrola kończy się tam.

Typowe obszary, w których reguły obsługują większość faktur:

  • Słownik kontrahentów — mapowanie NIP → oddział, NIP → typ kosztu, NIP → MPK. Raz zmapowany dostawca klasyfikuje się sam setki razy w kolejnych miesiącach. W firmie z 200 kontrahentami 50 największych pokrywa zwykle 80% faktur miesięcznie.
  • Regex na polu opis i numer zamówienia — kody projektów (np. PROJ-\d4), numery zleceń produkcyjnych, oznaczenia oddziałów (np. KRK-, WAW-). Wymaga dyscypliny zamawiania, ale gdy firma ją wprowadzi, klasyfikacja projektowa staje się automatyczna. Więcej w klasyfikacji faktur po oddziałach.
  • Walidacja strukturalna — sprawdzenie zgodności FA(3) z XSD, suma VAT = suma VAT skumulowana, pola obowiązkowe dla trybu offline24 (ID faktury, hash). Błędne faktury są zatrzymywane zanim trafią do workflow.
  • Walidacja biznesowa — kwota w tolerancji dla danego dostawcy, sprawdzenie terminu płatności wobec umowy, rozpoznanie faktury pro forma vs ostatecznej.
  • Wykrywanie duplikatów — kombinacja NIP sprzedawcy, numeru faktury, kwoty i daty. KSeF eliminuje część duplikatów na poziomie rządowym (jedna faktura, jeden NrKSeF), ale pozostają przypadki z korektami i duplikatami przed wystawieniem w KSeF.
  • Przypisywanie typu kosztu (konto zespołu 4) — na podstawie dostawcy i słów kluczowych w opisie. Faktura od biura księgowego idzie na 402 (usługi obce), faktura od hurtowni materiałów na 401 (zużycie materiałów). Więcej o mechanice w automatycznej kategoryzacji faktur.

Przewaga reguł nad AI w tych obszarach to nie tylko koszt i szybkość, ale przede wszystkim pełny ślad audytowy. Każda decyzja ma powód, który można wskazać księgowej, biegłemu rewidentowi, audytorowi wewnętrznemu albo kontroli skarbowej. „Bo tak zdecydował model" nie jest akceptowalnym wyjaśnieniem w rozmowie z urzędem skarbowym — „bo reguła X została zdefiniowana przez controllera Y dnia Z, a jej logika to mapowanie NIP na oddział" — jest.

Gdzie reguły przestają wystarczać

Reguły radzą sobie doskonale z ustrukturyzowanym portfelem dostawców i zdyscyplinowanym procesem zakupowym. Przestają wystarczać, gdy pojawia się niestrukturalny szum. Typowe przypadki:

  • Dostawca jednorazowy bez historii — firma dostaje fakturę od nowego kontrahenta, który nie jest jeszcze w słowniku. Nie ma wzorca, na którym reguła mogłaby się oprzeć. Klasyfikacja wymaga albo decyzji człowieka, albo sugestii opartej na podobieństwie do znanych dostawców.
  • Opis pozycji nieustandaryzowany — kontrahent wpisuje „Usługa IT", „Konsultacje", „Prace naprawcze" bez kodu projektu, bez kontekstu, bez oznaczenia oddziału. Regex nic nie wychwyci, słownik nie pomoże, bo ten sam dostawca świadczy różne usługi różnym częściom firmy.
  • Przypisanie do wielu wymiarów jednocześnie — faktura od dostawcy, który jednocześnie dotyczy kilku oddziałów (usługa centrali) albo kilku projektów (licencja na oprogramowanie używane w całej firmie). Reguła musi wybrać jeden wymiar — algorytm podziału kosztu wymaga dodatkowej decyzji.
  • Skalowanie do firm z 500+ różnymi kontrahentami miesięcznie — ręczne mapowanie każdego dostawcy w słowniku staje się kosztowne. Przy dużej rotacji (nowi dostawcy co miesiąc) słownik przestaje nadążać.
  • Faktury z rzadkich branż lub z oznaczeniami nieustandaryzowanymi — branże o niszowym słownictwie (medycyna, farmacja, budownictwo specjalistyczne) mają opisy faktur, których generyczne reguły nie rozpoznają.

W tych obszarach reguły się nie mylą — one po prostu nie istnieją. Nie da się napisać regexu, który zamieni „Usługa IT 12 000 zł" na „projekt X, oddział Y, typ kosztu Z" bez dodatkowej wiedzy kontekstowej. Tu wchodzi druga warstwa.

Gdzie model językowy dodaje wartość

Model językowy uruchomiony lokalnie nadaje się do sytuacji, w których reguła byłaby niemożliwa do spisania, ale istnieje wzorzec, który da się wyłowić z historii firmy. Konkretne zastosowania:

  • Klasyfikacja opisów nieustandaryzowanych — model trenowany na historii klasyfikacji firmy rozpoznaje, że „Konsultacje" od konkretnego dostawcy dotyczą zwykle projektu X, bo tak było w 15 poprzednich fakturach. Wynik to sugestia z prawdopodobieństwem, nie pewność.
  • Rozpoznawanie kontekstu klienta — faktura dotyczy klienta X, choć klient X nie pojawia się w polach FA(3). Model wychwytuje podobieństwo opisu do opisów historycznie przypisanych do klienta X.
  • Sugestia oddziału dla nowego dostawcy — na podstawie nazwy, adresu, branży, kwoty i kontekstu model proponuje oddział przypominający profil klasyfikacji podobnych dostawców.
  • Detekcja anomalii — kwota znacznie odbiegająca od typowej dla tego kontrahenta, koszt w nietypowej kategorii (dostawca usług IT wysyła fakturę za materiały budowlane), faktura w nietypowym terminie. Model sygnalizuje, człowiek rozstrzyga.

Ale każde z tych zastosowań ma zastrzeżenia, których warto nie omijać w prezentacji:

  • Model daje sugestię z prawdopodobieństwem, nie pewność — w każdym przypadku niezbędny jest human-in-the-loop, czyli akceptacja przez człowieka. W Pianiście klasyfikacja modelem poniżej progu pewności (domyślnie 80%) trafia do kolejki manualnej akceptacji.
  • Nie nadaje się do decyzji podatkowych — interpretacja, czy dana faktura korzysta z odwrotnego obciążenia, czy zakupiony samochód to leasing operacyjny czy finansowy, czy usługa jest zwolniona z VAT — to decyzje prawne, których model nie jest uprawniony podejmować. Wymagają wiedzy podatkowej i mandatu zawodowego.
  • Brak śladu audytowego w klasycznym sensie — na pytanie „dlaczego ta faktura została przypisana tak?" odpowiedź „bo model ocenił podobieństwo do historycznych wzorców jako 87%" jest trudniejsza do obrony przed kontrolą niż „bo reguła X przypisuje NIP do oddziału Y". Log modelu można zachować, ale interpretacja decyzji jest probabilistyczna.
  • Halucynacje — model może zasugerować przypisanie do oddziału, który nie istnieje w strukturze firmy, albo do projektu zakończonego kilka miesięcy wcześniej. Warstwa walidacji (dopuszczalne wartości) musi siedzieć na wyjściu modelu, nie wewnątrz modelu.
  • Wymaga danych treningowych — model sensownie klasyfikuje po 6-12 miesiącach historii firmy. Nowa firma bez historii dostaje generyczne sugestie, nie dopasowane do specyfiki.

Pozycjonowanie modelu jako warstwy dopełniającej, nie zastępczej, jest kluczowe. Konkurenci, którzy mówią „AI zastąpi księgowość" operują na poziomie marketingu, nie praktyki. Więcej o tym, co AI w księgowości rzeczywiście robi, a czego nie — w artykule AI w księgowości: co działa, a co nie.

Czego nie zautomatyzujesz ani regułami, ani AI

Niektóre decyzje na fakturze wymagają mandatu ludzkiego, którego nie da się przekazać maszynie. Nie dlatego, że technologia jest słaba, ale dlatego że decyzja ma charakter prawny, akceptacyjny lub negocjacyjny, a nie klasyfikacyjny. Przykłady:

  • Interpretacja prawa podatkowego — VAT odwrotne obciążenie, odliczenie przy leasingu operacyjnym vs finansowym, zwolnienia przedmiotowe, stawka VAT dla usługi mieszanej, kwalifikacja wydatku jako koszt uzyskania przychodu. To decyzje wymagające wiedzy podatkowej i odpowiedzialności zawodowej księgowej lub doradcy podatkowego.
  • Akceptacja kosztu — podpis kierownika jednostki albo zatwierdzenie przez osobę uprawnioną to akt prawny, nie klasyfikacja techniczna. Maszyna może przygotować dokument do akceptacji, ale akceptację dokonuje człowiek.
  • Rozstrzyganie sporów z dostawcą — faktura zawiera błędną kwotę, dostawa była niepełna, usługa została wykonana wadliwie. Decyzja o przyjęciu, odrzuceniu, żądaniu korekty czy reklamacji wymaga negocjacji biznesowej, nie klasyfikacji.
  • Decyzje strategiczne — czy kontynuować współpracę z kontrahentem X, czy wynegocjować lepsze warunki, czy zmienić dostawcę. To zakres zarządu i menedżerów operacyjnych, nie systemu klasyfikacji.

Te 5% workflow zajmuje często najwięcej czasu w skali miesiąca — bo są to właśnie decyzje wymagające namysłu. Automatyzacja reguł i AI uwalnia czas controllera i księgowej na te właśnie decyzje, zamiast wypełniać ich dni klikaniem przy klasyfikacji rutynowej.

Jak to poskładać w workflow

Architektura produkcyjna w Pianiście wygląda tak. Faktura pobrana z KSeF trafia najpierw do warstwy reguł. Jeśli NIP dostawcy jest w słowniku i reguła przypisuje oddział, typ kosztu i MPK jednoznacznie — klasyfikacja kończy się tu. Jeśli reguły nie rozstrzygają (nowy dostawca, nietypowy opis), faktura trafia do warstwy modelu językowego, który proponuje klasyfikację z prawdopodobieństwem. Propozycja z pewnością powyżej progu (domyślnie 80%) trafia do kolejki akceptacji controllera, propozycja poniżej progu — do kolejki decyzji ręcznej.

Kluczowe właściwości tej architektury:

  • Lokalnie, bez chmury — pobrane faktury, reguły, słowniki i model działają na stacji roboczej lub serwerze firmy. Dane nie wychodzą, co przy wrażliwych informacjach o strukturze kosztów (marże, koszty kluczowych umów, profile klientów) jest istotne dla działów prawnych i bezpieczeństwa.
  • Eksport do FK dopiero po akceptacji — system księgowy (Comarch, SAP, Oracle, IFS, programy FK) dostaje gotowy dekret tylko dla faktur zaakceptowanych. Sugestie AI nie trafiają automatycznie do księgowości — zawsze przez akceptację.
  • Każda zmiana reguły jest logowana — widać, kto i kiedy zmodyfikował mapowanie NIP, próg pewności albo regex. Można zrewidować i odtworzyć stan słowników na dowolny moment w przeszłości.
  • Każda decyzja AI jest logowana z uzasadnieniem — prawdopodobieństwo, cechy wejściowe modelu, zastosowane wzorce historyczne. Log dostępny do eksportu na potrzeby audytu.

Więcej o mechanice klasyfikacji warstwowej w artykule o MPK w KSeF. Hidden architekturę integracji z AI omawia też artykuł o Claude i KSeF MCP.

Praktyczna checklista wdrożenia

Jeśli firma zaczyna wdrażać automatyzację klasyfikacji faktur z KSeF, kolejność prac jest ważna. Zaczynanie od modelu AI przed zmapowaniem słowników to częsty błąd — model dostaje mało kontekstu i jakość jego sugestii jest gorsza niż mogłaby być. Kolejność, która się sprawdza:

  1. Zmapuj 50 największych kontrahentów — pokrywają zwykle 80% faktur miesięcznie. Mapowanie: NIP → oddział, NIP → typ kosztu, NIP → domyślne MPK. Controller lub księgowa, która zna portfel, robi to w 2-4 godziny.
  2. Zdefiniuj słownik oddziałów, MPK i typów kosztów — struktura organizacyjna firmy plus plan kont. Zwykle to już istnieje w systemie księgowym, wystarczy wyeksportować i wprowadzić do Pianisty.
  3. Napisz 3-5 regexów dla pola opis i numer zamówienia — jeśli firma ma konwencje kodowania projektów lub zleceń (np. PROJ-2026-\d3), regex wyławia je automatycznie. Jeśli firma nie ma konwencji — można ją wprowadzić, ale wymaga to dyscypliny zamawiania.
  4. Uruchom AI jako sugestię, nie automat — z progiem pewności 80% i human-in-the-loop dla wszystkiego poniżej. Przez pierwszy miesiąc obserwuj, które propozycje są akceptowane, a które korygowane — pomoże to dopasować próg.
  5. Audytuj raz w miesiącu — ile faktur obsłużyły reguły, ile AI, ile trafiło do decyzji ręcznej. Jeśli udział decyzji ręcznych rośnie — poszerzaj słowniki. Jeśli akceptacja AI jest niska — zmodyfikuj progi i dopasuj trening.

Po 2-3 miesiącach pracy typowy rozkład wygląda jak w tabeli z początku artykułu: 80% reguły, 15% AI, 5% człowiek. Przedtem może być 50% reguły, 10% AI, 40% człowiek — to znak, że słowniki są niedokończone, nie że system nie działa.

Mit vs realia „AI-first accounting"

W materiałach marketingowych niektórych konkurentów pojawia się teza, że AI zautomatyzuje 100% księgowości. W praktyce żaden komercyjny produkt — ani Pianista, ani jakikolwiek inny — nie osiąga 100% automatyzacji bez ludzkiej weryfikacji. Powód jest strukturalny, nie technologiczny: decyzje podatkowe i akceptacyjne wymagają mandatu ludzkiego, którego regulator nie przekazuje maszynie.

Praktyczne pytanie do vendora, który obiecuje „AI-first accounting": jaki procent decyzji wymaga akceptacji człowieka? Jeśli odpowiedź brzmi „mniej niż 95% automatyzacji bez jakiejkolwiek akceptacji" — produkt albo nie jest gotowy do produkcji, albo pomija warstwę odpowiedzialności prawnej. Jeśli odpowiedź brzmi „AI proponuje, człowiek akceptuje" — to jest to samo, co oferuje każdy poważny system klasyfikacji, tylko z innym brandingiem.

Wniosek praktyczny: oceniaj narzędzie nie po liczbie wzmianek o AI, ale po jakości warstwy reguł (bo to tam jest 80% wartości) i po tym, jak dobrze integruje warstwę sugestii z akceptacją przez człowieka. To drugie rozstrzyga, czy system jest nadający się do audytu, czy tylko wygodny w prezentacji zarządowi.

Pytania i odpowiedzi

Czy reguły są wolniejsze niż AI?

Nie, są szybsze. Reguła typu "jeśli NIP kontrahenta = 5252344078, oddział = Warszawa Centrala" wykonuje się w mikrosekundach na milionach rekordów. Model językowy wymaga inferencji — ładowania kontekstu, przetwarzania tokenów, generowania odpowiedzi. Dla 1000 faktur miesięcznie różnica to kilka sekund vs kilka minut. Reguły są też tańsze obliczeniowo: nie potrzebują GPU, nie zużywają pamięci modelu, nie wymagają bibliotek ML. W praktyce 80% klasyfikacji w firmie o ustabilizowanym portfelu dostawców obsługują reguły, a AI uruchamia się tylko dla pozostałej części.

Czy AI w Pianiście działa offline?

Tak. Model językowy, jeśli użytkownik zdecyduje się włączyć tę warstwę, działa lokalnie na maszynie użytkownika. Nie ma połączenia z żadnym backendem, nie wysyła zapytań do chmury, nie korzysta z API zewnętrznego dostawcy. Dane faktur nie opuszczają stacji roboczej ani serwera firmy. To jest zgodne z pozycjonowaniem desktop-first: Pianista uruchamia się lokalnie, przetwarza faktury lokalnie, eksportuje dane do programu księgowego lub bazy danych firmy.

Czy Pianista uczy AI na moich danych?

Nie. Model uruchamiany w Pianiście został wytrenowany wcześniej na danych publicznych i działa statycznie — nie zbiera, nie wysyła i nie dotrenowuje się automatycznie na fakturach użytkownika. Jeśli firma chce dopasować model do swojej specyfiki (np. branżowego słownictwa), można to zrobić opcjonalnie — proces dotrenowania uruchamia się lokalnie, w pełni pod kontrolą użytkownika, bez transferu danych na zewnątrz. Domyślnie żadne uczenie na danych użytkownika nie występuje.

Ile czasu zajmuje zdefiniowanie 50 reguł?

Dla firmy z 200 kontrahentami i prostą strukturą organizacyjną (2-5 oddziałów, 10-20 typów kosztów) — 2-4 godziny z controllerem lub księgową, która zna portfel dostawców. Dla firmy z 500+ kontrahentami i złożoną strukturą MPK — 1-2 dni. Większość czasu zajmuje nie pisanie reguł, ale decyzja biznesowa: do którego MPK trafia dostawca X, czy dostawca Y obsługuje tylko oddział A czy też B. Same reguły (mapowanie NIP → oddział) wpisuje się w tabelę w kilka minut.

Czy można dodać własne reguły do Pianisty?

Tak. Pianista udostępnia interfejs konfiguracji słowników (kontrahenci, oddziały, MPK, typy kosztów) oraz regex dla pola opis faktury i numer zamówienia. Controller lub księgowa edytuje reguły bez konieczności programowania. Każda zmiana reguły jest logowana — widać, kto i kiedy zmodyfikował mapowanie, co umożliwia rewizję i audyt.

Co z interpretacją VAT przez AI?

Interpretacja VAT zawsze pozostaje po stronie człowieka — księgowej, doradcy podatkowego, biegłego rewidenta. Model językowy nie nadaje się do rozstrzygania, czy dana faktura korzysta z odwrotnego obciążenia, jaka jest właściwa stawka VAT dla usługi mieszanej, ani czy leasing to operacyjny czy finansowy. Pianista może zasygnalizować nietypową fakturę (anomalia kwoty, rzadki kontrahent), ale decyzja podatkowa pozostaje w kompetencji człowieka z właściwymi uprawnieniami.

Jak audytować decyzje AI?

Każda klasyfikacja sugerowana przez model zapisywana jest w logu z prawdopodobieństwem i uzasadnieniem (np. "oddział Kraków, bo kontrahent A świadczy usługi podobne do kontrahentów B i C przypisanych historycznie do Kraków — 82% pewności"). Dla klasyfikacji poniżej progu pewności (domyślnie 80%) wymagana jest ręczna akceptacja controllera. Log jest dostępny do eksportu, co pozwala na rewizję decyzji w kontroli, podczas audytu wewnętrznego lub przy rewizji przez biegłego rewidenta.

Dalej w temacie

Cztery artykuły, które warto przeczytać obok tego:

Źródła rządowe i techniczne: ksef.podatki.gov.pl — dokumentacja schematu FA(3) i API KSeF, podatki.gov.pl/ksef — komunikaty Ministerstwa Finansów, terminy wdrożenia, tryby awaryjne, gov.pl/web/finanse — portal MF z wytycznymi dla podatników i dokumentacją zmian w ustawie o VAT.

Setki faktur z KSeF, rozdzielone po oddziałach

Pianista pobiera faktury z KSeF i klasyfikuje je — po oddziałach, liniach biznesowych, typach kosztów. Lokalnie, bez chmury.

Umów 20-minutowe demo