Integracja KSeF z systemem ERP – jak przygotować infrastrukturę

Wdrożenie KSeF to nie tylko zmiana w prawie podatkowym – to projekt informatyczny, który wymaga przemyślanej architektury technicznej. Firmy, które p

Wdrożenie KSeF to nie tylko zmiana w prawie podatkowym – to projekt informatyczny, który wymaga przemyślanej architektury technicznej. Firmy, które podchodzą do integracji jak do “zmiany ustawień w programie”, szybko odkrywają, że rzeczywistość jest bardziej złożona. Te, które od początku traktują KSeF jak projekt IT, wychodzą z procesu z dobrze działającą infrastrukturą i minimalnymi kosztami utrzymania.

W tym artykule przechodzę przez wszystkie warstwy technicznej integracji KSeF z systemem ERP: od oceny gotowości istniejącej infrastruktury, przez wybór modelu integracji, aż po testy i wdrożenie produkcyjne.

Od czego zacząć – ocena gotowości infrastruktury

Zanim zaczniesz cokolwiek konfigurować, musisz wiedzieć, z czym pracujesz. Ocena gotowości infrastruktury obejmuje kilka wymiarów.

Inwentaryzacja systemów wystawiających faktury

Pierwsze pytanie brzmi: skąd faktycznie wychodzą faktury w twojej organizacji? W wielu firmach odpowiedź jest zaskakująco skomplikowana. Faktury mogą powstawać w:

  • Głównym systemie ERP (SAP, Microsoft Dynamics, Comarch ERP, Symfonia, Enova)
  • Systemie sprzedażowym lub CRM zintegrowanym z ERP
  • Dedykowanym module fakturowania
  • Arkuszach Excel z makrami (tak, to ciągle istnieje w wielu MŚP)
  • Systemach sklepów internetowych
  • Osobnych systemach dla różnych jednostek biznesowych

Każde z tych miejsc to osobny punkt integracji z KSeF. Jeśli nie zinwenturyzujesz wszystkich źródeł faktur, za kilka miesięcy odkryjesz, że część faktur nadal wychodzi “starym” kanałem – co oznacza naruszenie obowiązku KSeF.

Ocena możliwości systemu ERP

Następnie musisz sprawdzić, co twój system ERP potrafi w kontekście KSeF. Kluczowe pytania:

  • Czy producent ERP dostarczył już moduł KSeF lub planuje to zrobić?
  • Czy ERP obsługuje eksport danych w formacie XML zgodnym z FA(2)?
  • Czy system ma wbudowany klient API do komunikacji z serwisami zewnętrznymi?
  • Jaka jest polityka aktualizacji producenta w kontekście zmian w schemacie FA(2)?

Większość liczących się producentów ERP na polskim rynku – Comarch, Sage, Soneta (Enova), Insert, Symfonia – dostarczyła już moduły KSeF. Sytuacja jest gorsza przy mniej popularnych systemach i rozwiązaniach własnych.


Architektura integracji – trzy modele

W praktyce firmy wybierają jeden z trzech modeli integracji KSeF z systemem ERP. Każdy ma swoje wady i zalety.

Model 1 – integracja natywna (ERP bezpośrednio do KSeF API)

SYSTEM ERP | | generuje XML FA(2) | wysyła bezpośrednio v KSeF API (MF) | | zwraca KSeF ID v SYSTEM ERP (zapisuje KSeF ID przy fakturze)

W tym modelu system ERP samodzielnie obsługuje całą komunikację z API KSeF. Wystawia fakturę, generuje plik XML, wysyła do MF, odbiera KSeF ID i zapisuje go w bazie danych.

Zalety: prostota architektury, jeden punkt odpowiedzialności, łatwość diagnostyki. Wady: pełna zależność od gotowości modułu KSeF w systemie ERP, ograniczona możliwość dostosowania logiki biznesowej.

Model 2 – middleware (ERP + warstwa pośrednia)

SYSTEM ERP | | eksportuje dane faktury | (np. JSON, EDI, CSV) v MIDDLEWARE (własny serwis lub iPaaS) | | transformacja do XML FA(2) | walidacja struktury | zarządzanie tokenami v KSeF API (MF) | | zwraca KSeF ID v MIDDLEWARE | | odesłanie KSeF ID do ERP v SYSTEM ERP

Middleware to osobna warstwa oprogramowania odpowiedzialna za transformację danych i komunikację z KSeF. Może to być własny mikroserwis, platforma iPaaS (np. Make, n8n, MuleSoft) lub dedykowane oprogramowanie KSeF.

Zalety: elastyczność, możliwość obsługi wielu systemów źródłowych, uniezależnienie od ERP. Wady: dodatkowy komponent do utrzymania, potencjalny punkt awarii.

Model 3 – outsourcing do biura rachunkowego lub operatora KSeF

SYSTEM ERP | | eksportuje dane faktury v BIURO RACHUNKOWE lub OPERATOR KSeF | | obsługuje komunikację z KSeF | nadaje KSeF ID v ZWROT POTWIERDZENIA do systemu ERP lub e-mail

Ten model jest odpowiedni dla małych firm, które nie mają zasobów IT do obsługi integracji. Biuro rachunkowe lub zewnętrzny operator przejmuje odpowiedzialność za komunikację z KSeF.

Zalety: zero inwestycji w IT, przeniesienie odpowiedzialności technicznej. Wady: opóźnienia w procesie, dodatkowy koszt, zależność od zewnętrznego podmiotu.


Wymagania techniczne API KSeF

API KSeF udostępniane przez Ministerstwo Finansów to REST API z autentykacją przez tokeny.

Endpointy

API KSeF ma dwa środowiska:

Oba środowiska mają identyczną strukturę – różnią się tylko URL-em bazowym. To ważne: wszystkie testy integracji rób na środowisku testowym, zanim trafisz na produkcję.

Schemat sesji i wysyłki faktury

`START SESJI | v GET /online/Session/AuthorisedChallenge | (zwraca challenge do podpisania) v PODPISZ CHALLENGE (kwalifikowany podpis lub pieczęć) | v POST /online/Session/InitToken | (zwraca token sesji) v MASZ TOKEN SESJI | v POST /online/Invoice/Send | (wysyłasz XML faktury) | (zwraca ReferenceNumber) v CZEKAJ NA PRZETWORZENIE (polling co kilka sekund) | v GET /online/Invoice/Status/{Ref} | (status: Processed/Error) v JEŚLI Processed:

  • zapisz KSeF ID w ERP JEŚLI Error:
  • obsłuż błąd, popraw XML, wyślij ponownie | v POST /online/Session/Terminate (koniec sesji - WAŻNE!)`

Autentykacja

KSeF obsługuje kilka metod autentykacji: podpis kwalifikowany (certyfikat kwalifikowany zgodny z eIDAS), pieczęć elektroniczna (certyfikat pieczęci dla podmiotów prawnych) oraz token autoryzacyjny wygenerowany przez system (po pierwszym uwierzytelnieniu). W praktyce systemy ERP używają tokenów autoryzacyjnych, które są generowane raz i następnie używane przez system bez dalszego udziału człowieka.


Generowanie XML FA(2) – kluczowe wyzwania

Generowanie poprawnego pliku XML FA(2) to serce całej integracji. Schemat XSD jest publicznie dostępny na stronach MF, ale ma kilka “pułapek”.

Kolejność elementów ma znaczenie

XML Schema Definition definiuje nie tylko typy danych, ale też kolejność elementów. Jeśli twój generator XML umieszcza elementy w innej kolejności niż wymagana przez schemat, walidacja po stronie MF zakończy się błędem. To częsty problem przy ręcznym konstruowaniu XML-a.

Pola warunkowe

Część pól jest obowiązkowa tylko przy określonych warunkach – np. numer rachunku bankowego jest wymagany tylko gdy forma płatności to przelew, albo określone kody są wymagane dla transakcji wewnątrzwspólnotowych. Logika warunkowa musi być zaimplementowana w generatorze XML.

Obsługa walut i wersjonowanie schematu

Faktury w walutach obcych wymagają podania zarówno kwot w walucie oryginalnej, jak i przeliczenia na PLN według kursu NBP. Kurs musi być aktualny i zgodny z przepisami o VAT. Schemat FA(2) może być też aktualizowany przez MF – producenci systemów ERP muszą śledzić zmiany i aktualizować logikę generowania XML. To argument za wyborem ERP z aktywnym wsparciem producenta.


Infrastruktura i bezpieczeństwo

Przechowywanie tokenów

Token autoryzacyjny KSeF daje dostęp do wszystkich faktur twojej firmy – jego przejęcie przez osobę trzecią to poważny problem. Token musi być przechowywany bezpiecznie: nie w plikach konfiguracyjnych aplikacji, nie jako niezaszyfrowana zmienna środowiskowa, ale w dedykowanym vault (np. HashiCorp Vault, Azure Key Vault, AWS Secrets Manager), z rotacją tokenów zgodną z polityką bezpieczeństwa.

Monitoring, alerty i procedury awaryjne

Integracja KSeF powinna mieć monitoring obejmujący: status wysyłki każdej faktury, czas odpowiedzi API MF, alerty przy błędach walidacji XML oraz alerty przy niedostępności API KSeF.

Co robić gdy KSeF API jest niedostępne? Przepisy przewidują sytuacje awaryjne – przy niedostępności systemu można wystawiać faktury “offline” i przesłać je do KSeF gdy system wróci. Firma musi mieć opisaną procedurę awaryjną i narzędzie do przechowania faktur “do wysłania”.


Plan wdrożenia – od testów do produkcji

Bezpieczne wdrożenie integracji KSeF przebiega przez kilka etapów:

  1. Konfiguracja środowiska testowego KSeF – rejestracja w ksef-test.mf.gov.pl, pobranie danych testowych
  2. Implementacja generatora XML FA(2) i klienta API w wybranej technologii
  3. Walidacja XML na środowisku testowym – testowanie wszystkich scenariuszy faktur
  4. Testy integracyjne z systemem ERP – pełny przepływ: ERP > XML > KSeF test > KSeF ID > ERP
  5. Testy wydajnościowe – czy integracja obsługuje szczytowe wolumeny faktur?
  6. Testy procedur awaryjnych – symulacja niedostępności KSeF
  7. Szkolenie użytkowników i działu IT
  8. Wdrożenie produkcyjne z monitoringiem
  9. Obserwacja przez pierwszych 30 dni

Więcej o samym API i środowisku testowym znajdziesz w artykule KSeF API – dokumentacja, środowisko testowe i pierwsza integracja. Zasady wystawiania faktur korygujących opisuję w artykule Faktury korygujące w KSeF – zasady, terminy i pułapki. Jeśli szukasz wskazówek przy wyborze systemu ERP dla MŚP, przeczytaj artykuł System back office dla MŚP – na co zwrócić uwagę przy wyborze. O narzędziach do automatyzacji procesów piszę w artykule Narzędzia do automatyzacji procesów biznesowych – przegląd i porównanie.


Koszty integracji – czego się spodziewać

Koszty integracji KSeF różnią się drastycznie w zależności od wybranego modelu i złożoności środowiska:

  • Moduł KSeF w standardowym ERP (Comarch, Enova, Symfonia) – od kilku do kilkunastu tysięcy złotych za licencję plus wdrożenie
  • Własny middleware lub mikroserwis – od 20 000 do 100 000+ zł w zależności od złożoności i stawek developerów
  • Outsourcing do operatora – kilkaset złotych miesięcznie dla małej firmy
  • Koszty ukryte: szkolenia, testy, aktualizacje schematu FA(2), monitoring

Kluczowy błąd to zakładanie, że “wystarczy jeden raz wdrożyć i gotowe”. KSeF wymaga utrzymania: aktualizacji schematu, monitoringu, obsługi błędów, szkoleń dla nowych pracowników.

Podsumowanie

Integracja KSeF z systemem ERP to projekt wymagający systematycznego podejścia. Kluczowe decyzje to wybór modelu integracji (natywna, middleware, outsourcing) oraz ocena gotowości istniejącego ERP. Niezależnie od wybranej drogi, wdrożenie musi obejmować bezpieczne przechowywanie tokenów, monitoring, procedury awaryjne i testy na środowisku testowym MF.

Firmy, które potraktują integrację KSeF jako jednorazowy “checkbox” do odhaczenia, szybko przekonają się, że system wymaga ciągłej opieki. Firmy, które zainwestują w solidną architekturę od początku, będą czerpać korzyści przez lata.

// Kontakt

Gotowy na rozmowę
o Twoim projekcie?

Opisz nam swój problem lub cel biznesowy. Odpiszemy w ciągu jednego dnia roboczego z wstępną oceną i pytaniami, które pomogą nam przygotować rzetelną wycenę.

Nie chcesz pisać maila albo czekać na odpowiedź?
Wpadnij na naszego Discorda — pogadamy na luzie, bez zbędnych formalności.

Pogadajmy na Discordzie →

Lokalizacja

Polska / Remote

Odpowiedź

do 24h roboczych