Jak działa automatyczne rozpoznawanie faktur OCR?
Przy ręcznym księgowaniu faktury pracownik otwiera PDF, odczytuje dane sprzedawcy, numer dokumentu, daty, kwoty, VAT i termin płatności, a następnie przepisuje wszystko do programu. Przy kilku dokumentach dziennie nie jest to dużym problemem. Przy kilkuset zaczyna pochłaniać sporą część pracy księgowości.
OCR pozwala ten etap w dużej części zautomatyzować.
W praktyce współczesne rozpoznawanie faktur jest czymś więcej niż zwykłym odczytywaniem liter ze skanu. System nie tylko widzi napis „1 230,00 zł”, ale próbuje również ustalić, czy jest to kwota netto, VAT, wartość brutto czy kwota pozostała do zapłaty.
Dopiero wtedy OCR staje się naprawdę użyteczny w księgowości.
Od PDF do danych gotowych do zaksięgowania
Proces zaczyna się od dostarczenia dokumentu. Może to być PDF otrzymany e-mailem, skan papierowej faktury albo zdjęcie wykonane telefonem.
Pierwszym etapem jest rozpoznanie tekstu.
System analizuje dokument i odnajduje znajdujące się na nim napisy. Z faktury może odczytać na przykład:
ABC Sp. z o.o.
NIP 1234567890
FV/324/09/2026
Data wystawienia: 01.09.2026
Termin płatności: 15.09.2026
Netto: 1 000 zł
VAT: 230 zł
Brutto: 1 230 zł
Samo zamienienie obrazu na tekst nie wystarczy. Program musi jeszcze zrozumieć układ dokumentu.
Na jednej fakturze numer dokumentu znajduje się w prawym górnym rogu. Na drugiej pod nazwą sprzedawcy. Jeden dostawca używa określenia „Termin płatności”, inny „Płatne do”, a zagraniczny kontrahent może wpisać „Due date”.
Nowoczesne systemy rozpoznawania dokumentów radzą sobie z tym dzięki modelom uczonym na różnych układach faktur. Nie potrzebują osobnego szablonu dla każdego dostawcy.
System rozpoznaje znaczenie pola, a nie tylko jego pozycję na stronie.
Dlatego może przypisać:
„Invoice No.” → numer faktury,
„VAT ID” → numer podatkowy,
„Total amount” → wartość końcowa,
„Due date” → termin płatności.
Właśnie ta warstwa odróżnia zwykły OCR od narzędzia przeznaczonego do automatycznej obsługi faktur.
OCR może odczytać również pozycje na fakturze
Najprostsze systemy ograniczają się do nagłówka dokumentu i jego podsumowania.
Bardziej rozbudowane potrafią przeanalizować również tabelę zawierającą sprzedane towary lub usługi.
Z faktury:
| Produkt | Ilość | Cena | Wartość |
|---|---|---|---|
| Monitor 27" | 2 | 800 zł | 1 600 zł |
| Klawiatura | 3 | 150 zł | 450 zł |
system może utworzyć dwie osobne pozycje i przekazać je dalej do programu.
Możliwe jest odczytywanie nazw produktów, ilości, cen jednostkowych, wartości oraz kodów znajdujących się na dokumencie.
To szczególnie przydatne przy firmach, które chcą automatyzować nie tylko księgowanie kosztu, ale również przyjęcie towaru do magazynu.
Trzeba jednak pamiętać, że tabela jest zwykle trudniejsza do odczytania niż numer faktury czy wartość brutto. Układy tabel bardzo się różnią, nazwy produktów mogą zajmować kilka wierszy, a na dokumentach pojawiają się rabaty, dodatkowe opłaty i podsumowania.
Dlatego przy automatycznym tworzeniu dokumentów magazynowych kontrola danych jest nadal potrzebna.
Skąd system wie, że się pomylił?
Nie wie tego ze stuprocentową pewnością.
Systemy OCR często przypisują rozpoznanym danym poziom pewności. Jeżeli numer faktury jest wyraźny, wynik może zostać uznany za bardzo wiarygodny. Jeśli dokument jest przekrzywiony, rozmazany albo część tekstu znajduje się na pieczątce, pewność będzie niższa.
Można to wykorzystać do automatyzacji.
Przykładowo firma ustala, że dane odczytane z wysoką pewnością są uzupełniane automatycznie, a wątpliwe pola zostają zaznaczone do sprawdzenia.
Pracownik nie musi wtedy czytać całej faktury. Program może pokazać:
NIP – rozpoznano
numer faktury – rozpoznano
brutto – rozpoznano
termin płatności – sprawdź
Człowiek zajmuje się tylko ostatnim polem.
Jeszcze lepsza kontrola polega na sprawdzaniu zależności pomiędzy wartościami.
Jeżeli OCR odczytał:
netto: 1 000 zł,
VAT: 230 zł,
brutto: 1 320 zł,
system może zauważyć, że wartości się nie zgadzają.
Podobnie numer NIP można sprawdzić pod kątem poprawnej liczby cyfr i sumy kontrolnej, a dane dostawcy porównać z istniejącą kartoteką kontrahentów.
Im więcej takich kontroli, tym mniej błędów trafia dalej.
Najczęstsze problemy z OCR nie wynikają z samego OCR
Duże znaczenie ma jakość dokumentu wejściowego.
Cyfrowy PDF wygenerowany przez program do fakturowania jest stosunkowo łatwy do przeanalizowania.
Dużo gorzej wygląda zdjęcie faktury zrobione wieczorem telefonem, pod kątem, z cieniem dłoni na połowie strony.
Problemy powodują również:
niewyraźne skany,
bardzo mała czcionka,
pieczątki nanoszone na dane,
ręczne dopiski,
niestandardowe tabele,
kilka dokumentów w jednym pliku,
faktury wielostronicowe,
bardzo podobne znaki, np. „0” i „O” albo „1” i „I”.
Szczególnie niebezpieczne są pomyłki, które nadal wyglądają wiarygodnie.
Jeżeli system odczyta kwotę 8 350 zł jako 8 350 zł, wszystko jest w porządku.
Jeżeli odczyta ją jako 835 zł, błąd jest oczywisty po porównaniu dokumentu.
Znacznie trudniejsza sytuacja występuje wtedy, gdy jedna cyfra w numerze faktury zostanie odczytana błędnie. Dokument może wyglądać poprawnie, ale system nie rozpozna później duplikatu.
Dlatego nie warto budować obiegu na zasadzie:
OCR rozpoznał → automatycznie księgujemy wszystko.
Bezpieczniejszy model dodaje jeszcze walidację.
Duplikaty można wykrywać automatycznie
To jedna z bardziej praktycznych funkcji.
Ta sama faktura może przyjść na ogólną skrzynkę księgowości, zostać przesłana przez pracownika i dodatkowo trafić do systemu jako załącznik do zamówienia.
Bez kontroli łatwo wprowadzić ją dwa razy.
Po rozpoznaniu danych system może porównać:
NIP sprzedawcy,
numer faktury,
datę,
kwotę.
Jeżeli dokument o takiej kombinacji już istnieje, użytkownik otrzymuje ostrzeżenie.
Nie trzeba porównywać ręcznie nazw plików takich jak:
faktura.pdf
i
FV_09_2026_final.pdf.
System analizuje zawartość.
OCR może uruchomić cały dalszy obieg faktury
Największą korzyścią nie jest samo zaoszczędzenie kilkudziesięciu sekund na przepisywaniu danych.
Dobrze skonfigurowany system wykorzystuje odczytane informacje do dalszych operacji.
Faktura przychodzi na adres:
[faktury@firma.pl](mailto:faktury@firma.pl)
System automatycznie pobiera załącznik.
OCR rozpoznaje dostawcę, numer faktury, kwotę, VAT, datę i termin płatności.
Następnie może przypisać dokument do kontrahenta, sprawdzić, czy nie jest duplikatem, przekazać go odpowiedniej osobie do akceptacji i utworzyć zapis do dalszego księgowania.
Jeżeli wartość przekracza określony próg, dokument trafia do dyrektora.
Jeżeli dotyczy konkretnego projektu, może zostać przypisany do odpowiedniego centrum kosztowego.
Po zatwierdzeniu dane trafiają do księgowości, a termin płatności może pojawić się na liście zobowiązań.
OCR jest wtedy tylko pierwszym elementem całego procesu.
Co zmienia KSeF?
Bardzo dużo.
Faktura znajdująca się w KSeF jest dokumentem ustrukturyzowanym w formacie XML zgodnym obecnie ze strukturą FA(3). Dane nie znajdują się więc wyłącznie w obrazie faktury przeznaczonym dla człowieka.
Numer faktury, NIP, daty, wartości i pozostałe informacje są zapisane w określonych polach struktury.
W takim przypadku używanie OCR nie ma większego sensu.
Jeżeli program pobiera fakturę bezpośrednio z KSeF, może odczytać dane z XML dokładnie tak, jak zostały zapisane przez wystawcę. Nie trzeba analizować wyglądu PDF-u i zgadywać, która liczba jest wartością brutto.
To eliminuje dużą część błędów charakterystycznych dla OCR.
Nie oznacza jednak końca tej technologii.
Firmy nadal otrzymują dokumenty, które nie trafiają do KSeF. Dotyczy to między innymi części dokumentów od zagranicznych dostawców, dokumentów spoza obowiązkowego systemu, rachunków, skanów starszych faktur czy innych dokumentów kosztowych.
Dlatego nowoczesny system księgowy może korzystać z dwóch źródeł:
KSeF → dane pobierane bezpośrednio ze struktury,
PDF lub skan → dane rozpoznawane przez OCR.
Dla użytkownika efekt powinien wyglądać podobnie. Dokument pojawia się w jednym miejscu, niezależnie od tego, skąd pochodził.
Czy OCR może całkowicie zastąpić pracownika?
Przy prostych i powtarzalnych dokumentach można bardzo mocno ograniczyć ręczną pracę.
Nie powinno się jednak zakładać, że każdy dokument można zaksięgować bez jakiejkolwiek kontroli.
OCR potrafi odczytać, że na fakturze znajduje się kwota 15 000 zł. Nie musi wiedzieć, czy wydatek rzeczywiście dotyczy działalności firmy, na jakie konto księgowe powinien trafić, czy wymaga rozliczenia międzyokresowego albo czy pracownik miał prawo dokonać takiego zakupu.
To już inny rodzaj decyzji.
Dlatego najlepsze wdrożenia nie próbują na siłę usuwać człowieka z procesu. Usuwają przede wszystkim najbardziej mechaniczną część pracy.
Zamiast przepisywać z każdej faktury numer, NIP, datę, netto, VAT, brutto i termin płatności, pracownik dostaje już uzupełniony dokument i sprawdza tylko to, czego system nie jest pewny.
Przy 20 fakturach miesięcznie różnica może być niewielka.
Przy 2 000 faktur OCR potrafi zmienić pracę księgowości z ciągłego przepisywania danych w kontrolowanie wyjątków.
I właśnie na tym polega jego największa wartość. Nie na tym, że komputer potrafi przeczytać fakturę, lecz na tym, że po jej przeczytaniu dane mogą od razu zasilić dalszy proces bez ponownego ręcznego wprowadzania.