← Powrót na blog

Automatyczne dopasowywanie płatności (nawet bez tytułu przelewu)

Jak działa automatyczne dopasowywanie płatności do faktur. Deterministyczne dopasowanie przez tytuł przelewu vs przypadki, gdy go nie ma — płatności częściowe i zbiorcze, obca waluta, fuzzy matching, ręczna kolejka i audit log.

Dopasowywanie płatności do faktur brzmi jak trywialny problem. Przychodzi płatność na konto, znajduje się do niej faktura, oznacza się jako zapłacona. Dopóki płatności przychodzą z czystym tytułem przelewu i zgadzającą się kwotą, naprawdę jest to trywialne — radzi sobie z tym nawet pudełkowe oprogramowanie księgowe bez żadnego AI.

Problem zaczyna się tam, gdzie rzeczywistość nie dostarcza tytułu przelewu. Klient płaci trzy faktury jednym przelewem. Wysyła płatność częściową. Wpisuje w tytule numer zamówienia zamiast numeru faktury. Płaci w euro fakturę wystawioną w złotówkach. I nagle z „oznacz jako zapłacone" robi się godzina ręcznej pracy detektywistycznej każdego dnia. Ten artykuł jest o tym, jak tę pracę zautomatyzować — i gdzie jest granica, za którą automatyzacja nie powinna działać samodzielnie.

Deterministyczne dopasowanie: tytuł przelewu i dokładna kwota

Podstawa jest prosta i powinna taka pozostać. Płatność przychodzi z tytułem przelewu odpowiadającym numerowi faktury, a kwota zgadza się co do grosza. Tu nie ma nic do rozwiązania — reguła jest deterministyczna, wynik jednoznaczny, dopasowanie przebiega automatycznie i bez asysty.

To pokrywa większość płatności u firm, które mają zdyscyplinowanych klientów i czyste procesy. Jeśli jesteś w takiej sytuacji, nie potrzebujesz żadnego AI. Pudełkowy SaaS zrobi to za ciebie i powiem ci to wprost. Nie ma sensu płacić za inteligentne dopasowanie, gdy wystarczy proste porównanie dwóch liczb.

Granica deterministycznego dopasowania nie leży w tym, czy działa. Leży w tym, ile płatności przez nie nie przejdzie. I właśnie ta reszta — często 10 do 30 procent wolumenu — to miejsce, gdzie traci się czas i powstają błędy.

Gdzie tytuł przelewu zawodzi

Wystarczy kilka typów płatności i deterministyczna reguła przestaje wystarczać:

  • Płatności częściowe. Klient płaci połowę faktury teraz, resztę następnego miesiąca. Kwota się nie zgadza, więc dokładne porównanie zawodzi — nawet jeśli tytuł przelewu jest poprawny.
  • Płatności zbiorcze. Jeden przelew pokrywa trzy lub pięć faktur naraz. Tytuł przelewu jest albo tylko jeden, albo żadnego. System musi rozpoznać, że suma odpowiada grupie faktur, nie jednej.
  • Brakujący lub błędny tytuł przelewu. Klient nie wypełnia pola tytułu, albo wpisuje datę, numer zamówienia lub własny kod wewnętrzny. Dokładne dopasowanie nie znajduje wyniku.
  • Obca waluta. Faktura w złotówkach, płatność w euro. Między nimi jest kurs i zaokrąglenie, więc kwota nigdy nie zgadza się dokładnie. Potrzebujesz tolerancji i przeliczenia.
  • Zaokrąglenia i opłaty. Opłata międzybankowa uszczupla kwotę o kilka groszy. Płatność przychodzi nieco niższa niż faktura.

Każdy z tych przypadków deterministyczna reguła wrzuciłaby do kategorii „niedopasowane" i wysłała na stół ręczny. Tu właśnie wartość dodaje fuzzy matching i AI.

Co wnosi fuzzy matching i AI

Gdy dokładne dopasowanie zawodzi, nie trzeba rezygnować na rzecz ręcznej pracy. Zamiast jednej sztywnej reguły używa się wielu sygnałów jednocześnie i oblicza się z nich prawdopodobieństwo, do której faktury należy płatność:

  • Kwota w tolerancji — zgadza się dokładnie, czy po przeliczeniu waluty i odjęciu opłaty?
  • Nazwa kontrahenta — czy nazwa nadawcy odpowiada klientowi na fakturze, nawet jeśli jest zapisana inaczej (skrót, literówka, inna forma prawna)?
  • Numer konta — czy płaci z konta, z którego klient płacił już wcześniej?
  • Data i termin płatności — czy płatność mieści się w oknie wokół terminu płatności faktury?
  • Treść przelewu i tytuł — czy nie ma tam numeru zamówienia lub faktury wpisanego swobodnie poza polem tytułu?

Fuzzy matching radzi sobie też z tym, czego dokładne dopasowanie nie udźwignie: drobnymi literówkami w nazwie, innym formatem numeru, numerem faktury ukrytym w wolnym tekście. W przypadku płatności zbiorczych szuka kombinacji faktur, których suma odpowiada przychodzącej kwocie. W przypadku obcej waluty przelicza po kursie i porównuje z tolerancją.

Wynikiem nie jest „dopasowane / niedopasowane". To wynik dopasowania. Gdy zgodność jest jednoznaczna i wysoka, dopasowanie przebiega automatycznie. Gdy jest niepewna lub ma wielu kandydatów, system nie zgaduje — przygotowuje propozycję i przekazuje ją człowiekowi.

Gdzie jest granica: ręczna kolejka z propozycją, nie czarna skrzynka

Tu trzeba być trzeźwym. Dopasowywanie AI nie jest magią, która spáruje absolutnie wszystko. Zawsze zostanie reszta płatności, gdzie zgodność jest niejednoznaczna — dwóch klientów z tą samą kwotą, płatność bez żadnego śladu, nieznany nadawca.

Te płatności nie mogą zniknąć ani być parowane na ślepo. Trafiają do ręcznej kolejki — ale nie jako pusta lista do rozwiązania od zera. Do każdej pozycji system dołącza:

  • najbardziej prawdopodobnych kandydatów (zazwyczaj dwóch do trzech),
  • wynik i powód, dla którego je proponuje (zgadza się kwota i konto, ale nie tytuł przelewu),
  • możliwość potwierdzenia jednym kliknięciem lub ręcznego przypisania.

Księgowy nie rozwiązuje więc zagadki od zera. Rozwiązuje decyzję: tak / nie / to. Ręczna praca zostaje, ale kurczy się z godziny do kilku minut — i skupia się tylko na naprawdę spornych przypadkach, nie na rutynie.

I rzecz kluczowa: to nie jest czarna skrzynka. Każde dopasowanie — automatyczne i ręczne — jest zapisywane w audit logu. Kiedy nastąpiło, według jakiej reguły, z jakim wynikiem, kto je ewentualnie potwierdził. Gdy po pół roku pyta audytor albo pojawia się spór, można prześledzić, dlaczego konkretna płatność jest sparowana akurat z tą fakturą. W regulowanej lub enterprise księgowości to nie luksus, lecz wymóg.

Niezawodność: dopasowywanie to nie tylko matching

Podłączenie do bankowego API i sparowanie liczb to tylko połowa roboty. Druga połowa to, żeby to wytrzymało produkcję — żeby żadna płatność się nie zgubiła, nie została sparowana dwukrotnie i żeby można było w każdej chwili zweryfikować, że stan w systemie odpowiada rzeczywistości na koncie.

To ta sama zasada, którą stosujemy przy integracjach z regulowanymi systemami: idempotencja (jedna płatność nie jest przetwarzana dwukrotnie nawet po restarcie lub ponownym pobraniu wyciągu), retry przy awarii bankowego API, audit log każdego kroku i cykliczna kontrola „czy rzeczywistość się zgadza?" — czy suma sparowanych płatności odpowiada temu, co rzeczywiście wpłynęło na konto? Bez tej warstwy masz dopasowywanie, które wygląda na działające, dopóki API nie padnie w połowie pobierania wyciągu.

Tę samą durable logikę zbudowaliśmy dla integracji z państwowym systemem e-fakturowania, przez którą przeszło ponad 40 000 dokumentów ze 100% dostarczalnością. Dopasowywanie płatności ma inny cel, ale te same wymagania dotyczące niezawodności.

Gdzie to ma sens wdrożyć

Bądźmy konkretni co do tego, kiedy to się opłaca, a kiedy nie.

Nie opłaca się, jeśli masz czyste tytuły przelewów, mały wolumen i standardową pudełkową księgowość. Tam deterministyczne dopasowanie wystarczy i AI byłoby zbędnym kosztem.

Opłaca się tam, gdzie pudełko nie daje rady:

  • duży wolumen płatności, gdzie nawet 15% niedopasowanych oznacza godziny pracy dziennie,
  • klienci, którzy nie podają tytułu przelewu niezawodnie — płatności zbiorcze, częściowe, w obcej walucie,
  • własny ERP lub podłączenie do systemu jak Dynamics 365 Business Central, gdzie pudełkowy matcher nie istnieje,
  • wymóg dohledatelności na poziomie audytu, gdzie musisz móc udokumentować każde dopasowanie.

Tu należą też kolejne kroki: ekstrakcja faktur z PDF przez AI z człowiekiem w procesie i audit logiem (nie czarna skrzynka), automatyczne księgowanie i przenoszenie do ERP. Dopasowywanie płatności jest zazwyczaj jednym ogniwem w dłuższym łańcuchu, który ma sens automatyzować jako całość.

To oferujemy

Budujemy automatyzację dopasowywania płatności i cały otaczający przepływ — od pobrania wyciągu bankowego, przez ekstrakcję faktur i dopasowanie, aż po zapis do ERP. Robimy to tam, gdzie pudełkowe oprogramowanie nie wystarcza: własna logika dopasowania na bazie fuzzy matchingu, ręczna kolejka z propozycjami, audit log i durable przetwarzanie, które wytrzyma produkcyjny ruch.

Nie jesteśmy badaczami ML i nie udajemy, że nimi jesteśmy. Jesteśmy inżynierami, którzy potrafią podłączyć bank, ERP i logikę dopasowania tak, żeby działało i było dohledowalne. Przykład z praktyki: w jednym bankowym workflow skróciliśmy generowanie umów z 2 godzin do 3 minut — czterdziestokrotnie.

Jeśli dopasowywanie płatności robisz ręcznie i zaczyna to boleć, napisz do nas. Powiemy ci wprost, czy wystarczy ci pudełko, czy ma sens rozwiązanie customowe.

FAQ

Czy można dopasowywać płatności, gdy brakuje tytułu przelewu?

Tak. Gdy tytułu przelewu brakuje lub nie pasuje, używamy fuzzy matchingu — po kwocie, nazwie kontrahenta, numerze konta, dacie i treści przelewu. System proponuje najbardziej prawdopodobną fakturę. Jeśli dopasowanie jest jednoznaczne, paruje automatycznie; jeśli nie — pozycja trafia do ręcznej kolejki z propozycją, nie w próżnię.

Co się dzieje z płatnością, której system nie potrafi jednoznacznie przypisać?

Nieprzypisana płatność nie znika ani nie jest parowana na ślepo. Trafia do ręcznej kolejki z propozycją najbardziej prawdopodobnych kandydatów i wynikiem dopasowania. Księgowy tylko potwierdza lub koryguje. Każda decyzja jest zapisywana w audit logu.

Czy do automatycznego dopasowywania płatności potrzebuję AI, czy wystarczy pudełkowe oprogramowanie?

Jeśli masz czyste tytuły przelewów i standardową księgowość, deterministyczne dopasowanie obsłuży nawet pudełkowy SaaS bez AI. AI i fuzzy matching opłacają się tam, gdzie pudełko nie daje rady — płatności częściowe i zbiorcze, obce waluty, brakujący tytuł przelewu, własny ERP i dohledatelność na poziomie audytu przy dużych wolumenach.

Masz podobny problem? Napisz do nas.

Umów konsultację