Na złożoność obsługi faktur zakupowych pobranych z KSeF w systemach informatycznych kupujących mają wpływ dwa kluczowe aspekty:
- ustrukturyzowane faktury zakupowe będą spływały od wielu dostawców i w związku z tym różna może być jakość ich wypełnienia, w szczególności w zakresie danych referencyjnych (np. numerów zamówień);
- przez lata firmy wdrożyły różne narzędzia informatyczne (systemy workflow, systemy OCR itp.) do obsługi wprowadzania faktur zakupowych, które realizują różne polityki w zakresie akceptacji faktur do płatności.
Implementacja narzędzia obsługującego KSeF od strony faktur zakupowych musi uwzględniać oba te uwarunkowania.
All for One KSeF Purchase Invoices
All for One KSeF Purchase Invoices jest dodatkiem do naszego rozwiązania All for One KSeF. Bazowe rozwiązanie składa się dwóch komponentów:
- All for One KSeF HUB – komponent techniczny hostowany w All for One Data Centers umożliwiający efektywną i masową komunikację pomiędzy systemami SAP a systemem KSeF;
- All for One KSeF Extractor – komponent instalowany w systemach SAP, umożliwiający konstruowanie faktur ustrukturyzowanych z danych źródłowych, w szczególności z faktur sprzedaży, ale również np. z faktur zakupowych wystawionych w procedurze samofakturowania. Extractor umożliwia również pobranie faktur zakupowych do bufora naszego rozwiązania – bez dalszego przetwarzania.
All for One KSeF Purchase Invoices stanowi uzupełnienie modułu Extractor. Jego głównym zadaniem jest pobranie zapisanej w buforze ustrukturyzowanej faktury zakupowej i przetworzenie jej dalej, tak by ostatecznie znalazła się w docelowym narzędziu do obsługi wprowadzania faktur zakupowych. Rozwiązanie jest częścią głównego kokpitu KSeF, dzięki czemu obsługa i monitoring faktur wychodzących (sprzedażowych), jak i przychodzących (zakupowych) przebiega w jednym miejscu.
Podstawowy proces realizowany w rozwiązaniu All for One KSeF Purchase Invoices składa się z następujących etapów:
- Pobranie ustrukturyzowanej faktury zakupowej z bufora KSeF;
- Wykonanie algorytmu mapowania danych nagłówka faktury na struktury charakterystyczne dla systemu SAP;
- W przypadku braku kompletności danych nagłówka – zwrócenie błędu i oznaczenie faktury odpowiednim statusem w monitorze KSeF w celu ręcznej korekty (np. brak dostawcy dla NIP);
- Wygenerowanie obrazu faktury w formacie PDF;
- W przypadku kompletności danych nagłówka – wybór docelowego adaptera przetwarzającego;
- Wprowadzenie danych faktury do docelowego narzędzia za pomocą wybranego adaptera;
- Oznaczenie faktury w monitorze KSeF odpowiednim statusem jako przetworzonej.
Mapowanie
Mapowanie zaimplementowane w podstawowym rozwiązaniu All for One KSeF Purchase Invoices obejmuje następujące dane:
- Dane nagłówka: wskaźnik faktura/korekta, rodzaj dokumentu, data wpływu, data dokumentu, kwota brutto, kwota VAT, waluta, numer referencyjny, jednostka gospodarcza (strona kupująca), dostawca (strona sprzedająca), typ banku partnera (IBAN), warunki płatności, forma płatności, numer faktury pierwotnej dla korekty;
- Dane referencyjne (tzw. propozycja alokacji): numery zamówień, numery dowodów dostaw (WZ);
- Podatek VAT: kwoty w podziale na poszczególne stawki.
W rozwiązaniu pozostawiono miejsce na modyfikację/uzupełnienie mapowania nagłówka na podstawie wymagań klienta (rozszerzenie ABAP).
Podstawowa wersja narzędzia nie zawiera mapowania pozycji z kilku powodów:
- Dla faktur bez referencji do zamówienia pozycje wymagają dekretacji (konto KG, MPK, zlecenie itp.), które będą określone w toku dalszego procesu;
- Dla faktur z referencją do zamówienia należy wziąć pod uwagę ustawienie pozycji w zamówieniu pod kątem trybu weryfikacji faktury. W SAP są możliwe dwa tryby:
- w referencji do zamówieniu – (tzw. 2-way-match) – prawidłowa pozycja musi zawierać odniesienie do numeru zamówienia i jego pozycji;
- w referencji do przyjęć (tzw. 3-way-match) – prawidłowa pozycja musi zawierać odniesienie do numeru zamówienia i jego pozycji, numeru przyjęcia, roku obrotowego przyjęcia i pozycji przyjęcia.
Schema XML, zarówno FA(1), jak i niedawno opublikowana FA(2), zawiera numery dowodów dostaw (WZ) oraz zamówienia, ale ulokowane na poziomie całego dokumentu, a nie pozycji. Domyślnie mapujemy je na tzw. propozycję alokacji. Przypisanie pozycji musiałoby się odbyć na podstawie dodatkowego parametru/parametrów i pewnych założeń co do logiki.
Schema FA(2) zawiera obiecujące zmiany w tym zakresie, np. element Faktura/Fa/FaWiersz/Indeks, w którym można umieścić numer materiału i dzięki temu odnajdować dopasowanie. Niemniej nawet tutaj jest pole do interpretacji, ponieważ nie jest jednoznacznie określone, czy jest to indeks strony sprzedającej, czy kupującej: „Pole przeznaczone do wpisania wewnętrznego kodu towaru lub usługi nadanego przez podatnika albo dodatkowego opisu”. Ponadto w SAP nic nie stoi na przeszkodzie, aby zamówić ten sam materiał na jednym zamówieniu na różnych pozycjach, ale z różnymi datami dostawy lub różnymi zakładami. Zatem takie przypisanie też nie jest w pełni deterministyczne.
Obiecujący jest również element Faktura/Fa/DodatkowyOpis, który pozwala transmitować niezdefiniowane przez ustawodawcę klucze wraz z wartościami przypisane do pozycji. Moglibyśmy np. poprosić dostawców, aby wypełniali klucz POREF z wartością 4500012345/10 (numer zamówienia/pozycja), ale czy na pewno dostawcy się dostosują?
- W kontekście pozycji ważne jest również determinowanie kodu podatku dla tej pozycji – na podstawie stawki z pliku XML lub na podstawie przypisania kodu podatku do pozycji zamówienia, co jednak jest rzadko poprawnie wprowadzone w zamówieniach;
- Dla korekt może być bardzo trudno rozróżnić korektę ilościową na minus od korekty wartościowej na plus/minus (tzw. dociążenie i odciążenie).
W naszym rozwiązaniu zostawiono miejsce, w którym można dołożyć dedykowaną logikę mającą na celu mapowanie pozycji. Dodatkowy algorytm może być aktywowany wybiórczo według jednostki gospodarczej oraz dostawcy (lub rozszerzeniem ABAP wg innych kryteriów). Dla przykładu, po kilku miesiącach działania KSeF porozumiewamy się z naszym regularnym dostawcą co do wypełnienia faktury ustrukturyzowanej i dokładamy do narzędzia dedykowany algorytm mapujący pozycje w oparciu o ustalone z dostawcą zasady, działający tylko dla faktur przychodzących od tego dostawcy. Możemy nawet wówczas aktywować funkcję automatycznego księgowania.
All for One ma w planie implementację domyślnego algorytmu mapującego pozycje, ale chcielibyśmy oprzeć go na doświadczeniach, które zbierzemy w trakcie pierwszego półrocza działania KSeF. Klienci otrzymają aktualizację pakietu w ramach subskrypcji i będą mogli zdecydować, czy chcą włączyć domyślne mapowanie pozycji, czy nie. Oczywiście zostaną zachowane rozszerzenia zaimplementowane podczas projektu wdrożeniowego.
Tryby przetwarzania
All for One KSeF Purchase Invoices oferuje dwa tryby przetwarzania:
- Automatyczny (rekomendowany);
- Ręczny.
W trybie automatycznym (black-box) rozwiązanie będzie działać całkowicie w tle. Najpierw faktury będą pobierane do bufora KSeF, a następnie przetwarzane zgodnie z konfiguracją i wprowadzane przez właściwy adapter do docelowego narzędzia.
Projektując rozwiązanie założyliśmy, że firmy będą chciały zachować aktualne narzędzia i pozostać przy wypracowanych sposobach pracy z fakturami, jednocześnie wykorzystując do pewnego stopnia potencjał automatyzacji, jaki przynosi ze sobą KSeF.
W trybie ręcznym można fakturę ustrukturyzowaną zaksięgować ręcznie bezpośrednio z poziomu monitora KSeF (nowa transakcja w SAP). Tryb ten jednak jest bardzo ograniczony funkcjonalnie, ponieważ nie chcieliśmy na poziomie kodu naszego produktu powielać logiki i funkcjonalności, które zapewnia standard SAP, np. w transakcji MIRO czy FB60. Dlatego w trybie ręcznym nie możemy zadekretować faktury FI (możemy zapisać tylko nagłówek), a w przypadku faktury MM możemy ręcznie przypisać zamówienie/pozycję oraz przyjęcie/rok obrotowy przyjęcia i pozycję oraz kod podatku – ale nie zmodyfikujemy już zaplanowanej w zamówieniu dekretacji czy nie obsłużymy faktury za dodatkowy warunek cenowy na fracht od alternatywnego dostawcy.
Tryb ręczny będzie użyteczny jedynie w takich sytuacjach, gdy nie będziemy chcieli automatycznie wpuszczać faktury do docelowego narzędzia w celu zachowania kontroli.
All for One rekomenduje tryb automatyczny i w miarę wzrostu doświadczenia pracy z KSeF stopniowe/wybiórcze (wg JG/dostawcy lub innych kryteriów) zwiększanie poziomu automatyzacji na etapie mapowania. All for One KSeF Purchase Invoices będzie stanowił platformę dla tej optymalizacji.
All for One Poland Purchase Invoices
– obsługa faktur zakupowych
Wizualizacja PDF i archiwizacja
Mimo że faktura ustrukturyzowana w formacie XML jest znakomitą podstawą do automatyzacji procesów w obszarze weryfikacji faktur i ich płatności, to wciąż będzie potrzebna wizualizacja. Z jednej strony jest ona potrzebna pracownikom działów księgowych, którzy niekoniecznie muszą się znać na odczytywaniu informacji z surowego pliku XML. Z drugiej strony bardzo często są już wdrożone w firmach rozwiązania klasy workflow (zewnętrzne lub w ramach systemu SAP), a one zasadniczo potrzebują tej wizualizacji, najczęściej dostarczonej w formacie PDF.
All for One KSeF Purchase Invoices oferuje cztery możliwości pozyskania wizualizacji faktury KSeF:
- Wizualizacja HTML dostępna w monitorze KSeF;
- PDF wygenerowany na HUB-ie na podstawie transformacji XML => HTML (standard dostarczany przez Ministerstwo Finansów);
- PDF wygenerowany w SAP na podstawie:
- standardowego formularza dostarczonego przez All for One w technologii Adobe Forms;
- niestandardowego formularza zaimplementowanego podczas projektu wdrożeniowego (w technologii AdobeForms lub SmartForms).
Wygenerowany PDF może być archiwizowany w repozytorium ArchiveLink i załączany do generowanych przez adaptery wyjściowe dokumentów, np. wstępnie wprowadzonej faktury MM lub FI.
Adaptery wyjściowe
Adaptery wyjściowe są kluczowymi elementami rozwiązania All for One KSeF Purchase Invoices, ponieważ umożliwiają wprowadzenie danych faktury do docelowego narzędzia, w którym faktury zakupowe są procesowane, zatwierdzane i księgowane.
W pakiecie KSeF Purchase Invoices dostępne są następujące adaptery wyjściowe:
- adapter wprowadzający wstępnie nagłówki wraz z propozycją alokacji (numery zamówień/dowody dostawy) do modułu MM (w przyszłości zostanie dostosowany do odbioru pozycji);
- adapter wprowadzający wstępnie nagłówki do modułu FI (dodania pozycji nie ma w planie);
- adapter wykonujący forward wygenerowanego PDF i/lub XML na wskazany adres e-mail (np. zewnętrznego systemu OCR);
- adapter generujący wejściowy komunikat IDOC (INVOIC) (w przyszłości zostanie dostosowany do odbioru pozycji).
Możliwa jest również implementacja dedykowanego adaptera podczas projektu wdrożeniowego.
Scenariusze integracji
Poniżej wymieniono kilka możliwych scenariuszy integracji. Wybór zależy od tego, jakie narzędzia firma wykorzystuje do obsługi faktur.
Scenariusz #1
Firma korzysta z systemu SAP, modułu MM i nie posiada żadnego workflow:
- najbardziej odpowiedni będzie adapter wstępnie wprowadzający nagłówki wraz z propozycją alokacji do modułu MM;
- warto rozważyć implementację workflow, np. All for One InvoiceFlow, który generuje zadanie w skrzynce workflow dla pracowników działów księgowych i umożliwia komunikację z osobami merytorycznymi.
Scenariusz #2
Firma korzysta z systemu SAP, modułu MM oraz FI oraz posiada wdrożony własny workflow w SAP, który uruchamia się po zaksięgowaniu faktury, np. w celu wyjaśnienia różnic cenowych i blokady płatności „R”:
- najbardziej odpowiedni będzie adapter wstępnie wprowadzający nagłówki wraz z propozycją alokacji do modułu MM oraz adapter wprowadzający wstępnie nagłówki do modułu FI;
- wybór adaptera dla danej faktury (MM lub FI) można oprzeć na przypisaniu JG/dostawca lub za pomocą dedykowanej logiki (rozszerzenie ABAP);
- ponieważ workflow uruchamia się po zaksięgowaniu, wdrożenie KSeF w tym przypadku powinno być transparentne z perspektywy takiego workflow.
Scenariusz #3
Firma korzysta z systemu SAP, modułu MM i posiada wdrożony workflow All for One InvoiceFlow:
- w tej sytuacji najbardziej odpowiedni będzie adapter wstępnie wprowadzający nagłówki wraz z propozycją alokacji do modułu MM;
- All for One dostarczy również komponent integrujący KSeF z InvoiceFlow. W efekcie faktury KSeF będą pojawiały się w skrzynce workflow, już wstępnie wprowadzone wraz z zarchiwizowanym plikiem PDF z wizualizację faktury.
Scenariusz #4
Firma posiada zaawansowany system OCR i większość faktur ma z zagranicy (tylko 20% krajowych), system OCR wprowadza dane do SAP istniejącym interfejsem:
- najbardziej odpowiedni będzie adapter wykonujący forward wygenerowanego PDF na wskazany adres e-mail (adres, na który wysyłane są faktury, skąd pobierane są do oprogramowania OCR).
- większość faktur jest z zagranicy, oprogramowanie OCR jest wdrożone od dawna, jest stabilne i sprawdzone. Oprogramowanie OCR szybko nauczy się nowego układu faktury wygenerowanej z KSeF. Dla małej liczby faktur krajowych nie ma sensu automatyzować ich wprowadzania.
Scenariusz #5
Firma posiada zaawansowany system OCR i większość faktur jest krajowych (tylko 20% zagranicznych), system OCR wprowadza dane do SAP istniejącym interfejsem:
- można podejść do problemu tak jak w scenariuszu #4, ale będzie się to wiązało z pewnym nakładem pracy przy OCR-owaniu, której można by uniknąć, przynajmniej w pewnym zakresie, po wdrożeniu KSeF (większość faktur krajowych), z drugiej strony przy wykorzystaniu jednego układu faktury (dostarczonej wraz z rozwiązaniem) można zminimalizować czas pracy przy zaawansowanych OCR, ponieważ system musi nauczyć się jednego układu, co zminimalizuje ryzyko błędów przy odczycie. Dodatkowo jest to generowany PDF, więc odpada kwestia niewyraźnych/rozmazanych skanów;
- alternatywnie można całkowicie pominąć oprogramowanie OCR dla faktur krajowych. W tego typu pejzażach oprogramowanie OCR wprowadza dane do SAP zazwyczaj przez istniejące już moduły funkcyjne RFC. Takie moduły mają dobrze zdefiniowane parametry wejściowe, a zatem stanowią idealną „bramkę”, przez którą można wprowadzić dane faktury do SAP. Często w parze z zewnętrznym OCR występuje bowiem oprogramowanie dedykowane w SAP (firmy dostarczającej workflow, OCR itp.). W tej sytuacji można zaimplementować dedykowany adapter wyjściowy, który na podstawie dokumentu z KSeF napełni i w odpowiedni sposób wywoła moduł do wprowadzania danych OCR. Unikniemy wtedy OCR-owania faktur krajowych.
Scenariusz #6
Firma posiada oprogramowanie Vendor Invoice Management by OpenText (tzw. VIM, OT VIM):
- można podejść do problemu analogicznie jak w scenariuszu #4;
- zakładamy jednak, że w przypadku integracji z VIM będziemy wykorzystywać adapter generujący wejściowy komunikat IDOC (INVOIC);
- VIM posiada odpowiedni moduł procesujący faktury wprowadzane via IDOC (we wszystkich wersjach), dlatego uznaliśmy, że takie podejście będzie najbardziej uniwersalne;
- wizualizacja PDF zostanie dołączona do dokumentu DP i zarchiwizowana w tym samym repozytorium, którego używa VIM.
Scenariusz #7
Firma wdraża lub będzie wdrażała zewnętrzny system workflow, do którego będą trafiać faktury zakupowe, zanim zostaną wprowadzone do SAP:
- można podejść do problemu podobnie jak w scenariuszu #5 (obojętnie który wariant);
- oferujemy osobny produkt All for One Invoice Integration Gateway, który jest gotowym pakietem integracyjnym dla takiego scenariusza (ramka poniżej).
Scenariusz #8
Firma wdraża lub będzie wdrażała zewnętrzny system workflow – All for One Enterprise Content Management, do którego będą trafiać faktury zakupowe, zanim zostaną wprowadzone do SAP:
- sytuacja analogiczna do scenariusza #7;
- All for One Enterprise Content Management jest platformą BPMN, którą poza fakturami można wykorzystać również do zupełnie innych celów, obiegów innych typów dokumentów, niekonieczne powiązanych z SAP, np. umów czy wniosków o uprawnienia;
- przesłanką do akceptacji faktur w All for One Enterprise Content Management (zamiast np. w InvoiceFlow) jest występowanie na ścieżkach wielu akceptujących, którzy nie są użytkownikami SAP, a także akceptowanie faktur kosztowych, które nie mają referencji do zamówień.
All for One Invoice Integration Gateway
All for One Invoice Integration Gateway (IGW) jest gotowym pakietem integracyjnym, który można wykorzystać podczas projektów implementacji zewnętrznych systemów workflow dla faktur. W tego typu projektach całość procesu weryfikacji faktury odbywa się w zewnętrznym narzędziu firmy trzeciej (scenariusz #7) lub w systemie Rockawork (scenariusz #8). Natomiast niezbędna jest implementacja interfejsów pomiędzy SAP a systemem workflow.
IGW oferuje zestaw WebService’ów (SOAP), które z jednej strony pozwalają pobrać do zewnętrznego systemu workflow dane dostawców, dane kont bankowych dostawców, otwarte do fakturowania zamówienia, elementy dekretacji (MPK, zlecenie, konta KG), status faktury w SAP, a z drugiej strony pozwalają przyjąć dane faktury do SAP.
Zalety interfejsu:
– Pozwala jednolicie przyjąć dane faktury do moduł MM, a także do modułu FI oraz tzw. bufora. Dostawca zewnętrznego systemu workflow musi przygotować jedną implementację wywołania WebService’u dla MM, FI i bufora po swojej stronie;
– Zakres przyjmowanych danych: nagłówek + propozycje alokacji: numery zamówień, dowody dostawy. Pozycje mogą zostać zaimplementowane na życzenie klienta;
– W przypadku FI możemy zdecydować, czy chcemy procesować dokument w SAP transakcją klasyczną, czy nowszą (FV60);
– Następuje powiązanie z PDF, który jest widoczny jako załącznik w SAP;
– Funkcja bufora jest potrzebna dla nietypowych scenariuszy, np. księgowość nie chce wstępnie wprowadzić dokumentu ani jako MM, ani jako FI, bo np. chce zaksięgować dokument jako kopię istniejącego (powielane są te same dekretacje i kwoty co miesiąc) lub ma specjalną niestandardową transakcję do ładowania danych faktury (np. za paliwo, za telefon itp.);
– Po poprawnym zapisie dokumentu wstępnie wprowadzonego do MM/FI/bufora wywoływane jest zadanie workflow i kierowane do pracowników działu księgowego w celu finalizacji księgowania faktury. W zadaniu automatycznie wywoływana jest wizualizacja faktury i formatka do dokończenia księgowania (MIR4 dla MM czy FV60 dla FI; w przypadku zapisu do bufora wywoływaną transakcję należy skonfigurować podczas projektu);
– Interfejs pozwala przyjąć numer faktury w rozwiązaniu workflow (ECM ID) oraz numer w systemie KSeF (KSeF ID), co może być podstawą do aktualizacji statusu w monitorze KSeF.
Pozostałe funkcjonalności
Narzędzie All For One KSeF Purchase Invoices umożliwia także odfiltrowanie dokumentów z dalszego przetwarzania. Potrzeba ta może wyniknąć z aktualnie wdrożonych procesów np.:
- wykluczenie z przetwarzania faktur stanowiących koszt pracowniczy (delegacje, hotele, wydatki) – zdeterminowane na podstawie metody i statusu płatności (zapłacono). Częstą praktyką jest przekazywanie takich dokumentów bezpośrednio przez pracownika, którego dotyczy dany wydatek. Faktura ustrukturyzowana może nie zawierać danych pracownika, co prowadzi do „dochodzenia”, jaka jest podstawa danej faktury. Możliwy jest scenariusz, gdzie takie faktury będą zatrzymywane w kokpicie KSeF celem podmiany dostawcy na dostawcę-pracownika i następnie wprowadzenie nagłówka faktury do docelowego miejsca przeznaczenia, np. modułu MM/FI;
- wstrzymanie faktur danego dostawcy – jeżeli mamy już zestawione kanały wymiany faktur, z których nie chcemy rezygnować (np. EDI). W takim przypadku możemy zatrzymać faktury w kokpicie KSeF, dzięki czemu nie doprowadzimy do dublowania dokumentów.
Rozszerzenia
All for One KSeF Purchase Invoices oferuje bardzo dużo punktów rozszerzeń, w których można wpłynąć na kształt i działanie rozwiązania. Poniżej wymieniono kilka z nich:
- Możliwość rozszerzenia tabeli w monitorze KSeF;
- Możliwość modyfikacji domyślnego mapowania nagłówka;
- Możliwość implementacji mapowania pozycji;
- Możliwość rozszerzania istniejących adapterów wyjściowych;
- Możliwość implementacji własnych, dedykowanych adapterów wyjściowych;
- Możliwość zmiany wizualizacji faktury;
- Możliwość modyfikacji sposobu wyboru adaptera wyjściowego;
- Możliwość modyfikacji sposobu determinacji kodów podatku dla stawek w nagłówku;
- Możliwość modyfikacji sposobu określania warunku płatności (z XML lub z dostawcy).
Podsumowanie
All for One KSeF Purchase Invoices jest kompleksowym dodatkiem umożliwiającym dalsze przetwarzanie faktur KSeF (przede wszystkim w SAP, ale i poza nim). Zaproponowane w nim rozwiązania wynikają wprost z naszego wieloletniego doświadczenia przy implementowaniu narzędzi workflow dla faktur zakupowych. Firmy przez wiele lat wypracowały bardzo różne sposoby pracy z fakturami zakupowymi, często wspierane odmiennymi narzędziami. All for One KSeF Purchase Invoices jest dodatkiem, który ma być mostem łączącym z jednej strony KSeF, a z drugiej istniejące rozwiązania do obsługi faktur zakupowych.
Dodatek All for One Invoice Integration Gateway może być użyty w specyficznych rodzajach projektów, gdzie implementowane są zewnętrzne systemy workflow (procesowo ulokowane przed księgowaniem w SAP), w szczególności dodatek IGW stanowi uzupełnienie produktu All for One Enterprise Content Management.