# Automatyczny import dokumentów PDF - moduł OCR

> Moduł OCR w systemie WMS.net zamienia plik PDF - fakturę, awizo czy specyfikację dostawy - w gotowe zlecenie magazynowe w kilkanaście sekund.

Adres strony: https://magazyn.softwarestudio.com.pl/wms-ocr-import-dokumentow/

---

Ręczne przepisywanie danych z faktur, awiz czy specyfikacji dostaw jest czasochłonne. Moduł OCR w systemie WMS.net pozwala wgrać plik PDF i w kilkanaście sekund zamienić go w gotowe zlecenie magazynowe, wykorzystując asystenta AI do odczytu treści dokumentu.
Ręczne przepisywanie danych z faktur, awiz czy specyfikacji dostaw to proces bardzo czasochłonny. Moduł OCR w systemie WMS.net całkowicie rozwiązuje ten problem, pozwalając na przetworzenie pliku PDF w gotowe zlecenie magazynowe w zaledwie kilkanaście sekund. Jest to nowoczesne rozwiązanie - stworzone przez SoftwareStudio Group Sp. z o.o. - ułatwiające pracę w każdej dużej firmie. Do prawidłowego działania integracji i wymiany danych z asystentem API wymagany jest dostęp przez Internet.

## Co daje moduł OCR w systemie WMS.net

Wdrożenie zautomatyzowanego odczytu danych przynosi firmie wymierne korzyści, które bezpośrednio przekładają się na jakość codziennej pracy. Oszczędność czasu wynika z faktu, że dane z plików PDF trafiają do bazy całkowicie automatycznie, bez przepisywania pozycji ręką operatora. Możliwość przetwarzania wsadowego pozwala na jednoczesne wgranie do 4 dokumentów, które system analizuje kolejno. Utworzone w ten sposób zlecenie trafia do tej samej kolejki co zadania wprowadzone ręcznie, więc [przyjęcie do magazynu](/przyjecie-do-magazynu/) przebiega dokładnie tak jak dotychczas - zmienia się wyłącznie sposób powstania dokumentu.

Eliminacja ręcznego wprowadzania danych oznacza całkowity brak pomyłek wynikających z błędu ludzkiego. Oprogramowanie skutecznie chroni przed duplikatami, wykrywając powtórzone numery i blokując ich ponowny import. Każdy dokument ma przypisaną pełną historię z datą i statusem, co ułatwia późniejszą archiwizację.

| Korzyść | Na czym polega |
| --- | --- |
| Oszczędność czasu | Dane z plików PDF trafiają do systemu automatycznie, bez przepisywania. |
| Przetwarzanie wsadowe | Jednoczesne wgranie do 4 plików PDF, które system przetwarza kolejno. |
| Eliminacja błędów | Brak ręcznego wprowadzania to brak pomyłek wynikających z błędu ludzkiego. |
| Ochrona przed duplikatami | Wykrywanie powtórzonego numeru dokumentu i blokada ponownego importu. |
| Pełna historia | Każdy przetworzony dokument zapisany z datą i statusem. |

## Jak działa import dokumentów PDF krok po kroku

Użytkowanie narzędzia jest proste i nie wymaga od pracowników zaawansowanej wiedzy technicznej. Cały proces zamyka się w kilku szybkich krokach.

1. Wybór kontrahentaNajpierw należy wybrać z listy klienta, dla którego wcześniej skonfigurowano moduł rozpoznawania tekstu.
2. Wgranie pliku PDFNastępnie wystarczy przeciągnąć plik na wyznaczoną strefę lub wskazać odpowiedni dokument bezpośrednio z dysku.
3. Odczyt danych przez asystenta AIAsystent oparty na sztucznej inteligencji odczytuje niezbędne informacje, w tym dane odbiorcy, numery, daty oraz konkretne pozycje asortymentowe.
4. Wygenerowanie zlecenia wydaniaNa koniec w panelu generuje się nowe zlecenie wydania, a wynik operacji pojawia się natychmiast na ekranie.

## Wygląd modułu OCR w systemie WMS.net

Obsługa modułu sprowadza się do kilku kliknięć. Poniższe zrzuty ekranu pokazują kolejne etapy pracy - od wyboru kontrahenta, przez wgranie pliku, aż po historię przetworzonych dokumentów.

Wszystkie przetworzone dokumenty są widoczne w tabeli wyników. Pracownicy mogą sprawdzić status każdego importu, zobaczyć ewentualne uwagi (na przykład brak indeksu w asortymencie) oraz datę zapisu.

## Możliwości konfiguracji modułu dla każdego kontrahenta

Rozwiązanie wyróżnia się szerokimi możliwościami konfiguracji dla każdego kontrahenta. Administrator może zdefiniować własny szablon dokumentu z indywidualnym układem pól dla każdego klienta, dzięki czemu system poprawnie odczyta dokumenty o różnym wyglądzie. Silnik sztucznej inteligencji potrafi wyodrębnić i znormalizować specyficzne numery artykułów, na przykład usuwając wiodące zera.

Narzędzie obsługuje różne typy pism - od zleceń wydania, przez zlecenia przyjęcia, aż po dokumentację transportową. Cała konfiguracja pozostaje po stronie administratora systemu, więc użytkownik korzystający z modułu nie musi znać jej szczegółów. Praktyczne zastosowanie sztucznej inteligencji w magazynie opisuje też strona [asystent AI w systemie WMS](/ai-asystent-wms/), a szerszy kontekst znajdziesz w artykule [AI w logistyce](/ai-w-logistyce/).

## Dla kogo przeznaczony jest moduł OCR

Moduł znakomicie sprawdza się w środowiskach, gdzie regularnie odbywają się dostawy wymagające ciągłej weryfikacji dokumentacji, a każda dostawa wiąże się z dokumentem PDF od stałego dostawcy. Wdrożenie jest szczególnie rekomendowane dla magazynów logistycznych obsługujących wielu klientów w modelu 3PL, przedsiębiorstw produkcyjnych rejestrujących codzienne dostawy surowców i komponentów oraz dystrybutorów zarządzających dużą liczbą zamówień wysyłkowych. Zakres obowiązków, jaki kryje się pod określeniem 3PL, wyjaśnia [słownik terminów CSCMP](https://cscmp.org/CSCMP/CSCMP/Educate/SCM_Definitions_and_Glossary_of_Terms.aspx).

| Odbiorca rozwiązania | Typowy scenariusz użycia |
| --- | --- |
| Magazyny 3PL | Obsługa wielu klientów, każdy z własnym formatem dokumentu dostawy. |
| Firmy produkcyjne | Codzienne przyjęcia surowców i komponentów od stałych dostawców. |
| Dystrybutorzy | Duża liczba zamówień wysyłkowych przetwarzanych na podstawie PDF. |

## Obsługiwane formaty plików i wymagania wobec skanu

Dokumenty trafiające do magazynu mają różne pochodzenie i to ono decyduje o trudności odczytu. Plik PDF wygenerowany bezpośrednio z systemu dostawcy zawiera warstwę tekstową, więc dane odczytywane są wprost, bez rozpoznawania obrazu. Skan papierowego dokumentu albo zdjęcie zrobione telefonem to natomiast obraz rastrowy, w którym tekst trzeba dopiero rozpoznać, a jakość źródła przekłada się bezpośrednio na poprawność wyniku.

| Rodzaj pliku źródłowego | Sposób odczytu | Wymagania praktyczne |
| --- | --- | --- |
| PDF z warstwą tekstową | Bezpośredni odczyt tekstu z pliku | Brak dodatkowych wymagań, najwyższa poprawność |
| PDF ze skanu dokumentu | Rozpoznawanie obrazu przez asystenta AI | Skan orientacyjnie 300 dpi, obraz nieprzekrzywiony |
| Obraz JPG lub PNG | Rozpoznawanie obrazu przez asystenta AI | Równomierne oświetlenie, brak cieni i odblasków |
| Faks lub wydruk niskiej jakości | Rozpoznawanie obrazu z ograniczoną pewnością | Zalecana ręczna weryfikacja wyniku przed zapisem |
| Plik zabezpieczony hasłem | Odczyt niemożliwy | Konieczne zdjęcie zabezpieczenia przed wgraniem |

Praktyka wdrożeniowa pokazuje, że najwięcej problemów sprawiają dokumenty skanowane w trybie oszczędnym, z rozdzielczością poniżej 200 punktów na cal, oraz zdjęcia wykonywane pod kątem. Uzgodnienie z dostawcą, aby przesyłał plik generowany bezpośrednio z systemu zamiast skanu wydruku, podnosi poprawność odczytu bardziej niż jakakolwiek zmiana konfiguracji po stronie magazynu.

## Jakie pola system odczytuje z dokumentu

Asystent nie przepisuje całej treści dokumentu, lecz wyszukuje konkretne pola potrzebne do zbudowania zlecenia magazynowego. Zakres tych pól ustala się w szablonie przypisanym do kontrahenta, dzięki czemu ten sam mechanizm obsługuje faktury, awiza dostaw oraz specyfikacje wysyłkowe o zupełnie różnym układzie graficznym.

| Grupa danych | Odczytywane pole | Zastosowanie w systemie |
| --- | --- | --- |
| Nagłówek | Numer dokumentu, data wystawienia | Identyfikacja zlecenia i kontrola duplikatów |
| Strony transakcji | Nazwa, adres, numer NIP odbiorcy | Dopasowanie do kartoteki kontrahentów |
| Dane logistyczne | Adres dostawy, oczekiwana data realizacji | Planowanie kompletacji i wysyłki |
| Pozycje | Indeks towaru, nazwa, ilość, jednostka miary | Utworzenie linii zlecenia wydania lub przyjęcia |
| Dane partii | Numer partii, data ważności | Ewidencja partii i kontrola kolejki FEFO |
| Dane opakowaniowe | Liczba opakowań, waga, numer SSCC | Powiązanie z jednostką logistyczną |
| Odwołania | Numer zamówienia klienta, numer awiza | Powiązanie dokumentu z wcześniejszym zleceniem |

Odczytany indeks towaru poddawany jest normalizacji, ponieważ ten sam artykuł bywa zapisywany na różne sposoby - z zerami wiodącymi, ze spacjami, z myślnikami lub z przedrostkiem dostawcy. Reguły normalizacji zdefiniowane w szablonie sprowadzają wszystkie warianty do postaci używanej w kartotece asortymentu, dzięki czemu pozycja trafia na właściwy indeks bez ingerencji operatora.

## Walidacja danych i obsługa błędów odczytu

Automatyczny odczyt nie zwalnia z kontroli. Zanim moduł utworzy zlecenie, przeprowadza serię sprawdzeń na odczytanych wartościach i dopiero komplet poprawnych danych trafia do bazy Microsoft SQL Server. Sprawdzana jest obecność wszystkich wymaganych pól, zgodność indeksu z kartoteką asortymentu, poprawność formatu daty, dodatnia wartość ilości oraz istnienie kontrahenta wskazanego na dokumencie.

Osobny mechanizm chroni przed powtórnym importem. System porównuje numer dokumentu z historią przetworzonych plików i przy wykryciu powtórzenia blokuje operację, zamiast tworzyć drugie zlecenie na ten sam towar. To zabezpieczenie ma znaczenie zwłaszcza wtedy, gdy ten sam plik przychodzi pocztą elektroniczną kilkukrotnie albo trafia do systemu równolegle od dwóch osób.

Wyniki niepełne nie są odrzucane w całości. Dokument, w którym rozpoznano nagłówek, ale jedna z pozycji nie ma odpowiednika w kartotece, otrzymuje status wymagający uwagi, a w tabeli historii pojawia się uwaga wskazująca brakujący indeks. Operator uzupełnia kartotekę albo koryguje mapowanie i ponawia import, nie tracąc wcześniej odczytanych danych. Wszystkie próby, także nieudane, zapisywane są z datą, nazwą pliku i identyfikatorem użytkownika.

## Konfiguracja szablonu dla nowego kontrahenta krok po kroku

Uruchomienie odczytu dla kolejnego dostawcy jest zadaniem administratora systemu i nie wymaga zmian w kodzie aplikacji. Poniższa procedura opisuje typowy przebieg prac.

1. Zebranie próbek dokumentów - przygotowanie kilku rzeczywistych plików od danego kontrahenta, obejmujących różne warianty układu i długości listy pozycji.
2. Utworzenie szablonu - założenie definicji powiązanej z kartoteką kontrahenta i wskazanie typu tworzonego dokumentu, na przykład zlecenia wydania.
3. Mapowanie pól nagłówka - przypisanie numeru dokumentu, daty oraz danych odbiorcy do odpowiadających im pól w bazie danych.
4. Mapowanie tabeli pozycji - wskazanie kolumn z indeksem, nazwą, ilością i jednostką miary oraz określenie sposobu rozpoznawania końca listy.
5. Ustawienie reguł normalizacji - zdefiniowanie zamian, takich jak usuwanie zer wiodących, obcinanie przedrostka dostawcy czy ujednolicanie jednostek miary.
6. Test na próbkach - przetworzenie zebranych plików i porównanie wyniku z oczekiwanym zleceniem, pozycja po pozycji.
7. Zatwierdzenie i uruchomienie - udostępnienie szablonu użytkownikom oraz przekazanie im informacji, gdzie sprawdzać status importów.

Krok szósty warto potraktować poważnie, ponieważ to on ujawnia niuanse układu dokumentu - stopkę mylnie rozpoznawaną jako pozycja, drugą stronę z ciągiem dalszym tabeli albo kolumnę rabatu wyglądającą jak ilość. Poprawki wprowadzone na tym etapie oszczędzają późniejszych korekt na dokumentach produkcyjnych.

## Powiązanie z dokumentami magazynowymi i systemem ERP

Wynikiem odczytu nie jest plik tekstowy, lecz rekord w bazie danych systemu magazynowego. Na jego podstawie powstaje zlecenie, które trafia do kolejki zadań i jest realizowane tak samo jak zlecenie wprowadzone ręcznie. Rodzaj tworzonego dokumentu zależy od typu pisma źródłowego wskazanego w szablonie - z awiza powstaje zlecenie przyjęcia, opisane szerzej na stronie [przyjęcia towaru do magazynu](/przyjecia-towaru-do-magazynu/), a ze specyfikacji odbiorcy zlecenie, które kończy się dokumentem opisanym jako [wydanie magazynowe](/wydanie-magazynowe/).

| Dokument źródłowy | Dokument tworzony w WMS.net | Dalszy przebieg operacji |
| --- | --- | --- |
| Awizo dostawy, specyfikacja przyjęcia | Zlecenie przyjęcia, dokument PZ lub PZB | Kontrola ilościowa i odłożenie na lokalizacje |
| Zamówienie klienta, zlecenie wydania | Zlecenie wydania, dokument WZ lub WZB | Kompletacja, pakowanie i wysyłka |
| Dyspozycja przesunięcia | Dokument MM | Przesunięcie między magazynami lub strefami |
| Faktura dostawcy | Zlecenie przyjęcia z odwołaniem do numeru faktury | Uzgodnienie ilości z dokumentem handlowym |

Utworzone dokumenty przekazywane są dalej do systemu finansowo-księgowego przez interfejs wymiany danych oparty na usługach REST. Dzięki temu ta sama informacja nie jest wprowadzana dwukrotnie - raz w magazynie i raz w księgowości. Zakres dokumentów obsługiwanych przez system opisujemy na stronie [dokumenty magazynowe](/dokumenty-magazynowe/), a przykład wymiany danych ze sklepem internetowym na stronie [integracja WMS z e-commerce](/integracja-wms-e-commerce/).

## Bezpieczeństwo danych i archiwizacja przetworzonych plików

Dokumenty przekazywane do odczytu zawierają dane handlowe, a często także dane osobowe odbiorców. Dostęp do modułu opiera się na uprawnieniach rolowych - użytkownik widzi wyłącznie kontrahentów przypisanych do swojego zakresu, a możliwość edycji szablonów pozostaje po stronie administratora. Każda operacja zapisywana jest w rejestrze wraz z identyfikatorem użytkownika i znacznikiem czasu.

Oryginalny plik pozostaje powiązany z utworzonym zleceniem, dzięki czemu w razie wątpliwości można wrócić do dokumentu źródłowego bez szukania go w poczcie elektronicznej. Historia przetworzonych dokumentów służy zarówno bieżącej kontroli statusów, jak i późniejszemu audytowi, ponieważ pokazuje, kto, kiedy i na podstawie jakiego pliku utworzył konkretne zlecenie.

Instalację można uruchomić na serwerze własnym albo w chmurze, a kopie zapasowe bazy Microsoft SQL Server obejmują również załączone pliki. Wymiana danych z asystentem odbywa się przez Internet z użyciem szyfrowanego połączenia, co oznacza jedno wymaganie infrastrukturalne - stabilne łącze oraz przepuszczenie ruchu do usługi na zaporze sieciowej.

## OCR a EDI - kiedy wybrać który sposób wymiany danych

Odczyt dokumentów i elektroniczna wymiana danych rozwiązują ten sam problem, ale w odmienny sposób. EDI wymaga uzgodnienia formatu komunikatu po obu stronach oraz projektu integracyjnego, natomiast moduł OCR działa na dokumencie, który dostawca i tak wysyła. To sprawia, że oba podejścia nie konkurują ze sobą, lecz uzupełniają się w zależności od skali współpracy.

| Kryterium | Moduł OCR | Wymiana EDI |
| --- | --- | --- |
| Warunek uruchomienia | Powtarzalny układ dokumentu | Uzgodniony standard komunikatu po obu stronach |
| Zaangażowanie partnera | Żadne, wystarczy dotychczasowy plik | Konieczny wspólny projekt integracyjny |
| Czas uruchomienia | Konfiguracja szablonu, zwykle kilka dni | Projekt liczony w tygodniach |
| Poprawność danych | Zależna od jakości pliku źródłowego | Wysoka, dane w formacie ustrukturyzowanym |
| Typowy zakres stosowania | Dostawcy o mniejszym wolumenie i partnerzy okazjonalni | Stali partnerzy o dużym wolumenie dokumentów |

W praktyce magazyny obsługujące kilkudziesięciu dostawców wdrażają EDI dla kilku partnerów generujących największy ruch, a pozostałych obsługują modułem OCR. Takie połączenie ogranicza ręczne przepisywanie do przypadków wyjątkowych, bez konieczności prowadzenia projektu integracyjnego z każdym kontrahentem osobno. Szerszy kontekst automatyzacji pracy magazynu opisujemy na stronie [zarządzanie magazynem](/zarzadzanie-magazynem/).

## Pytania o moduł OCR w systemie WMS.net

## Baza wiedzy - pojęcia modułu OCR

Pojęcia z automatycznego odczytu dokumentów PDF w systemie WMS.net.
