KSeF API a przesyłanie faktur do systemów zewnętrznych

W codziennej obsłudze dokumentów majątkowych liczy się nie tylko sposobność wystawienia faktury, ale także sposób, w jaki informacje o niej trafiają do kolejnych systemów. Przy niewielkiej liczbie dokumentów część czynności można wykonywać ręcznie, natomiast wraz ze wzrostem liczby operacji pojawia się wymaganie uporządkowania całego przepływu danych. KSeF API stanowi warstwę komunikacji, dzięki której zewnętrzne aplikacje mogą wymieniać informacje z Krajowym Systemem e-Faktur w zgodzie z określonym sposobem działania interfejsu.

W praktyce oznacza to konieczność dostosowania systemu źródłowego do wymagań dotyczących danych, autoryzacji a także obsługi odpowiedzi. Samo nawiązanie połączenia jest tylko jednym z etapów. Znacznie więcej decyzji pojawia się w przyszłości, gdy powinno się ustalić, co system zrobi z dokumentem przed wysłaniem, jak zapisze jego status i jak zachowa się w sytuacji wystąpienia błędu.

Przygotowanie integracji zaczyna się od określenia rzeczywistego obiegu informacji. Nie każdy system potrzebuje pobierać i wysyłać wnikliwie te same dane, a próba objęcia automatyzacją wszystkich możliwych operacji od początku może niepotrzebnie skomplikować rozwiązanie. Integracja z KSeF API powinna więc uwzględniać konkretne procesy zachodzące w danym środowisku. Przeciwnie wygląda przekazywanie kilku faktur dziennie, a inaczej sytuacja, w której dokumenty powstają w sposób automatyczny w wielu oddziałach i są przesyłane w krótkich odstępach czasu. W drugim przypadku znaczenie ma kolejność operacji, kontrola powtórzeń oraz sposób przechowywania informacji o wytworzonych czynnościach. Bardzo dobrze zaprojektowany przepływ musi także rozpoznawać sytuacje, w których faktura nie powinna zostać wysłana, ponieważ dane wejściowe wymagają wcześniejszej korekty. Pozwala to oddzielić problemy wynikające z zawartości dokumentu od problemów technicznych związanych z samą komunikacją.

W praktyce szczególnej sugestie wymaga obsługa sytuacji, które nie występują w trakcie typowego przebiegu procesu. Przerwane połączenie, brak odpowiedzi w oczekiwanym czasie czy odrzucenie danych mogą pozostawić użytkownika z pytaniem, jaki jest aktualny stan dokumentu. System nie powinien wtedy opierać się jedynie na najprostszym oznaczeniu „wysłano” albo „nie wysłano”. Potrzebne są bardziej precyzyjne informacje, ponieważ ponowne wykonanie tej samej operacji bez sprawdzenia jej wcześniejszego rezultatu może prowadzić do niepożądanych powtórzeń. Z kolei brak mechanizmu ponawiania może wymagać ręcznego wyszukiwania dokumentów, których obsługa została przerwana. Właśnie dlatego przy projektowaniu komunikacji warto od początku uwzględnić rejestrowanie zdarzeń i możliwość odtworzenia przebiegu konkretnej operacji. Taka historia jest przydatna również wówczas, gdy po pewnym czasie trzeba wyjaśnić, dlaczego dany dokument otrzymał określony status.

Na sposób działania rozwiązania wpływa także utrzymanie go po uruchomieniu. Integracja nie kończy się w chwili, gdy pierwsza faktura zostanie właściwie przekazana. Zmiany w środowisku, aktualizacje oprogramowania, modyfikacje procesów wewnętrznych czy pojawienie się nowych przypadków obsługi mogą wymagać sprawdzenia dotychczasowych mechanizmów. Istotne jest także rozdzielenie danych testowych od rzeczywistych a także zachowanie kontroli nad uprawnieniami wykorzystywanymi przez aplikację. W przypadku większych systemów przydatne są informacje pozwalające bardzo szybko ustalić, na którym etapie znajduje się dokument i czy wymaga działania użytkownika. Ma to znaczenie w szczególności wówczas, gdy automatyzacja obejmuje kilka kolejnych czynności, a błąd na jednym etapie wpływa na następne. KSeF API jest zatem częścią większego procesu technologicznego, w którym sposób przygotowania danych, komunikacja, kontrola statusów i obsługa wyjątków muszą zostać ze sobą należycie powiązane.

Zobacz więcej: KSeF API dokumentacja.

Dodaj komentarz