Księgowa otwiera zdjęcie paragonu przesłane przez klienta i widzi rozmazaną cyfrę w kwocie brutto. AI, które przed chwilą odczytało dwadzieścia innych dokumentów bez problemu, na tym jednym też zwróci jakąś liczbę — pytanie brzmi, czy zaznaczy ją jako niepewną, czy poda z takim samym przekonaniem jak resztę. Od odpowiedzi na to pytanie zależy, czy mechanizmowi da się zaufać.
Jak w ogóle działa „czytanie” faktury przez AI
Model, który analizuje skan albo zdjęcie dokumentu, nie „rozumie” faktury tak jak księgowa czy księgowy. Rozpoznaje wzorce: układ tabeli, miejsce, w którym zwykle znajduje się kwota brutto, sposób zapisu NIP-u. Na tej podstawie wyodrębnia konkretne pola — sprzedawcę, nabywcę, datę wystawienia, kwoty netto i brutto, stawki VAT, pozycje na fakturze — i zwraca je jako uporządkowane dane, a nie jako obrazek.
Ważny szczegół, który często umyka w uproszczonych opisach: dobrze zaprojektowany mechanizm zwraca nie tylko wartości pól, ale też poziom pewności każdego odczytu. Data wystawienia odczytana z wyraźnego, wydrukowanego nagłówka ma inną „wagę” niż kwota dopisana odręcznie na marginesie — a to rozróżnienie jest kluczowe dla wszystkiego, co dzieje się dalej.
To wystarcza w zdecydowanej większości przypadków, bo faktury i paragony mają powtarzalną strukturę, a modele trenowane są na ogromnej liczbie realnych dokumentów. Problem zaczyna się tam, gdzie dokument odbiega od typowego wzorca albo gdzie sam skan utrudnia odczyt.
Gdzie ten mechanizm sprawdza się najlepiej
Zanim przejdziemy do błędów: większość codziennych przypadków działa dobrze. Standardowa faktura VAT wystawiona elektronicznie jako PDF, wyraźne zdjęcie paragonu w dobrym świetle, znany format dokumentu — to sytuacje, w których odczyt jest szybki i powtarzalny, bez potrzeby ingerencji człowieka. Większość dokumentów trafiających do księgowości to nie są trudne przypadki, tylko rutyna, którą da się bezpiecznie przyspieszyć.
Gdzie AI się myli
Nieczytelne skany i zdjęcia z telefonu
Paragon z drukarki termicznej wyblakły po kilku dniach w portfelu, zdjęcie zrobione pod kątem, w słabym świetle albo z odbiciem lampy na folii — to codzienność, nie wyjątek. W takich warunkach model może pomylić cyfrę, źle odczytać separator dziesiętny albo źle przypisać stawkę VAT, jeśli jest wydrukowana zbyt drobną czcionką.
Same skanery i telefony różnią się jakością zdjęcia, więc ten sam dokument sfotografowany dwa razy może dać dwa nieco inne odczyty. Paragony termiczne z czasem blakną fizycznie — to nie jest problem jakości zdjęcia, tylko stanu samego dokumentu, i żaden model tego nie odwróci.
Nietypowe formaty dokumentów
Faktury nie mają jednego, ustandaryzowanego wyglądu. Firma z jednej branży wystawia dokument w formie tabeli z dziesięcioma kolumnami, inna — jako prosty tekst z pozycjami wypisanymi jedna pod drugą. Dokumenty z zagranicy dochodzą do tego z inną walutą, innym układem daty i czasem innym językiem. Każdy z tych przypadków to inny „kształt” danych, na których model musi sobie poradzić bez gotowego wzorca.
Pozycje wieloznaczne
Najtrudniejsze bywają nie całe dokumenty, tylko pojedyncze wiersze. Faktura z kilkoma stawkami VAT na jednym dokumencie, rabat naniesiony ręcznie po wydrukowaniu, korekta zmieniająca kwotę już po fakcie, pozycja opisana na tyle ogólnie („usługa”, „towar różny”), że nie da się jej jednoznacznie przypisać do kategorii kosztowej — to sytuacje, w których nawet doświadczona osoba musiałaby dopytać wystawcę.
AI w takich miejscach nie zgaduje ostrożniej — zgaduje tak samo pewnie, jak w prostych przypadkach, co jest dokładnie tym, czego nie chcemy w księgowości. Właśnie tutaj poziom pewności odczytu odróżnia „AI jest pewne i ma rację” od „AI jest pewne, ale się myli”.
Bliżej błędów: klasy pomyłek i walidacja krzyżowa
Warto rozróżnić trzy typy błędów, bo każdy wymaga innego sposobu wyłapania:
- Błąd na poziomie pola. Pojedyncza źle odczytana wartość — cyfra, data, stawka VAT — przy poprawnej reszcie dokumentu. Zwykle najłatwiej go złapać, bo porównanie powiązanych pól od razu pokazuje niespójność.
- Błąd strukturalny. Model źle przypisze, która część dokumentu czym jest — na przykład potraktuje adres dostawy jako dane nabywcy. Trudniejszy do wyłapania automatycznie, bo wyodrębnione dane mogą nadal wyglądać wewnętrznie spójnie, mimo że są błędne.
- Błąd kompletności. Brakująca pozycja albo urwana strona. Najtrudniejszy z tej trójki, bo w wyodrębnionych danych nie ma niczego oczywiście błędnego do zaznaczenia — złapanie go wymaga porównania liczby oczekiwanych pól albo stron z tym, co faktycznie zwrócono.
Walidacja krzyżowa w praktyce oznacza uruchomienie kilku takich sprawdzianów naraz, zamiast ufania jednemu: sumy kontra pozycje, matematyka VAT kontra zadeklarowane stawki, format pól kontra znane wzorce dla NIP-ów i dat. Dokument, który przechodzi wszystkie, trafia dalej automatycznie; ten, który nie przejdzie choćby jednego, zostaje oznaczony — nawet jeśli każde pole z osobna „wygląda” wiarygodnie.
Dlaczego walidacja i eskalacja do człowieka są niezbędne
Stąd bierze się zasada, którą stosujemy w każdym wdrożeniu, gdzie AI dotyka liczb: AI proponuje, kod liczy. Model odpowiada za odczyt i wstępną klasyfikację, natomiast finalne przeliczenia i decyzje o tym, czy dokument jest kompletny i spójny, należą do deterministycznej warstwy systemu.
W praktyce oznacza to konkretne mechanizmy: sumy pozycji na fakturze są automatycznie porównywane z kwotą brutto, a rozbieżność blokuje dalsze przetwarzanie zamiast zostać po cichu zaokrągloną. Odczyt z niską pewnością nie jest akceptowany automatycznie, tylko trafia do przejrzenia przez człowieka — dokładnie w tym miejscu powinna kończyć się automatyzacja, a zaczynać kontrola.
Jak to wygląda w praktyce: Qkwit
W Qkwit AI odpowiada za odczyt dokumentów księgowych, natomiast wyliczenia podatków i składek ZUS wykonuje odrębny, deterministyczny silnik — dokładnie z tego samego powodu, o którym pisaliśmy w artykule dlaczego AI nie powinno liczyć podatków samodzielnie. Rozdzielenie tych dwóch warstw sprawia, że błąd odczytu nie przekłada się automatycznie na błędną deklarację — zostaje wyłapany, zanim liczby trafią dalej.
Ten sam mechanizm odczytu i walidacji działa dziś we wszystkich czterech segmentach Qkwita — JDG, spółkach z o.o., kadrach i płacach oraz biurach rachunkowych — z progiem pewności i kolejką do przeglądu zaprojektowanymi tak samo w każdym z nich.
Co to oznacza dla firmy, która wdraża taki mechanizm
Praktyczny wniosek jest prosty: pytanie „czy AI dobrze czyta faktury” jest mniej istotne niż pytanie „co się dzieje, gdy AI czyta je źle”. Firma wdrażająca automatyzację dokumentów powinna od razu zapytać dostawcę o próg pewności i o to, kto przegląda kolejkę do weryfikacji. Więcej o naszym podejściu do takich wdrożeń piszemy na stronie oferty AI.
Najczęstsze pytania
Czy AI może całkowicie zastąpić ręczne wprowadzanie faktur?
W większości przypadków tak — poprawnie odczytane, jednoznaczne dokumenty nie wymagają ręcznej pracy. System powinien być jednak zaprojektowany tak, żeby przypadki niepewne trafiały do człowieka zamiast być akceptowane automatycznie.
Co się dzieje, gdy AI nie jest pewne odczytu?
Trafia do kolejki do przejrzenia, zamiast zostać przepuszczony dalej z domyślnym albo zgadywanym uzupełnieniem. Osoba przeglądająca widzi dokładnie to pole, które budzi wątpliwość, a nie cały dokument od nowa.
Czy błąd odczytu wpływa na wysokość podatku?
Może wpłynąć, jeśli nic nie stoi między odczytem a wyliczeniem. Dlatego wyliczenia realizuje osobny, deterministyczny silnik, a nie sam model językowy — błąd w odczycie zostaje wyłapany na etapie walidacji, zanim wpłynie na wynik.
Czy trzeba sprawdzać każdą fakturę ręcznie?
Nie — sprawdzeniu podlegają te przypadki, które system sam oznaczy jako niepewne albo niespójne. To zwykle niewielki odsetek wszystkich dokumentów, ale kluczowy dla wiarygodności całości.
Jak długo trwa wdrożenie takiego mechanizmu w firmie?
Zależy od różnorodności dokumentów i systemów, z którymi trzeba się zintegrować. Zaczynamy zawsze od audytu procesu, żeby ustalić realny zakres, zanim zaproponujemy harmonogram.