FAQ – Najczęściej zadawane pytania dotyczące KSeF


Jeśli wyszukiwanie nie reaguje, skorzystaj z funkcji „Znajdź na stronie” w menu Twojej przeglądarki.



Wdrożenie KSeF 2.0

Pytanie: Kiedy będzie można przetestować nową wersję 2.0?

Odpowiedź: Od 28 stycznia 2026 r. została udostępniona możliwość weryfikacji usług KSeF 2.0 na środowisku produkcyjnym.

Pytanie: Od kiedy KSeF 2.0 staje się obowiązkowy?

Odpowiedź: Oficjalne udostępnienie KSeF 2.0 nastąpiło 1 lutego 2026 r. Od tego dnia:

  • KSeF 2.0 stał się jedynym dostępnym i obligatoryjnym systemem.
  • Wersja KSeF 1.0 (wraz z MCU) została całkowicie wyłączona.


Pytanie: Od której wersji Comarch BPM wspierany jest KSeF 2.0?

Odpowiedź: Wsparcie dla komunikacji ze środowiskiem KSeF 2.0 (w tym obsługi struktury FA(3)) w wersji produkcyjnej oraz przedprodukcyjnej (Demo) zapewnia wersja Comarch BPM 2026.0.0.

Chociaż wstępna obsługa KSeF 2.0 pojawiła się w wersji Comarch BPM 2025.2.3, aktualizacja do wersji Comarch BPM 2026.0.0 jest obecnie niezbędna z dwóch kluczowych powodów:

1. Wyłączenie starych linków (17.01.2026): Ministerstwo Finansów z dniem 17 stycznia 2026 r. całkowicie wyłączyło dotychczasowe adresy API. Starsza wersja Comarch BPM 2025.2.3 korzysta z nieaktywnych już odnośników, co powoduje błędy połączenia w środowisku Demo. Wersja 2026.0.0 posiada zaktualizowane adresy bazowe.

2. Nowy parametr konfiguracji: W wersji Comarch BPM 2026.0.0 dodano możliwość zastosowania klucza KSeFProdVersion, który jest niezbędny do poprawnej identyfikacji i obsługi protokołów API 2.0. Sposób łączenia się z KSeF definiują następujące wpisy w pliku Web.config:

  • Środowisko Demo: Parametr KSeFWorkMode należy ustawić na wartość Demo.
  • Środowisko Produkcyjne (obowiązuje od 1 lutego 2026 r.): Praca na produkcyjnym API 2.0 obowiązuje od 1 lutego 2026 r. Aby ją aktywować, należy w pliku Web.config aplikacji serwerowej ustawić parametry:
    • <add key=”KSeFWorkMode” value=”Production” />
    • <add key=”KSeFProdVersion” value=”2” /> – zmiana wartości na „2” informuje system, że od 1 lutego ma korzystać z nowej wersji interfejsu produkcyjnego.

Ważne
Wersja 2026.0.0 jest obecnie jedyną wersją gwarantującą stabilną współpracę z aktualnymi wytycznymi Ministerstwa Finansów i nowymi adresami bazowymi bramki KSeF.

Pytanie: Dlaczego podczas próby pobrania dokumentów z KSeF pojawia się komunikat:

Wystąpił błąd: KSeF InitSession – Strona KSeF chwilowo niedostępna. Sprawdź komunikaty na stronach https://www.gov.pl/web/kas/komunikaty ?

Odpowiedź:

1. Konfiguracja parametrów połączenia

W pliku konfiguracyjnym aplikacji serwerowej (Web.config) należy zweryfikować i ustawić poniższe klucze, aby wymusić komunikację z aktualną wersją systemu:

  • <add key=”KSeFWorkMode” value=„Production” />
  • <add key=”KSeFProdVersion” value=„2” />

Po zmianach w pliku Web.config konieczny jest restart puli aplikacji w menedżerze IIS, aby nowe ustawienia zostały wczytane.

Pytanie: Dlaczego podczas próby pobrania dokumentów z KSeF pojawia się komunikat:

Wystąpił błąd: KSeF2 AuthorizationWithKsefTokenAsync – Authorization failed: AuthenticationWithKsefToken: Nieautoryzowany dostęp. Twój token dostępu może być nieprawidłowy lub wygasł.

Odpowiedź: Komunikat AuthenticationWithKsefToken: Nieautoryzowany dostęp oznacza odrzucenie żądania przez serwer produkcyjny Ministerstwa Finansów. Przyczyną jest brak możliwości poprawnej weryfikacji uprawnień na podstawie dostarczonego tokena, co najczęściej wynika z wejścia w życie nowej wersji interfejsu (v2) od 1 lutego.

Sposób rozwiązania:

1. Konfiguracja parametrów połączenia

W pliku konfiguracyjnym aplikacji serwerowej (Web.config) należy zweryfikować i ustawić poniższe klucze, aby wymusić komunikację z aktualną wersją systemu:

  • <add key=”KSeFWorkMode” value=„Production” />
  • <add key=”KSeFProdVersion” value=„2” />

Po zmianach w pliku Web.config zalecany jest restart puli aplikacji w menedżerze IIS, aby nowe ustawienia zostały wczytane.

2. Usunięcie nieaktualnych danych autoryzacyjnych

Przed wprowadzeniem nowych danych zaleca się wyczyszczenie starego tokena z bazy danych, aby uniknąć konfliktów. W tabeli do.DF_ConfCMDictionary, w polu CMD_KSeFToken, należy ustawić wartość NULL.

3. Generowanie nowego tokenu dostępowego:

  • Zalogowanie się bezpośrednio do Aplikacji Podatnika KSeF przy użyciu Profilu Zaufanego lub podpisu kwalifikowanego.
  • Wygenerowanie nowego tokena autoryzacyjnego.
  • Podczas generowania tokena, zaznaczenie kluczowych ról dostępowych:
    • Wystawianie faktur – niezbędne do wysyłki dokumentów.
    • Dostęp do faktur – odpowiada za pobieranie i odczyt danych.
    • Zarządzanie uprawnieniami – opcjonalnie, dla celów administracyjnych.
  • Wprowadzenie (wklejenie) nowego tokena w Comarch BPM.

WAŻNE
Po wprowadzonych zmianach należy uruchomić jednorazowo aplikację Comarch BPM z uprawnieniami Administratora.

Pytanie: Dlaczego podczas próby pobrania dokumentów z KSeF pojawia się komunikat:

Wystąpił błąd: KSeF2 GetInvoicesAsync – Get invoices error: QueryInvoiceMetadataAsync: Dostęp zabroniony. Możesz nie mieć uprawnień do wykonania tej operacji.

Odpowiedź: Komunikat błędu podczas operacji GetInvoicesAsync (pobieranie faktur) wskazuje na to, że sesja z serwerem KSeF została nawiązana, ale system Ministerstwa Finansów odrzucił żądanie z powodu niewystarczających uprawnień przypisanych do używanego tokena.

Sposob rozwiązania:

1. Weryfikacja ról tokena

Najczęstszą przyczyną błędu jest brak nadania uprawnień do odczytu danych przy generowaniu tokena:

  • Należy zalogować się do Portalu Podatnika KSeF.
  • W sekcji zarządzania tokenami należy sprawdzić, czy aktywny token ma zaznaczone role umożliwiające pobieranie/odczyt faktur.
  • Samo uprawnienie do „wystawiania faktur” nie pozwala na ich pobieranie.

2. Sprawdzenie zgodności numeru NIP:

  • Konieczna jest weryfikacja, czy NIP podany w konfiguracji systemu Comarch BPM jest identyczny z NIP-em podmiotu w Portalu Podatnika.
  • Niezgodność numeru NIP skutkuje natychmiastowym zablokowaniem operacji przez bramkę MF.

3. Wygenerowanie nowego tokena

Jeśli uprawnienia wydają się poprawne, a błąd nadal występuje, zaleca się:

  • Unieważnienie obecnego klucza w Portalu Podatnika.
  • Wygenerowanie nowego tokena autoryzacyjnego.
  • Podczas generowania tokena, zaznaczenie kluczowych ról dostępowych:
    • Wystawianie faktur – niezbędne do wysyłki dokumentów.
    • Dostęp do faktur – odpowiada za pobieranie i odczyt danych.
    • Zarządzanie uprawnieniami – opcjonalnie, dla celów administracyjnych.
  • Wprowadzenie (wklejenie) nowego tokena w Comarch BPM.

Pytanie: Dlaczego podczas próby pobrania dokumentów z KSeF pojawia się komunikat:

Wystąpił błąd: KSeF2 GetInvoicesAsync – Błąd pobierania faktur: QueryInvoiceMetadataAsync nie powiodło się: Zbyt wiele żądań. Proszę poczekać przed wysłaniem kolejnych żądań. (lub: Wystąpił błąd: KSeF2 GetInvoicesAsync – Get invoices error: QueryInvoiceMetadataAsync failed: Too many requests. Please wait before sending more requests.)

           

Odpowiedź: Pojawienie się tego komunikatu oznacza, że został osiągnięty tymczasowy limit zapytań kierowanych do serwerów Ministerstwa Finansów. Nie jest to błąd merytoryczny w dokumentach ani problem z uprawnieniami użytkownika, lecz techniczne ograniczenie przepustowości (tzw. rate limiting)

Zalecane działania:

1. Odczekać kilka minut: Należy wstrzymać się z kolejnymi próbami pobierania dokumentów (zazwyczaj od 5 do 15 minut), aby licznik zapytań po stronie serwera KSeF uległ zresetowaniu.

2. Ponowić próbę: Po upływie czasu oczekiwania operacja powinna zostać przetworzona poprawnie.

Pytanie: Dlaczego podczas próby pobrania dokumentów z KSeF pojawia się komunikat:

KSeF2 AuthorizationWithKsefTokenAsync – Authorization failed: Błąd połączenia sieciowego z https://api.ksef.mf.gov.pl/v2/auth/challenge: An error occurred while sending the request.

Odpowiedź: Błąd ten informuje o braku możliwości nawiązania stabilnego połączenia między programem, a serwerem Ministerstwa Finansów (api.ksef.mf.gov.pl). Problem występuje na etapie wysyłania żądania, co uniemożliwia weryfikację uprawnień.

Najczęstsze przyczyny:

  • Przerwa techniczna serwerów MF: Serwer KSeF może być chwilowo przeciążony, niedostępny lub trwają na nim prace serwisowe.
  • Blokada przez Firewall lub Antywirus: Lokalne zabezpieczenia sieciowe mogą blokować ruch wychodzący do domeny mf.gov.pl.
  • Brak dostępu do Internetu: Chwilowa niestabilność łącza internetowego po stronie użytkownika.
  • Problemy z protokołem TLS: System operacyjny może nie obsługiwać wymaganej wersji protokołu zabezpieczeń (np. wymagany jest TLS 1.2 lub wyższy) niezbędnej do połączenia z bramką rządową.

Sposób naprawy:

1. Weryfikacja statusu KSeF: Należy sprawdzić oficjalne komunikaty Ministerstwa Finansów dotyczące dostępności systemu e-Faktur.

2. Konfiguracja zabezpieczeń: Należy upewnić się, że program posiada uprawnienia do łączenia się z siecią w ustawieniach zapory systemowej (Firewall).

3. Ponowienie próby: W przypadku przeciążenia serwerów ministerialnych, zaleca się odczekanie kilku minut i ponowną próbę wysyłki.

Pytanie: Dlaczego podczas próby wygenerowania tokena z poziomu Comarch BPM pojawia się komunikat:

Error: KSeF2 AuthorizationAsync – Authorization failed: Brak dostępnych certyfikatów z kluczem prywatnym, w DocumentWorkflow.Desktop.KSeF.KSeFClient2.<AuthorizationAsync>d_5.MoveNext() — Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek

Odpowiedź: Komunikat ten oznacza, że aplikacja nie może uzyskać dostępu do certyfikatu kwalifikowanego niezbędnego do autoryzacji w systemie KSeF. Problem wynika zazwyczaj z braku połączenia z fizycznym czytnikiem kart, braku sterowników lub braku rejestracji certyfikatu w magazynie systemu Windows.

Sposób rozwiązania:

W celu uniknięcia problemów z lokalną konfiguracją podpisu cyfrowego, najskuteczniejszą metodą jest wygenerowanie tokena bezpośrednio przez stronę rządową.

W celu uzyskania aktualnego klucza autoryzacyjnego należy:

1. Zalogować się do Portalu Podatnika KSeF (wersja produkcyjna) przy użyciu Profilu Zaufanego lub podpisu kwalifikowanego.

2. W sekcji zarządzania tokenami wygenerować nowy klucz.

3. Nadać tokenowi pełne uprawnienia (wystawianie oraz przeglądanie faktur).

4. Aktualizacja w systemie Comarch BPMnowowygenerowany token należy wprowadzić do systemu w odpowiednim polu konfiguracyjnym modułu Comarch BPM.

Pytanie: Jaki port należy odblokować w zaporze sieciowej (Firewall), aby komunikacja z KSeF przebiegała pomyślnie?

Odpowiedź: System KSeF wymaga otwartego portu 443 (HTTPS) dla ruchu wychodzącego. Jest to standardowy port używany do bezpiecznego przeglądania stron internetowych i przesyłania danych zaszyfrowanych.

Pytanie: Dlaczego w wersji Comarch BPM 2025.2.3 podczas pobierania dokumentów z z KSeF poprzez punkt ACD Import dokumentów z KSeF pojawia się komunikat:

Wystąpił błąd: KSeF2 AuthorizationWithKsefTokenAsync – Authorization failed: KSeF error code: 21180 – Nieprawidłowe żądanie.

 

Odpowiedź: Opisany problem wynika z technicznej aktualizacji adresów środowisk KSeF przeprowadzonej przez Ministerstwo Finansów. Zgodnie z oficjalnym harmonogramem resortu, w celu wdrożenia docelowej infrastruktury KSeF 2.0, z dniem 17 stycznia 2026 r. dotychczasowe adresy usług zostały całkowicie wyłączone (wyłączono przekierowania ze starych adresów).

W związku z powyższym, wersja 2025.2.3 Comarch BPM przestała wspierać komunikację z serwerami KSeF. Aby przywrócić pełną funkcjonalność i zapewnić ciągłość pracy, należy zaktualizować aplikację do wersji 2026.0.0 Comarch BPM.

Nowa wersja wspiera ujednoliconą adresację dla wszystkich środowisk:

  • środowisko przedprodukcyjne (Demo) – działające na nowych adresach (api-demo.ksef.mf.gov.pl),
  • środowisko produkcyjne (API KSeF 2.0) – które od 1 lutego 2026 r. będzie dostępne wyłącznie z wykorzystaniem nowej adresacji (api.ksef.mf.gov.pl).

Ważne
Wersja 2026.0.0 jest obecnie jedynym wydaniem systemu Comarch BPM, które posiada zaktualizowane ścieżki dostępu do serwerów Ministerstwa Finansów i zapewnia poprawną obsługę środowiska produkcyjnego po zmianach wchodzących w życie z początkiem lutego.

Pytanie: Dlaczego nie zapisują się dane do integracji z KSeF przy ustawionym trybie współpracy Demo?
Po wprowadzeniu numeru NIP i tokenu i kliknięciu Zapisz dane znikają.

Odpowiedź: Wraz z przejściem Ministerstwa Finansów na API 2.0  dla KSeF  tryb Demo zmienił się format i długość tokenów autoryzacyjnych. Jeśli w systemie zapisany jest jeszcze stary (krótszy) token, baza danych Comarch BPM może blokować wpisanie nowego, dłuższego ciągu znaków, co powoduje błędy walidacji i uniemożliwia zapisanie zmian. Aby skutecznie wprowadzić nowy token, należy wykonać następujące kroki:

1. W tabeli do.DF_ConfCMDictionary, w polu CMD_KSeFToken należy wstawić wartość NULL

2. Uzupełnienie danych: Z poziomu Comarch BPM nalezy wejść w ustawienia integracji z KSeF.

3. Wstawić nowy token i zapisać wprowadzone zmiany.

Pytanie: Kiedy będzie możliwe skonfigurowanie BPM na odbiór faktur z wykorzystaniem certyfikatu, a nie tokenu?

Odpowiedź: Obsługa autoryzacji za pomocą certyfikatu została zaplanowana w wersji Comarch BPM 2026.0.1. Do tego czasu należy korzystać z tokenów generowanych w Aplikacji Podatnika KSeF.

Pytanie: Czy na dokumentach w Comarch ERP XL, które zostały wygenerowane przez Comarch BPM (po pobraniu z KSeF), parametr „Poza systemem” powinien być zaznaczony?

Odpowiedź: Tak. Jest to działanie prawidłowe. Zaznaczony checkbox „Poza systemem” jest informacją, że dany dokument nie został wystawiony bezpośrednio w ERP XL, lecz trafił do niego z zewnątrz (poprzez Comarch BPM).


Pytanie: Czy Comarch BPM w wersji 2026.0 obsługuje pieczęć elektroniczną do KseF?

Odpowiedź: Wsparcie dla wykorzystania kwalifikowanej pieczęci elektronicznej do uwierzytelniania w KSeF w wersji 2026.0 jest zapewnione. Generowanie tokenu KSeF odbywa się z poziomu aplikacji po uzupełnieniu NIP firmy oraz zainstalowaniu kwalifikowanej pieczęci elektronicznej. Tryb pracy KSeF (Demo/Production) konfigurowany jest w pliku Web.config za pomocą klucza KSeFWorkMode. Po wygenerowaniu token zostaje automatycznie zapisany w polu Token KSeF.

Link do dokumentacji: https://pomoc.comarch.pl/bpm/index.php/dokumentacja/konfiguracja-wspolpracy-comarch-bpm-z-ksef/


Pytanie: Czy można importować tylko wybrane faktury zakupu do Comarch BPM?

Odpowiedź: Możliwe jest dokonanie importu wg poniższych kryteriów:

  • Nowe – import dokonywany w tym trybie polega na pobraniu tych faktur, które zostały zarejestrowane od ostatniego importu tj. faktur z datą przyjęcia w KSeF równą i większą od daty dotąd pobranych faktur.
  • Za okres – importowane są faktury z datą przyjęcia w KSeF należącą do podanego przez Użytkownika okresu
  • Numer KSeF – importowana jest faktura o konkretnym, podanym przez Użytkownika numerze KSeF

Pytanie: Dlaczego podczas próby importu dokumentów z KSeF z poziomu Comarch BPM, którego folder z desktopem znajduje się w folderze z XL-em pojawia się komunikat o „Odmowie dostępu” do ścieżki …\DMS Desktop\Chrome\… lub nie można odnaleźć określonego pliku?

Przykład komunikatów:

Odmowa dostępu do ścieżki „C:\Program Files (x86)\Comarch ERP XL 2025.1\DMS Desktop\Chrome\Win64-124.0.6367.201\chrome-win64\D3DCompiler_47.dll”.

Odmowa dostępu do ścieżki „C:\Program Files (x86)\Comarch ERP XL 2025.1\DMS Desktop\ChromeHeadlessShell\Win64-124.0.6367.201\chrome-headless-shell-win64\chrome-headless-shell.exe”.

Lub

Nie można odnaleźć określonego pliku

Odpowiedź: Przy pierwszej próbie pobrania faktur, system próbuje pobrać i wypakować niezbędne biblioteki przeglądarki (Chromium) do wskazanego w komunikacie folderu. Folder Program Files jest domyślnie chroniony przez Windows. Zwykły użytkownik nie ma uprawnień do zapisu (tworzenia folderów i rozpakowywania plików .exe/.dll) w tej lokalizacji. Jednorazowe uruchomienie pliku BPM.exe jako Administrator pozwala systemowi „doinstalować” brakujące komponenty do odpowiednich podfolderów. Gdy pliki już tam będą, zwykły użytkownik będzie mógł z nich korzystać (tylko do odczytu/uruchomienia), co rozwiąże problem.

Pytanie: Dlaczego podczas próby importu dokumentów z KSeF z poziomu Comarch BPM pojawia się komunikat:

KSeF2 GetInvoiceAsync – Error downloading invoice 6871728417-20260101-1100C0F60040-A5: GetInvoiceByKsefAsync failed: Too many requests. Please wait before sending more requests.

Odpowiedź: Komunikat ten pochodzi bezpośrednio z serwerów KSeF. Oznacza on, że w krótkim czasie wysłano zbyt dużą liczbę zapytań do bramki Ministerstwa Finansów. Należy odczekać od kilku do kilkunastu minut i spróbować ponownie. Problem ten często ustępuje samoistnie po ustaniu chwilowego przeciążenia serwerów rządowych.


Pytanie: Dlaczego nie zapisują się dane do integracji z KSeF ? Po wprowadzeniu numeru NIP i tokenu i kliknięciu Zapisz dane znikają.

Odpowiedź: Gdy Ministerstwo Finansów przeszło na API 2.0, zmienił się format i długość generowanych tokenów. Jeśli w bazie danych (tabela do.DF_ConfCMDictionary, pole CMD_KSeFToken) znajduje się stary token, system często „gubi się” podczas próby nadpisania go nowym, dłuższym ciągiem znaków lub występuje konflikt walidacji. Należy w polu CMD_KSeFToken wstawić wartość NULL, uzupełnić dane integracji z KSeF z poziomu Comarch BPM i zapisać wprowadzone zmiany.


Pytanie: Dlaczego podczas generowania dokumentu do Comarch ERPXL pojawia się komunikat:

„Błąd XL Api. W funkcji XLKSeFUstalStatusDokumentu wystąpił błąd nr -400:”

Odpowiedź: Użytkownik, który generuje dokument do XL-a musi mieć na swojej karcie operatora w XL-u na zakładce Uprawnienia->Parametry zaznaczony parametr:

Edycja numeru KSeF na dok./Spinanie z KSeF na zatw. dok.

Pytanie: Czy w Comarch BPM jest możliwy do obsłużenia poniższy scenariusz:

  1. Wchodzę do XL/Optimy
  2. Pobieram dokumenty z KSEF
  3. Wchodzę do BPM – wybieram punkt ACD
  4. Pobieram dane z tabel KSEF XL/Optima
  5. Pobieram załącznik (wizualizację dokumentu KSeF)
  6. Generuję dokument w BPM
  7. Procesuję go – na odpowiednim etapie dodaję w ERP z informację o zatwierdzeniu dokumentu

Odpowiedź: Wszystkie punkty, oprócz punktu 5 są możliwe do obsłużenia w Comarch BPM. Na chwilę obecną nie jest możliwa wizualizacja dokumentów KSeF pobranych z ERP w punkcie ACD. Funkcjonalność jest zaplanowana do realizacji w kolejnych wersjach.

Pytanie: Czy dostępna jest dokumentacja pól KSeF z mapowaniem na BPM?

Odpowiedź: Schemat Mapowania Danych z Plików XML (struktura KSeF) do Konkretnych Tabel w Comarch BPM dostępna jest na stronach pomocowych pod linkiem:

https://pomoc.comarch.pl/bpm/index.php/dokumentacja/schemat-mapowania-danych-z-plikow-xml-struktura-ksef-do-konkretnych-tabel-w-comarch-bpm/

Pytanie: Dlaczego podczas importu dokumentów z KSeF (Tryb współpracy- Import dokumentów z KSeF) pojawia się komunikat:

Wystąpił błąd. Nieprawidłowa długość tablicy lub ciągu znaków Base-64.

Odpowiedź: Gdy Ministerstwo Finansów przeszło na API 2.0, zmienił się format i długość generowanych tokenów. Jeśli w bazie danych (tabela do.DF_ConfCMDictionary, pole CMD_KSeFToken) znajduje się stary token, system często „gubi się” podczas próby nadpisania go nowym, dłuższym ciągiem znaków lub występuje konflikt walidacji. Należy w polu CMD_KSeFToken wstawić wartość NULL, uzupełnić dane integracji z KSeF z poziomu Comarch BPM i zapisać wprowadzone zmiany.

Pytanie: W pliku Web.config aplikacji serwerowej mam ustawiony tryb KSeFWorkMode na „Demo”. W jaki sposób mogę wygenerować token do komunikacji z KSeF?

Odpowiedź: Aby wygenerować token autoryzacyjny dla trybu Demo, należy skorzystać z oficjalnego portalu serwisowego Ministerstwa Finansów przeznaczonego dla środowiska testowego. Należy postąpić zgodnie z poniższymi krokami:

1. Logowanie: Należy wejść na stronę  https://ap-demo.ksef.mf.gov.pl/web/ i zalogować się do aplikacji (np. przez Profil Zaufany, podpis kwalifikowany lub pieczęć elektroniczną).

2. Sekcja Tokenów: Po zalogowaniu, z menu bocznego należy wybrać zakładkę Tokeny” (dostępną w sekcji „Zarządzanie” lub „Uprawnienia”).

3. Generowanie: Po kliknięciu przycisku „Generuj token”, należy nadać mu nazwę własną oraz wybrać odpowiedni zakres uprawnień (np. wystawianie i przeglądanie faktur).

4. Zapisanie danych: Po zatwierdzeniu system wyświetli unikalny ciąg znaków (token).

Ważne

Token należy skopiować i zapisać w bezpiecznym miejscu natychmiast, ponieważ po zamknięciu okna nie będzie możliwości jego ponownego odczytania.

5. Konfiguracja w Comarch BPM:

Aby skonfigurować współpracę Comarch BPM z KSeF przy użyciu wygenerowanego tokenu, należy wprowadzić go w systemie w następujący sposób:

  • Dla trybu jednospółkowego: Na zakładce Ustawienia -> zakładka Integracje.
  • Dla trybu wielospółkowego: Na zakładce Ustawienia -> zakładka Połączenia z ERP -> ustawienia odpowiedniej spółki.

W ramach powyższych ustawień należy uzupełnić dane:

1. W polu „Nip firmy” należy wprowadzić NIP firmy, dla której ma odbywać się współpraca z KSeF.

2. W polu „Token KSeF” należy wprowadzić wygenerowany wcześniej token uwierzytelniający.

Uwaga
Token wygenerowany w środowisku Demo nie będzie działał po zmianie trybu pracy aplikacji na „Production”. Tryb produkcyjny wymaga wygenerowania osobnego tokenu na innym portalu Ministerstwa Finansów.

Pytanie: W dniu 17.01.2026 zostały wyłączone stare adresy środowisk KSeF. W związku z tym proszę o informację co należy zmienić w najnowszej wersji BPM 2026.0.0 by móc korzystać z KSeF ?

Odpowiedź: W wersji Comarch BPM 2026.0.0 nowe adresy są już obsłużone. Użytkownik nie musi wprowadzać żadnych zmian.

Pytanie: Gdzie z poziomu Comarch BPM konfiguruje się współpracę z KSeF?

Odpowiedź: Konfiguracja połączenia z Krajowym Systemem e-Faktur (KSeF) odbywa się w panelu konfiguracyjnym, a jej lokalizacja zależy od trybu pracy systemu (jednospółkowy lub wielospółkowy).

Lokalizacja ustawień:

Wymagane dane do uzupełnienia:

W obu przypadkach, aby poprawnie skonfigurować współpracę, należy wypełnić poniższe pola:

1. NIP firmy – numer identyfikacji podatkowej podmiotu, dla którego będą procesowane e-Faktury.

2.Token KSeF – unikalny ciąg znaków (token autoryzacyjny) wygenerowany wcześniej w systemie KSeF (np. poprzez Aplikację Podatnika KSeF), który umożliwia bezpieczną komunikację między Comarch BPM a bramką rządową.

Pytanie: Dlaczego podczas próby pobrania dokumentów z KSeF pojawia się komunikat: Wystąpiły błędy w zapisie?

Nie udało się nawiązać połączenia z usługą sieciową. Serwer zdalny zwrócił błąd: (403) Zabronione

 

Odpowiedź: Komunikaty mogą oznaczać, że system KSeF odrzuca połączenie ze względu na niewystarczające uprawnienia nadane w portalu.

Należy zweryfikować ustawienia bezpośrednio w Aplikacji Podatnika KSeF (link: https://ksef.mf.gov.pl/):

1. Weryfikacja Tokena: Proszę sprawdzić, czy wygenerowany Token ma przypisaną rolę „Dostęp do faktur” oraz „Wystawianie faktur”.

Uwaga
Jeśli token był generowany tylko z uprawnieniem do wystawiania, nie pozwoli on nam na pobranie faktur zakupowych.

2.Generowanie nowego Tokena: Najszybszym rozwiązaniem jest zazwyczaj wygenerowanie nowego tokena w zakładce „Tokeny”, upewniając się, że zaznaczono wszystkie dostępne pola uprawnień (prawa do odczytu i zapisu).
3. Status uprawnień: Proszę upewnić się, że osoba/podmiot generujący token ma nadal aktywne uprawnienia do zarządzania tym NIP-em.

Pytanie: Czy token wygenerowany w Module Certyfikatów i Uprawnień (MCU) w grudniu 2025 r. będzie wystarczający do uruchomienia procesów KSeF w BPM w wersji 2026.0.0?

Odpowiedź: Tak, taki token będzie poprawny, jednak będzie można z niego korzystać dopiero po 1 lutego 2026 r., po uprzednim przestawieniu trybu pracy systemu w pliku konfiguracyjnym.

Mimo możliwości wcześniejszego wygenerowania tokena w portalu MCU, należy pamiętać o następujących zasadach:

1. Zmiana trybu w pliku Web.config: Aby system BPM mógł zacząć korzystać z nowego tokena, niezbędne jest ręczne przestawienie klucza KSeFProdVersion na wartość „2„.

2. Termin wdrożenia: Zmianę tę można przeprowadzić 1 lutego 2026 r. Dopiero po przestawieniu trybu na „2” system przełączy się na architekturę API 2.0, która jest natywnym środowiskiem dla tokenów generowanych w MCU.

3. Zależność techniczna: Należy mieć na uwadze, że nowy token z MCU nie będzie współpracował ze starym trybem API 1.0 (value=”1″). Z tego względu wprowadzenie tokena do systemu i zmiana wartości w pliku Web.config muszą zostać wykonane równocześnie.

Ważne
Token wygenerowany w grudniu 2025 r. jest właściwy dla nowej architektury produkcji, jednak jego aktywacja w systemie Comarch BPM będzie możliwa po 1 lutego, poprzez obowiązkową zmianę parametru KSeFProdVersion na wartość „2” w pliku konfiguracyjnym.

Pytanie: Dlaczego podczas automatycznego pobierania dokumentów do systemu BPM w trybie DEMO pojawia się komunikat:
Wystąpił błąd: KSeF2 AuthorizationWithKsefTokenAsync – Authorization failed: AuthenticationWithKsefToken: Nieautoryzowany dostęp. Twój token dostępu może być nieprawidłowy lub wygasł.

Odpowiedź: Błąd ten oznacza, że próba połączenia ze środowiskiem testowym KSeF została odrzucona przez serwery Ministerstwa Finansów. W trybie DEMO (testowym) sytuacja ta występuje najczęściej z powodu cyklicznych prac serwisowych, podczas których dane testowe są resetowane, co powoduje unieważnienie dotychczasowych tokenów.

Aby rozwiązać problem, należy podjąć następujące kroki

1. Generowanie nowego tokenu DEMO: Należy zalogować się do Portalu Podatnika w wersji testowej (KSeF Demo), unieważnić poprzedni klucz i wygenerować nowy, przypisując mu pełne uprawnienia do zapytania o faktury i ich pobierania.

2. Aktualizacja parametrów połączenia w BPM: Nowy token należy wprowadzić w konfiguracji konektora KSeF lub w parametrach globalnych systemu BPM (zależnie od tego, gdzie przechowywane są dane uwierzytelniające dla procesów automatycznych).

3.Weryfikacja trybu środowiska: Należy sprawdzić, czy proces BPM nie próbuje łączyć się z bramką produkcyjną Ministerstwa Finansów przy użyciu tokenu wygenerowanego w portalu demo (adresy URL dla środowiska demo i produkcyjnego są różne).

WAŻNE
Po wprowadzonych zmianach należy uruchomić jednorazowo aplikację Comarch BPM z uprawnieniami Administratora.

Pytanie: Dlaczego przy próbie pobrania dokumentów z KSeF pojawia się komunikat: Wystąpiły błędy w zapisie?

Odpowiedź: Przy pierwszej próbie pobrania faktur, system próbuje pobrać i wypakować niezbędne biblioteki przeglądarki (Chromium) do wskazanego w komunikacie folderu. Folder Program Files jest domyślnie chroniony przez Windows. Zwykły użytkownik nie ma uprawnień do zapisu (tworzenia folderów i rozpakowywania plików .exe/.dll) w tej lokalizacji. Jednorazowe uruchomienie procesu BPM.eexe jako Administrator pozwala systemowi „doinstalować” brakujące komponenty do odpowiednich podfolderów. Gdy pliki już tam będą, zwykły użytkownik będzie mógł z nich korzystać (tylko do odczytu/uruchomienia), co rozwiąże problem.

Rozpoczynasz pracę z Comarch BPM (dawniej DMS) i chcesz dowiedzieć się, jak korzystać z programu? A może masz już podstawową wiedzę o Comarch BPM (dawniej DMS) i chcesz dowiedzieć się więcej?

Sprawdź Szkolenia Comarch BPM!

 




Obsługa KSeF w Comarch BPM – informacje




Konfiguracja współpracy Comarch BPM z KSeF

Współpracę Comarch BPM z KSeF można skonfigurować zarówno w trybie jednospółkowym, jak i w trybie wielospółkowym.

Aby skonfigurować współpracę Comarch BPM z KSeF, należy:

  • dla trybu jednospółkowego:  na zakładce Ustawienia -> zakładka Integracje:


1.  w ramach pola  „Nip firmy” wprowadzić NIP firmy, dla której ma odbywać się współpraca z KSeF

2. w ramach pola „Token KSeF” wprowadzić token uwierzytelniający w KSeF.

W wersji 2026.0.1 zachowano możliwość ustawienia tokenu KSeF – zarówno poprzez wklejenie tokenu, jaki przez jego generowanie – analogicznie jak w dotychczasowych wersjach.

 

Uwaga

Używanie tokenów KSeF jako jednej z metod autoryzacyjnych z usługą KSeF będzie dostępne nie dłużej niż do 31.12.2026.

 

Uwaga
Jeśli autoryzacja przez token zakończy się niepowodzeniem, wówczas podczas próby importu dokumentów z KSeF zostanie wyświetlone okno z certyfikatami, w ramach którego należy wskazać właściwy certyfikat.

Uwaga

W wersji 2024.0.1 w pliku Web.config w folderze aplikacji serwerowej (dawnej web) dodano klucz add key=”KSeFWorkMode” value=”Demo” /> – klucz umożliwia określenie, czy Firma testuje funkcjonalność wysyłania faktur do KSeF, czy korzysta z niej produkcyjnie.

Klucz może przybierać jedną z następujących wartości:

1.Demo –  w przypadku wprowadzenia takiej wartości praca z systemem KSeF odbywa się w trybie Demo;

2.Productionwartość domyślna od wersji 2026.0.0; w przypadku wprowadzenia takiej wartości praca z systemem KSeF odbywa się w trybie Produkcyjnym, czyli wersji produkcyjnej systemu;

3.Test – w przypadku wprowadzenia takiej wartości praca z systemem KSeF odbywa się w trybie testowym.

 

Uwaga
W celu przetestowania współpracy z Comarch BPM na prawdziwych danych zalecamy korzystanie z trybu Demo.

 

W kwestii różnic pomiędzy powyższymi trybami zob. Przełączanie trybu pracy z KSeF

 

Uwaga

W wersji 2026.0.0 w pliku Web.config w folderze aplikacji serwerowej (dawnej web) wprowadzono nowy klucz “KSeFProdVersion“, który ma umożliwić zmianę wersji KSeF dla pracy w trybie produkcyjnym. Klucz może przyjmować jedną z następujących wartości:

  • 1 – wartość domyślna w wersji 2026.0.0; możliwa jest praca w trybie produkcyjnym KSeF 1.0
  • 2 – możliwa jest praca w trybie produkcyjnym KSeF 2.0

Praca w trybie produkcyjnym KSeF 2.0 będzie możliwa jedynie wtedy, gdy <add key=”KSeFWorkMode” value=”Production” /> oraz <add key=”KSeFProdVersion” value=”2″ /> – ten tryb pracy będzie aktywny dopiero po uruchomieniu przez Ministerstwo Finansów środowiska produkcyjnego KSeF 2.0, tj. po 01.02.2026.

Klucz “KSeFProdVersion“ nie wpływa na pracę w trybie „Test“ oraz „Demo“.

Istnieje możliwość wygenerowania tokenu KSeF z poziomu Comarch BPM (dawniej DMS). W tym celu należy kliknąć w link [Wygeneruj token] znajdujący się obok pola „Token KSeF”, a następnie w oknie „Wybierz certyfikat” wybrać odpowiedni certyfikat uwierzytelniający.

Po wyborze certyfikatu zostanie wygenerowany token KSeF, który zostanie automatycznie wprowadzony w ramach pola „Token KSeF”.

Wprowadzone zmiany należy zapisać za pomocą przycisku  [Zapisz], dostępnego w ramach sekcji.

 

Uwaga
Aby wygenerować token konieczne jest zainstalowanie kwalifikowanego podpisu/pieczęci, za pomocą którego możliwe jest uwierzytelnienie się na stronach ministerstwa.

Aby wygenerować token uwierzytelniający, należy najpierw uzupełnić pole „NIP Firmy”.

Jeżeli użytkownik nie uzupełni pola „NIP Firmy” i naciśnie link [Wygeneruj token], wówczas zostanie wyświetlony następujący komunikat.

Komunikat wyświetlany, jeśli nie wpisano numeru NIP w polu „NIP Firmy”, ale naciśnięto link „Wygeneruj token”

Wskazówka

Jeżeli operator pracuje w trybie Demo współpracy z KSeF 2.0, wówczas może:

  • wybrać odpowiedni certyfikat w ramach okna wyświetlanego po kliknięciu w przycisk [Wygeneruj token]. Wówczas w polu „Token KSeF” zostanie wprowadzony token. Wprowadzone zmiany powinny zostać zapisane.

 

lub

  • przejść na stronę https://ap-demo.ksef.mf.gov.pl/web, kliknąć w pole „Uwierzytelnij sie w Krajowym Systemie e-Faktur”,  zaznaczyć oświadczenie i kliknąć „Przejdż dalej”, a następnie zalogować się do aplikacji w wybrany sposób (profilem zaufanym lub certyfikatem kwalifikowanym).  Później należy wybrać zakładkę „Tokeny”, sekcję „Generuj token” – w polu „Nazwa tokena” wprowadzić przykładową nazwę tokena, poniżej zaznaczyć uprawnienia i kliknąć w pole „Generuj token”. Po odświeżeniu strony należy skopiować wyświetlany token, a potem wkleić go w polu „Token KSeF”. Wprowadzone zmiany powinny zostać zapisane.

 

Od wersji 2026.0.1 w ramach Comarch BPM umożliwiono uwierzytelnianie za pomocą certyfikatu KSeF otrzymanego poprzez MCU – z tego powodu wprowadzono następujące nowe pola:

  • Klucz prywatny certyfikatu KSeF – w ramach tego pola po kliknięciu w przycisk [Dodaj] można dodać z dysku plik o rozszerzeniu .key – klucz, który uzyskano podczas wnioskowania o certyfikat KSeF. Dodany plik zostanie wyświetlony zgodnie ze swoją nazwą. Operator może go zapisać na dysku, klikając w ikonę [Zapisz] lub usunąć z aplikacji Comarch BPM, klikając w przycisk kosza [Usuń]. Dane klucza prywatnego są zaszyfrowane i przechowywane w bazie danych Comarch BPM;
  • Odcisk certyfikatu KSeF – w tym polu operator może wybrać certyfikat KSeF, z którym jest powiązany klucz prywatny, który wybrano w polu „Klucz prywatny certyfikatu KSeF“. W tym celu nalezy kliknąc w link [Wybierz certyfikat], a następnie w ramach okna Eksploratora plików wybrać odpowiedni plik i nacisnąć przycisk „Otwórz“. Dodawany plik powinien być certyfikatem z rozszerzeniem .crt, który uzyskano poprzez wnioskowanie o certyfikat KSeF Jeżeli operator wybrał pllik w poprawnym formacie, wówczas pole „Odcisk certyfikatu KSeF“ zostanie automatycznie wypełnione danymi odcisku palca tego certyfikatu, a obok pola zamiast linku [Wybierz certyfikat] zostanie wyświetlony link [Usuń certyfikat]. Dodany certyfikat jest przechowywany w formie zaszyfrowanej w bazie danych Comarch BPM. Ręczna edycja pola „Odcisk certyfikatu KSeF“ nie jest możliwa.
    • Jeśli operator kliknie w link [Usuń certyfikat], wówczas dane certyfikatu (odcisk odciska palca certyfikatu i certyfikat) zostaną usunięte zarówno z bazy Comarch BPM, jak i z pola „Odcisk certyfikatu KSeF“. Gdy certyfikat zostanie usunięty, link [Usuń certyfikat] zmieni się ponownie w link [Wybierz certyfikat] i bdzie możliwe ponowne wybranie certyfikatu.

Uwaga

Aplikacja Comarch BPM nie weryfikuje zgodności dodanego certyfikatu z dodanym kluczem prywatnym. Jeśli operator wybrał certyfikat, z którym nie jest powiązany klucz prywatny wybrany w polu „Klucz prywatny certyfikatu KSeF“, wówczas przy próbie pobrania faktur z KSeF w puncie ACd zostaje wyświetlony komunikat: „Wystąpił błąd: KSeF2 AuthorizationWithKsefCertAsync – Authorization failed: Invalid operation 'Authentication’: Failed to decrypt private key: Nieprawidłowe hasło do klucza prywatnego“.

Komunikat wyświetlany przy próbie pobierania faktur z KSeF, gdy wybrany certyfikat nie jest powiązany z wybranym kluczem prywatnym

  • Hasło certyfikatu KSeF – pole, w ramach którego należy wprowadzić hasło, które wprowadzono podczas wnioskowania o certyfikat KSeF. Wprowadzone hasło jest przechowywane w formie zaszyfrowanej w bazie danych Comarch BPM.

 

Sekcja „Integracja z usługą KSeF” na zakładce „Integracje” z nowymi polami – przed uzupełnieniem

 

Wybór certyfikatu po kliknięciu w link „Wybierz certyfikat“ w ramach pola „Odcisk certyfikatu KSeF“

 

Sekcja „Integracja z usługą KSeF” na zakładce „Integracje” z nowymi polami – po przykładowym uzupełnieniu

 

Zakładka „Integracje” – sekcja „Integracja z usługą KSeF”

Po ukończeniu konfiguracji należy przejść do konfiguracji punktu ACD współpracującego z KSeF (zob. Definiowanie punktu konfiguracyjnego (Import dokumentów zakupu z KSeF))

  • dla trybu wielospółkowego: na zakładce Ustawienia -> zakładka Połączenia z ERP  -> ustawienia odpowiedniej spółki:


1.  w ramach pola  „Nip firmy” należy wprowadzić NIP firmy, dla której ma odbywać się współpraca z KSeF

2. w ramach pola „Token KSeF” należy wprowadzić token uwierzytelniający w KSeF.

W wersji 2026.0.1 zachowano możliwość ustawienia tokenu KSeF – zarówno poprzez wklejenie tokenu, jaki przez jego generowanie – analogicznie jak w dotychczasowych wersjach.

 

Uwaga

Używanie tokenów KSeF jako jednej z metod autoryzacyjnych z usługą KSeF będzie dostępne nie dłużej niż do 31.12.2026.

 

Uwaga
Jeśli autoryzacja przez token zakończy się niepowodzeniem, wówczas podczas próby importu dokumentów z KSeF zostanie wyświetlone okno z certyfikatami, w ramach którego należy wskazać właściwy certyfikat.

Uwaga

W wersji 2024.0.1 w pliku Web.config w folderze aplikacji serwerowej (dawnej web) dodano klucz add key=”KSeFWorkMode” value=”Demo” /> – klucz umożliwia określenie, czy Firma testuje funkcjonalność wysyłania faktur do KSeF, czy korzysta z niej produkcyjnie.

Klucz może przybierać jedną z następujących wartości:

1.Demowartość domyślna; w przypadku wprowadzenia takiej wartości praca z systemem KSeF odbywa się w trybie Demo;

2.Production – w przypadku wprowadzenia takiej wartości praca z systemem KSeF odbywa się w trybie Produkcyjnym, czyli wersji produkcyjnej systemu;

3.Test – w przypadku wprowadzenia takiej wartości praca z systemem KSeF odbywa się w trybie testowym.

W kwestii różnic pomiędzy powyższymi trybami zob. Przełączanie trybu pracy z KSeF

 

Istnieje możliwość wygenerowania tokenu KSeF z poziomu Comarch BPM (dawniej DMS). W tym celu należy kliknąć w link [Wygeneruj token] znajdujący się obok pola „Token KSeF”, a następnie w oknie „Wybierz certyfikat” wybrać odpowiedni certyfikat uwierzytelniający.

Po wyborze certyfikatu zostanie wygenerowany token KSeF, który zostanie automatycznie wprowadzony w ramach pola „Token KSeF”.

Wprowadzone zmiany należy zapisać za pomocą przycisku  [Zapisz], dostępnego w ramach sekcji.

 

Uwaga
Aby wygenerować token konieczne jest zainstalowanie kwalifikowanego podpisu/pieczęci, za pomocą którego możliwe jest uwierzytelnienie się na stronach ministerstwa.

 

Aby wygenerować token uwierzytelniający, należy najpierw uzupełnić pole „NIP Firmy”.

Jeżeli użytkownik nie uzupełni pola „NIP Firmy” i naciśnie link [Wygeneruj token], wówczas zostanie wyświetlony następujący komunikat.

Komunikat wyświetlany, jeśli nie wpisano numeru NIP w polu „NIP Firmy”, ale naciśnięto link „Wygeneruj token”

 

Od wersji 2026.0.1 w ramach Comarch BPM umożliwiono uwierzytelnianie za pomocą certyfikatu KSeF otrzymanego poprzez MCU – z tego powodu wprowadzono następujące nowe pola:

  • Klucz prywatny certyfikatu KSeF – w ramach tego pola po kliknięciu w przycisk [Dodaj] można dodać z dysku plik o rozszerzeniu .key – klucz, który uzyskano podczas wnioskowania o certyfikat KSeF. Dodany plik zostanie wyświetlony zgodnie ze swoją nazwą. Operator może go zapisać na dysku, klikając w ikonę [Zapisz] lub usunąć z aplikacji Comarch BPM, klikając w przycisk kosza [Usuń]. Dane klucza prywatnego są zaszyfrowane i przechowywane w bazie danych Comarch BPM;
  • Odcisk certyfikatu KSeF – w tym polu operator może wybrać certyfikat KSeF, z którym jest powiązany klucz prywatny, który wybrano w polu „Klucz prywatny certyfikatu KSeF“. W tym celu nalezy kliknąc w link [Wybierz certyfikat], a następnie w ramach okna Eksploratora plików wybrać odpowiedni plik i nacisnąć przycisk „Otwórz“. Dodawany plik powinien być certyfikatem z rozszerzeniem .crt, który uzyskano poprzez wnioskowanie o certyfikat KSeF Jeżeli operator wybrał pllik w poprawnym formacie, wówczas pole „Odcisk certyfikatu KSeF“ zostanie automatycznie wypełnione danymi odcisku palca tego certyfikatu, a obok pola zamiast linku [Wybierz certyfikat] zostanie wyświetlony link [Usuń certyfikat]. Dodany certyfikat jest przechowywany w formie zaszyfrowanej w bazie danych Comarch BPM. Ręczna edycja pola „Odcisk certyfikatu KSeF“ nie jest możliwa.
    • Jeśli operator kliknie w link [Usuń certyfikat], wówczas dane certyfikatu (odcisk odciska palca certyfikatu i certyfikat) zostaną usunięte zarówno z bazy Comarch BPM, jak i z pola „Odcisk certyfikatu KSeF“. Gdy certyfikat zostanie usunięty, link [Usuń certyfikat] zmieni się ponownie w link [Wybierz certyfikat] i bdzie możliwe ponowne wybranie certyfikatu.

Uwaga

Aplikacja Comarch BPM nie weryfikuje zgodności dodanego certyfikatu z dodanym kluczem prywatnym. Jeśli operator wybrał certyfikat, z którym nie jest powiązany klucz prywatny wybrany w polu „Klucz prywatny certyfikatu KSeF“, wówczas przy próbie pobrania faktur z KSeF w puncie ACd zostaje wyświetlony komunikat: „Wystąpił błąd: KSeF2 AuthorizationWithKsefCertAsync – Authorization failed: Invalid operation 'Authentication’: Failed to decrypt private key: Nieprawidłowe hasło do klucza prywatnego“.

Komunikat wyświetlany przy próbie pobierania faktur z KSeF, gdy wybrany certyfikat nie jest powiązany z wybranym kluczem prywatnym

  • Hasło certyfikatu KSeF – pole, w ramach którego należy wprowadzić hasło, które wprowadzono podczas wnioskowania o certyfikat KSeF. Wprowadzone hasło jest przechowywane w formie zaszyfrowanej w bazie danych Comarch BPM.

 

Po ukończeniu konfiguracji należy przejść do konfiguracji punktu ACD współpracującego z KSeF (zob. Definiowanie punktu konfiguracyjnego (Import dokumentów zakupu z KSeF))

 

Zakladka „Połączenia z ERP”, pola „Nip firmy” , „Token KSeF”, „Klucz prywatny certyfikatu KSeF”, „Odcisk certyfikatu KSeF”, „Haslo certyfikatu KSeF”

 

Rozpoczynasz pracę z Comarch BPM (dawniej DMS) i chcesz dowiedzieć się, jak korzystać z programu? A może masz już podstawową wiedzę o Comarch BPM (dawniej DMS) i chcesz dowiedzieć się więcej?

Sprawdź Szkolenia Comarch BPM!




Definiowanie punktu konfiguracyjnego (Import dokumentów zakupu z KSeF)

W wersji 2024.0.0 został dodany nowy typ punktu ACD, który służy do współpracy z KSeF„Import dokumentów zakupu z KSeF”.

 

Uwaga

W wersji 2024.0.1 w pliku Web.config w folderze aplikacji serwerowej (dawnej web) dodano klucz add key=”KSeFWorkMode” value=”Demo” /> – klucz umozliwia określenie, czy Firma testuje funkcjonalność wysyłania faktur do KSeF, czy korzysta z niej produkcyjnie.

Klucz może przybierać jedną z następujących wartości:

1.Demo –  w przypadku wprowadzenia takiej wartości praca z systemem KSeF odbywa się w trybie Demo;

2.Productionwartość domyślna od wersji 2026.0.0; w przypadku wprowadzenia takiej wartości praca z systemem KSeF odbywa się w trybie Produkcyjnym, czyli wersji produkcyjnej systemu;

3.Test – w przypadku wprowadzenia takiej wartości praca z systemem KSeF odbywa się w trybie testowym.

Uwaga
W celu przetestowania współpracy z Comarch BPM na prawdziwych danych zalecamy korzystanie z trybu Demo.

W kwestii różnic pomiędzy powyższymi trybami zob. Przełączanie trybu pracy z KSeF

 

Uwaga

W wersji 2026.0.0 w pliku Web.config w folderze aplikacji serwerowej (dawnej web) wprowadzono nowy klucz “KSeFProdVersion“, który ma umożliwić zmianę wersji KSeF dla pracy w trybie produkcyjnym. Klucz może przyjmować jedną z następujących wartości:

  • 1 – wartość domyślna w wersji 2026.0.0; możliwa jest praca w trybie produkcyjnym KSeF 1.0
  • 2 – możliwa jest praca w trybie produkcyjnym KSeF 2.0

Praca w trybie produkcyjnym KSeF 2.0 będzie możliwa jedynie wtedy, gdy <add key=”KSeFWorkMode” value=”Production” /> oraz <add key=”KSeFProdVersion” value=”2″ /> – ten tryb pracy będzie aktywny dopiero po uruchomieniu przez Ministerstwo Finansów środowiska produkcyjnego KSeF 2.0, tj. po 01.02.2026.

Klucz “KSeFProdVersion“ nie wpływa na pracę w trybie „Test“ oraz „Demo“.

 

Zakładka Tryb współpracy

Aby utworzyć punkt konfiguracyjny typu „Import dokumentów zakupu z KSeF” należy w oknie „Automatyczne generowanie dokumentów” dodać nowy punkt konfiguracyjny za pomocą ikony , a następnie na liście trybów pracy punktu wybrać opcję „Import dokumentów zakupu z KSeF” .

 

Punkt konfiguracyjny typu „Import dokumentów zakupu z KSeF” , zakładka „Tryb współpracy”

 

Zakładka Ogólne

Wygląd zakładki „Ogólne” jest zależny od trybu pracy Comarch BPM (dawniej DMS).

W trybie jednospółkowym na zakładce należy w ramach pola:

  • Nazwa punktuokreślić nazwę pod jaką punkt konfiguracyjny będzie widoczny na liście punktów;
  • Typ obieguwskazać typ obiegu, w ramach którego będą generowane dokumenty zawierające dane z KSeF; od wersji 2026.0.0 należy dokonać wyboru jednego lub wielu typów obiegów – po kliknięciu w pole rozwijana jest lista wszystkich typów obiegów dostępnych w systemie, a administrator powinien zaznaczyć checkbox obok jednego lub więcej typu obiegu – liczba zaznaczonych typów obiegów może być dowolna. Jeśli lista jest długa, po prawej stronie dostępny jest suwak.

Gdy operator zaznaczy typy obiegów i kliknie obok listy, wówczas zostanie ona zamknięta, a w polu „Typ obiegu“ będzie widoczny napis „Wybrano: [liczba wybranych typów obiegów]“.

Jeżeli Comarch BPM (dawniej DMS) pracuje w trybie jednospółkowym, wówczas komunikacja z KSeF odbywa się na podstawie danych (numeru NIP firmy oraz tokena uwierzytelniającego), które zostały podane w ramach zakładki „KSeF” na zakładce [Ustawienia].(zob. Integracje (dawna zakładka „KSeF”)).

 

Widok zakładki „Ogólne” na definicji punktu ACD typu „Import dokumentów zakupu z KSeF” z polami atrybutów (przed uzupełnieniem, tryb jednofirmowy)

Widok zakładki „Ogólne” w ramach konfiguracji punktu ACD typu „Import dokumentów zakupu z KSeF”, gdy w polu „Typ obiegu“ jest wybieranych wiele typów obiegów

 

W trybie wielospółkowym na zakładce należy w ramach pola:

  • Nazwa punktuokreślić nazwę pod jaką punkt konfiguracyjny będzie widoczny na liście punktów;
  • Spółkawskazać spółkę, dla której będzie odbywać się komunikacja z KSeF – na podstawie numeru NIP oraz/albo tokenu, które zostały zapisane podczas konfiguracji danej spółki na zakładce „Połączenia z ERP” na zakładce [Ustawienia].(zob. Połączenia z ERP). Zapytania, które są wprowadzane na zakładkach „Lista” oraz „Kontrolki” również są wykonywane w kontekście bazy danej spółki;
  • Typ obieguwskazać typ obiegu, w ramach którego będą generowane dokumenty zawierające dane z KSEF; od wersji 2026.0.0 należy dokonać wyboru jednego lub wielu typów obiegów – po kliknięciu w pole rozwijana jest lista wszystkich typów obiegów dostępnych w systemie, a administrator powinien zaznaczyć checkbox obok jednego lub więcej typu obiegu – liczba zaznaczonych typów obiegów może być dowolna. Jeśli lista jest długa, po prawej stronie dostępny jest suwak.

Uwaga
Aby możliwy był zapis punktu konfiguracyjnego ACD, konieczne jest wybranie co najmniej jednego typu obiegu w polu „Typ obiegu”.

Gdy operator zaznaczy typy obiegów i kliknie obok listy, wówczas zostanie ona zamknięta, a w polu „Typ obiegu“ będzie widoczny napis „Wybrano: [liczba wybranych typów obiegów]“.

 

Widok zakładki „Ogólne” na definicji punktu ACD typu „Import dokumentów zakupu z KSeF” z polami atrybutów (przed uzupełnieniem, tryb wielofirmowy)

 

  • Nazwy atrybutów na liście dokumentów w punkcie ACD  – w wersji 2025.0.0 na zakładce „Ogólne” na punkcie konfiguracyjnym punktu ACD typu „Import dokumentów zakupu z KSeF” dodano pole Nazwy atrybutów na liście dokumentów w punkcie ACD”, w ramach którego dostępne są pola: „Atrybut 1”, Atrybut 2” i „Atrybut 3”.  Nowododane pola umożliwiają wprowadzenie dodatkowych informacji opisujących daną fakturę, co pozwala na bardziej szczegółową identyfikację i klasyfikację dokumentów w procesie ich przetwarzania.

W ramach pól „Atrybut 1”, „Atrybut 2” i „Atrybut 3” można zdefiniować maksymalnie 3 nazwy dodatkowych pól (atrybutów), które będą widoczne na liście dokumentów w punkcie ACD jako nazwy kolumn.

Informacje o nazwach atrybutów/kolumn są dostępne w tabeli do.DF_ConfAPDictionary.

Jeśli uprawniony operator nie wprowadzi żadnej nazwy atrybutu, wówczas kolumny z atrybutami nie zostaną utworzone, a na liście dokumentów będzie widoczna tylko jedna kolumna „Dokument”.

Jeżeli operator wprowadzi wartość w jednym z dodatkowych pól (atrybutów), wówczas na liście będzie widoczna jedna dodatkowa kolumna z taką nazwą, jaką wprowadzono w polu; analogicznie, jeśli uzupełniono dwa pola, będą widoczne dwie dodatkowe kolumny.

 

Widok zakładki „Ogólne” na definicji punktu ACD typu „Import dokumentów zakupu z KSeF” z polami atrybutów (z przykładowym uzupełnieniem, tryb jednofirmowy)

  • Zmiana wartości na podstawie kontrolek obserwowanych (Obserwatory) – pole dodane w wersji 2026.0.0; umożliwia wyłączenie obserwatorów, które wykonują się w czasie dodawania dokumentów do obiegu z punktu ACD. Jeśli w polu parametru:
    • Wybrano wartość „Włączona” – wartości kontrolek mogą zostać nadpisane podczas generowania dokumentu do obiegu, zgodnie z kontrolkami obserwowanymi; wartość domyślna;
    • Wybrano wartość „Wyłączona” – wartości kontrolek nie zostaną nadpisane zgodnie z kontrolkami obserwowanymi podczas generowania dokumentu do obiegu (wartości zgodne z podglądem w punkcie ACD).

 

Zakładka Lista

Na zakładce „Lista”, analogicznie do pozostałych trybów pracy punktów konfiguracyjnych, należy za pomocą zapytania SQL określić listę dokumentów, która będzie wyświetlana w oknie ACD po pobraniu plików z KSeF.

 

Uwaga
W wersji 2025.0.0 nastąpiła zmiana zapytania SQL wyświetlającego listę dokumentów (zob. poniższy przykład). Zapytanie można skopiować z sekcji „Przykład”, dostępnej w ramach zakładki „Lista”.

Zapytanie SQL wprowadzone na zakładce „Lista” w ramach konfiguracji punktu ACD typu „Import dokumentów zakupu z KSeF” jest odmienne od zapytań SQL dla innych typów punktów ACD, różni się także od zapytania SQL dotychczas wprowadzanego w ramach punktu ACD typu „Import dokumentów zakupu z KSeF”.

 

Przyklad

Przykład zapytania wyświetlającego listę dokumentów.

BEGIN TRY
select d.KSD_ID, NULL, KSD_NumerFaktury, KSD_Tag1, KSD_Tag2, KSD_Tag3
from do.KS_Documents d 
left join do.KS_WorkAPProcess W on d.KSD_ID = KSW_DocumentID /*tabela przeprocesowanych dokumentów*/ 
left join do.KS_DocumentHeaders dh on d.KSD_ID = dh.KSH_DocumentId
left join do.KS_DocumentContractors dc on d.KSD_ID = dc.KSC_DocumentID
where KSW_APDId=@PointId@ -- id punktu ACD 
and KSW_OperatorID=@IdOperatorBPM@ /*dodatkowy warunek, aby na liście operator widział dokumenty przeprocesowane przez siebie*/
and ((@InvoiceStatus@ = 0 and KSW_Status <> 5 and KSW_Archival = 0) OR (@InvoiceStatus@ = 1 and KSW_Archival = 1) OR
(@InvoiceStatus@ = 2 and KSW_Status = 5) OR @InvoiceStatus@ = 3)
and (nullif(@SearchText@,'') is null OR (@SearchText@ <> '' and KSD_NumerFaktury LIKE '%' + @SearchText@ + '%'))
and (@Nip@ is null OR dc.KSC_PodatnikNIP = @Nip@)
and (@DateFrom@ is null or dh.KSH_DataWytworzeniaFa >= @DateFrom@)
and (@DateTo@ is null or dh.KSH_DataWytworzeniaFa <= @DateTo@)
and (@GrossAmountFrom@ is null or KSD_SumaBrutto >= @GrossAmountFrom@)
and (@GrossAmountTo@ is null or KSD_SumaBrutto <= @GrossAmountTo@)
and (@InvoiceType@ is null or KSD_RodzajFaktury = @InvoiceType@)
END TRY
BEGIN CATCH
DECLARE @ErrorMessage varchar(max) = 'W zapytaniu wystąpił błąd : ' + ERROR_MESSAGE();
THROW 50001, @ErrorMessage ,1; 
END CATCH

 

Punkt konfiguracyjny typu „Import dokumentów zakupu z KSeF”, zakładka „Lista”

 

Można wprowadzić alternatywne wersje zapytania – w takim przypadku, jeśli wyszukiwanie na liście w punkcie ACD ma uwzględniać wszystkie dane, jakie są na niej widoczne, należy analogicznie zmodyfikować także warunki wyszukiwania – np. tak jak w poniższym przykładzie.

 

Przyklad
Przykład zapytania na zakładce Lista, w wyniku którego na liście dokumentów w punkcie ACD:

  • w ramach kolumny „Dokument” oprócz numeru dokumentu wyświetlane są dodatkowe dane: data wystawienia, nazwa kontrahenta i NIP kontrahenta
  • dostępne są kolumny 3 atrybutów (o nazwach określonych na zakładce „Ogólne”)
  • wyszukiwanie odbywa się w zakresie wszystkich czterech kolumn („Dokument” z dodatkowymi informacjami oraz w kolumnach atrybutów)
 BEGIN TRY
    SELECT d.KSD_Id, NULL, KSD_NumerFaktury + ' | ' + CONVERT(varchar, KSD_Datawystawienia, 104) + ' | ' + KSC_PodatnikNazwa + ' | ' + KSC_PodatnikNIP, KSD_Tag1, KSD_Tag2, KSD_Tag3
     from do.KS_Documents d 
     left join do.KS_WorkAPProcess W on d.KSD_ID = KSW_DocumentID  /*tabela przeprocesowanych dokumentów*/ 
     left join do.KS_DocumentHeaders dh on d.KSD_ID = dh.KSH_DocumentId
     left join do.KS_DocumentContractors dc on d.KSD_ID = dc.KSC_DocumentID
     where KSW_APDId=@PointId@ -- id punktu ACD 
     and KSW_OperatorID=@IdOperatorBPM@ /*dodatkowy warunek, aby na liście operator widział dokumenty przeprocesowane przez siebie*/
     and ((@InvoiceStatus@ = 0 and KSW_Status <> 5 and KSW_Archival = 0) OR (@InvoiceStatus@ = 1 and KSW_Archival = 1) OR
         (@InvoiceStatus@ = 2 and KSW_Status = 5) OR @InvoiceStatus@ = 3)
     and (nullif(@SearchText@,'') is null OR (@SearchText@ <> '' and KSD_NumerFaktury + ' | ' +CONVERT(varchar, KSD_Datawystawienia, 104) + ' | ' + KSC_PodatnikNazwa + ' | ' + KSC_PodatnikNIP LIKE '%' + @SearchText@ + '%'))
     OR (@SearchText@ <> '' and KSD_Tag1 LIKE '%' + @SearchText@ + '%') 
     OR (@SearchText@ <> '' and KSD_Tag2 LIKE '%' + @SearchText@ + '%') 
     OR (@SearchText@ <> '' and KSD_Tag3 LIKE '%' + @SearchText@ + '%')
     and (@Nip@ is null OR dc.KSC_PodatnikNIP = @Nip@)
     and (@DateFrom@ is null or dh.KSH_DataWytworzeniaFa >= @DateFrom@)
     and (@DateTo@ is null or dh.KSH_DataWytworzeniaFa <= @DateTo@)
     and (@GrossAmountFrom@ is null or KSD_SumaBrutto >= @GrossAmountFrom@)
     and (@GrossAmountTo@ is null or KSD_SumaBrutto <= @GrossAmountTo@)
     and (@InvoiceType@ is null or KSD_RodzajFaktury = @InvoiceType@)
 END TRY
 BEGIN CATCH
  DECLARE @ErrorMessage varchar(max) = 'W zapytaniu wystąpił błąd : ' + ERROR_MESSAGE();
  THROW 50001,  @ErrorMessage ,1;   
 END CATCH

 

Lista dokumentów w punkcie AC, jeśli zastosowano powyższe zapytanie na zakładce „Lista” – na liście widoczne są: kolumna „Dokument” z dodatkowymi informacjami i  oczekujące na uzupelnienie kolumny atrybutów (Towar, Wartość netto i Wartość brutto)

 

Uwaga
W kolumnach atrybutów znajdują się jedynie wartości tekstowe.

 

Wyszukiwanie po fragmencie tekstu dostępnym w kolumnie „Dokument”

 

Zakładka Kontrolki

Na zakładce „Kontrolki” za pomocą zapytań SQL należy wskazać wartości, które będą wyświetlane w poszczególnych kontrolkach po przeprocesowaniu dokumentu.

Przykłady zapytań SQL dla faktur pobranych z KSeF są dostępne w artykule: Przykłady zapytań SQL w zakładce Kontrolki dla punktu ACD „Import dokumentów zakupu z KSeF”

W wersji 2026.0.0 zmodyfikowano zakładkę „Kontrolki” w taki sposób, aby możliwe było odrębne definiowanie mapowania kontrolek dla każdego typu obiegu wybranego na zakładce „Ogólne”.

W tym celu w górnej części zakładki dodano pole, po kliknięciu w które rozwijana jest lista typów obiegów przypisanych do danego punktu ACD na zakładce „Ogólne“. Gdy zostanie wybrany typ obiegu, wówczas poniżej dostępny będzie obszar, w ramach którego można zdefiniować kontrolki dla danego typu obiegu. Pozostałe ustawienia dotyczące zakładki „Kontrolki“ nie ulegają zmianie – aby dodać kontrolkę do mapowania, należy kliknąć w przycisk [Dodaj], a następnie wprowadzić odpowiednie zapytanie SQL w polu znajdującym się po prawej stronie okna. Mapowanie danej kontrolki można usunąć, klikając w ikonę kosza na prawo od nazwy kontrolki

 

Uwaga
Jeśli dany typ obiegu zostanie odznaczony w polu „Typ obiegu” na zakładce „Ogólne” podczas konfiguracji punktu ACD, wówczas nie będzie również dostępny do wyboru na zakładce „Kontrolki”.

 

Widok zakładki „Kontrolki” w ramach konfiguracji punktu ACD typu „Import dokumentów zakupu z KSeF” przed wyborem typu obiegu

 

Widok zakładki „Kontrolki” w ramach konfiguracji punktu ACD typu „Import dokumentów zakupu z KSeF” z listą typów obiegów przypisanych do danego punktu ACD do wyboru

 

Widok zakładki „Kontrolki” w ramach konfiguracji punktu ACD typu „Import dokumentów zakupu z KSeF” po wyborze typu obiegu wraz ze zdefiniowanym mapowaniem kontrolek

 

Od wersji 2024.3.0 operator może dodawać plik pdf z dokumentem KSeF do kontrolki typu Załącznik. W tym celu powinien w ramach konfiguracji punktu ACD typu „Import dokumentów zakupu z KSeF” wykonać kolejno następujące czynności:

  • na zakładce „Ogólne” w polu „Typ obiegu” wybrać typ obiegu, w ramach którego znajduje się kontrolka typu Załącznik;
  • na zakładce „Kontrolki” wybrać dany typ obiegu (od wersji 2026.0.0),  następnie kontrolkę typu Załącznik i w ramach pola po prawej stronie okna wprowadzić zapytanie SQL – w poniższym przykładzie nazwą pliku będzie nazwa faktury:
Select KSD_SourceContent,

CASE

WHEN KSD_NumerFaktury LIKE '%/%' THEN CONCAT(REPLACE(KSD_NumerFaktury, '/', '_'), '.pdf')

ELSE CONCAT(KSD_NumerFaktury, '.pdf')

END AS modified_column

from do.KS_Documents

where KSD_ID=@Id1@

 

Uwaga
W przypadku zastosowania powyższego zapytania jeżeli w nazwie faktury występuje znak /, zostanie zamieniony na _ .

 

Uwaga
Należy pamiętać, że w odróżnieniu od innych zapytań SQL w przypadku wprowadzania zapytania dla kontrolki typu Załącznik w ramach zakładki „Kontrolki” podczas konfiguracji punktu ACD typu „Import dokumentów zakupu z KSeF” konieczne jest dodanie frazy ‘.pdf’, tak, jak przedstawiono w powyższym przykładzie.

 

Wprowadzanie zapytania dla kontrolki typu Załącznik w ramach zakładki „Kontrolki” podczas konfiguracji punktu ACD typu „Import dokumentów zakupu z KSeF”

 

Punkt konfiguracyjny typu „Import dokumentów zakupu z KSeF”, zakładka „Kontrolki”

 

Od wersji 2025.0.0 w ramach zakładki „Kontrolki” uprawniony operator może zdefiniować zapytanie SQL, które przeniesie dane z wybranego atrybutu na określoną kontrolkę typu Tekst.

 

Uwaga

Zapytania SQL dla poszczególnych atrybutów:

  • Dla pola „Atrybut 1”
select KSD_Tag1 from do.KS_Documents where KSD_ID=@Id1@
  • Dla pola „Atrybut 2”
select KSD_Tag2 from do.KS_Documents where KSD_ID=@Id1@
  • Dla pola „Atrybut 3”
select KSD_Tag3 from do.KS_Documents where KSD_ID=@Id1@

 

Wprowadzanie na zakładce „Kontrolki” zapytania, które przeniesie dane z pola „Atrybut 3” do kontrolki typu Tekst „Forma płatności”

 

Przyklad
Operator chce, aby kontrahent, NIP i data wystawienia faktury były mapowane na kontrolki w danym typie obiegu oraz aby na liście dokumentów w punkcie ACD typu „Import dokumentów zakupu z KSeF”  w ramach atrybutów „Kontrahent”, „NIP” i „Data wystawienia’ były wyświetlane odpowiednio: nazwa kontrahenta z Comarch ERP XL, numer NIP kontrahenta oraz data wystawienia faktury. W tym celu modyfikuje konfigurację punktu ACD w następujący sposób:

1. Na zakladce „Ogólne”  w polu „Typ obiegu” wybiera typ obiegu, w którym dostępne są nastepujące kontrolki:

  • kontrolka typu Kontrahent „Kontrahent”
  • kontrolka typu Tekst „NIP”
  • kontrolka typu Data i godzina „Data wystawienia”

W poniższym przykładzie jest to typ obiegu „Faktury zakupu KSeF”.

2. Na zakladce „Ogólne” w ramach pola „Nazwy atrybutów na liście dokumentów w punkcie ACD” wprowadza:

  • w polu „Atrybut 1” – Kontrahent
  • w polu „Atrybut 2” – NIP
  • w polu „Atrybut 3” – Data wystawienia

 

Przykładowa konfiguracja pól dostępnych w ramach pola „Nazwy atrybutów na liście dokumentów w punkcie ACD”

 

3. Na zakładce „Kontrolki” wybiera typ obiegu, w którym znajdują się kontrolki omówione w punkcie 1 (w tym przykladzie typ obiegu „Faktury zakupu KSeF”). Następnie za pomocą przycisku „Dodaj”  dodaje kolejne mapowania kontrolek, wprowadzając dla nich nastepujące zapytania SQL:

  • Kontrahent
 UPDATE [nazwa_bazy_Comarch_BPM].[do].[KS_Documents] 

SET KSD_Tag1 = CAST(KSC_PodatnikNazwa AS VARCHAR(255))

FROM [nazwa_bazy_Comarch_BPM].[do].[KS_Documents] 
JOIN [nazwa_bazy_Comarch_BPM].[do].[KS_DocumentContractors] on KSC_DocumentId = KSD_Id
WHERE KSD_Id = @Id1@;



-- 2. Pobranie danych do wyświetlenia w kontrolce

SELECT TOP 1 

   Knt_GidNumer, 

   Knt_Akronim

FROM [nazwa_bazy_Comarch_BPM].[do].[KS_DocumentContractors]

JOIN [nazwa_bazy_Comarch_ERP_XL].[cdn].[KntKarty]  ON Knt_Nip = KSC_PodatnikNIP

WHERE KSC_DocumentId = @Id1@;

 

  • NIP
  UPDATE [nazwa_bazy_Comarch_BPM].[do].[KS_Documents] 

SET KSD_Tag2 = CAST(KSC_PodatnikNIP AS VARCHAR(255))

FROM [nazwa_bazy_Comarch_BPM].[do].[KS_Documents] 
JOIN [nazwa_bazy_Comarch_BPM].[do].[KS_DocumentContractors] on KSC_DocumentId = KSD_Id

WHERE KSD_Id = @Id1@;



-- 2. Pobranie danych do wyświetlenia w kontrolce

SELECT KSC_PodatnikNIP
FROM [nazwa_bazy_Comarch_BPM].[do].[KS_DocumentContractors]
JOIN [nazwa_bazy_Comarch_BPM].[do].[KS_Documents] on KSC_DocumentId = KSD_Id

WHERE KSD_ID = @Id1@;

 

  • Data wystawienia
 -- 1. Aktualizacja pola KSD_Tag3 sformatowaną datą
UPDATE [nazwa_bazy_Comarch_BPM].[do].[KS_Documents]
SET KSD_Tag3 = CONVERT(varchar(10), KSD_Datawystawienia, 104)
WHERE KSD_Id = @Id1@;

-- 2. Pobranie danych do wyświetlenia w kontrolce
SELECT 
    KSD_Datawystawienia
FROM [nazwa_bazy_Comarch_BPM].[do].[KS_Documents]
WHERE KSD_Id = @Id1@;

 

Wprowadzanie zapytania  dla atrybutu „Kontrahent” na liście dokumentów i dla kontrolki „Kontrahent”

 

4. Operator zapisuje zmiany wprowadzony w punkcie ACD, klikając w przycisk „Zapisz”.

Rezultat zmian w konfiguracji punktu ACD: Po pobraniu listy faktur w punkcie ACD dane – kontrahent, numer NIP i data wystawienia-  są widoczne na podglądzie kontrolek do zmapowania oraz w ramach atrybutów na liście dokumentów.

W przypadku problemów z wyświetleniem danych należy nacisnąć raz lub dwukrotnie przycisk „Odśwież”.

Należy pamiętać, że w przypadku ręcznej modyfikacji wartości atrybutów powrócą one do poprzednich, zmapowanych wartości, gdy lista będzie odświeżana.

 

Przykładowy widok listy z wypelnionymi automatycznie atrybutami w punkcie ACD

 

W wersji 2025.1.0 umożliwiono zapis pliku XML z KSeF do bazy Comarch BPM (dawniej DMS), tak, aby możliwe było dodanie go w ramach kontrolki typu Załącznik.

W tym celu podczas konfiguracji punktu ACD typu „Import dokumentów zakupu z KSeF” na zakładce „Kontrolki” należy po lewej stronie okna wybrać kontrolkę typu Załącznik, do której ma zostać dodany plik xml, a następnie po prawej stronie, w ramach edytora wprowadzić następujące zapytanie SQL:

Select KSD_Xml,

CASE

WHEN KSD_NumerFaktury LIKE '%/%' THEN CONCAT(REPLACE(KSD_NumerFaktury, '/', '_'), '.xml')

ELSE CONCAT(KSD_NumerFaktury, '.xml')

END AS modified_column

from do.KS_Documents

where KSD_ID=@Id1@

Definicja punktu ACD typu „Import dokumentów zakupu z KSeF”, zakładka „Kontrolki” – wprowadzanie zapytania dla kontrolki typu „Załącznik XML” (Zalacznikxml)

 

Gdy definicja punktu ACD została zapisana, wówczas podpięty plik załącznika XML można zobaczyć w oknie punktu ACD.

 

Punkt ACD typu „Import dokumentów zakupu z KSeF” z widoczną kontrolką „Załącznik XML” (Zalacznikxml) z podpiętym plikiem XML

 

Po wygenerowaniu dokumentu BPM (dawniej DMS) plik XML jest dostępny w ramach kontrolki typu Załącznik wybranej na definicji punktu ACD. Podobnie jak w przypadku innych plików dołączanych do kontrolki typu Załącznik, plik XML można usunąć za pomocą ikony lub zapisać na dysku, klikając w ikonę , a następnie wybierając odpowiednią lokalizację i naciskając „Zapisz”.

 

Dokument wygenerowany z punktu ACD typu „Import dokumentów zakupu z KSeF” z kontrolką „Załącznik XML” z podpiętym plikiem XML

Od wersji 2025.2.0 jeśli operator chce przenieść numer i datę faktury zakupu KSeF na dokument Comarch BPM należący do predefiniowanego typu obiegu dla współpracy z Comarch ERP XL, w którym na kontrolce typu Dokument ERP XL dostępne są pola „Numer KSeF” i „Data przyjęcia KSeF”, wówczas powinien na definicji punktu ACD, na zakładce „Kontrolki” wprowadzić następujące zapytania:

  • Dla kontrolki „Numer KSeF”:

select isnull (KSH_NumerReferencyjnyKSeF, ' ')

from do.KS_DocumentHeaders

join do.KS_Documents on ksd_id=KSH_DocumentId

where KSD_ID=@Id1@

Wprowadzanie zapytania SQL dla kontrolki „Numer KSeF”

 

  • Dla kontrolki „Data przyjęcia KSeF”:

Wprowadzanie zapytania SQL dla kontrolki „Data przyjęcia KSeF”

Zakładka Uprawnienia

Na zakładce „Uprawnienia” należy wskazać pracowników, którzy będą mogli procesować dokumenty w ramach punktu.

Uprawnienia mogą być dodawane wyłącznie poprzez wskazanie pracowników, nie ma możliwości dodania uprawnień dla pracowników wskazanego działu czy pracowników zajmujących określone stanowisko.

Na zakładce „Uprawnienia” w ramach typu punktu konfiguracyjnego „Import dokumentów zakupu z KSeF” znajduje się także dodatkowa kolumna „Edycja dokumentu”.

Jeśli operator zaznaczy obok danego pracownika checkbox w ramach kolumny „Edycja dokumentu”, wówczas taki pracownik będzie mógł zmieniać wartości w kontrolkach bezpośrednio w punkcie ACD.

 

Punkt konfiguracyjny typu „Import dokumentów zakupu z KSeF”, zakładka „Uprawnienia”, tryb jednospółkowy

 

Punkt konfiguracyjny typu „Import dokumentów zakupu z KSeF”, zakładka „Uprawnienia”, tryb wielospółkowy

 

Uwaga
Dodanie operatora do uprawnień na punkcie konfiguracyjnym skutkuje nadaniem mu uprawnień do zakładki ACD (we właściwościach pracownika, na zakładce „Uprawnienia”, w sekcji „Funkcjonalności” zostaje zmieniona wartość parametr „Automatyczne generowanie dokumentów” na „TAK”)

Na każdej zakładce znajduje się ikona [Eksport], która umożliwia eksportowanie danego punktu ACD do zapisu na dysk (zob. Eksport punktu ACD). Istnieje również możliwość importu punktu konfiguracyjnego typu „Import dokumentów zakupu z KSeF”, podobnie jak w przypadku innych typów punktów ACD.( zob. Import punktu ACD).

 

Rozpoczynasz pracę z Comarch BPM (dawniej DMS) i chcesz dowiedzieć się, jak korzystać z programu? A może masz już podstawową wiedzę o Comarch BPM (dawniej DMS) i chcesz dowiedzieć się więcej?

Sprawdź Szkolenia Comarch BPM!

 




Praca z punktem ACD (pobieranie dokumentów zakupu z KSeF)

Uwaga
W wersji 2025.2.0 umożliwiono pełną automatyzację importowania oraz generowania dokumentów przez punkty ACD typu „Import dokumentów ze skrzynki e-Doręczenia” i „Import dokumentów zakupu z KSeF” – zob. Udostępnienie funkcji RPA (automatycznego trybu pracy) na punktach ACD typu „Import dokumentów ze skrzynki e-Doręczenia” oraz „Import dokumentów zakupu z KSeF”

 

W prawym panelu punktu ACD typu „Import dokumentów zakupu z KSeF” znajduje się przycisk [Import faktur z KSeF], który odpowiada za włączenie importu dokumentów z KSeF.

 

Uwaga
W systemie Comarch BPM (dawniej DMS) integracja z KSeF obejmuje wyłącznie import dokumentów.

 

Widok punktu ACD typu „Import dokumentów zakupu z KSeF”

 

W wersji 2024.3.0 wprowadzono zmiany dotyczące okna „Import faktur z KSeF”, które jest wyświetlane po kliknięciu w przycisk [Import faktur z KSeF]. W ramach okna „Import faktur z KSeF” dostępne są trzy opcje:

  • Nowe – opcja zaznaczona domyślnie; operator powinien zaznaczyć tę opcję, jeśli chce, aby zostały pobrane dane wszystkich faktur zarejestrowanych od czasu ostatniego importu faktur (przyjęte w KSeF w dniu, gdy ostatnio dokonywano importu lub później);

Uwaga
Jeżeli nie pobierano do tej pory żadnych faktur, wówczas po zaznaczeniu tej opcji i kliknięciu w przycisk „Importuj” importowane są dane faktur z bieżącego oraz poprzedniego miesiąca. W ramach tej opcji nie następuje weryfikacja, czy w historii importowania faktur są luki.

  • Za okres Od [dzień.miesiąc.data] Do [dzień.miesiąc.data] – operator powinien zaznaczyć tę opcję, a następnie wybrać daty w polach „Od” i „Do”, jeśli chce, aby zostały pobrane dane faktur przyjętych w KSeF w wybranym okresie; domyślnie w polach wybrana jest aktualna data;

Uwaga
W ramach opcji Za okres Od [dzień.miesiąc.data] Do [dzień.miesiąc.data] konieczny jest wybór wartości zarówno w polu „Od”, jak i „Do”. System sprawdza według numeru KSeF dokumentu, czy pobierane faktury zostały już zaimportowane do bazy Comarch BPM (dawniej DMS).

  • Numer KSeF – operator powinien zaznaczyć tę opcję, jeżeli chce pobrać dane konkretnej faktury przjętej w KSeF. Po zaznaczeniu opcji należy wprowadzić w wyznaczonym polu numer KSeF wybranej faktury;

Uwaga
System sprawdza według numeru KSeF dokumentu, czy dana faktura została już zaimportowana do bazy Comarch BPM (dawniej DMS)

Po wyborze opcji w oknie „Import faktur z KSeF” i ewentualnym wypełnieniu wymaganych pól należy kliknąć w przycisk [Importuj], aby pobrać dane faktur z bazy KSeF do bazy Comarch BPM (dawniej DMS), zgodnie z wybranymi kryteriami.

 

Uwaga
Jeśli autoryzacja przez token zakończy się niepowodzeniem, wówczas podczas próby importu dokumentów z KSeF zostanie wyświetlone okno z certyfikatami, w ramach którego należy wskazać właściwy certyfikat.

 

Jeżeli natomiast operator kliknie w przycisk [Anuluj] w ramach okna „Import faktur z KSeF”, wówczas okno zostanie zamknięte, a dane faktur z KSeF nie zostaną pobrane do Comarch BPM (dawniej DMS).

 

Okno „Import faktur z KSeF”

Kiedy użytkownik kliknie w przycisk [Importuj], wówczas:

  • jeśli przedtem na zakładce „KSeF” (tryb jednofirmowy) lub „Połączenia z ERP” (tryb wielofirmowy) uzupełniono tylko pole „NIP firmy”, a nie uzupełniono pola „Token KSeF” – zostanie otwarte okno „Importowanie dokumentów” oraz okno „Wybierz certyfikat”, w którym należy wybrać certyfikat uwierzytelniający do KSeF. Jeżeli użytkownik nie uzupełni pola „Token KSeF”, wówczas za każdym razem po naciśnięciu przycisku [Importuj] konieczny będzie wybór certyfikatu.

 

Uwaga
Zalecane jest uwierzytelnianie za pomocą tokena.

 

Wybór certyfikatu w oknie „Wybierz certyfikat

 

  • jeśli przedtem na zakładce „KSeF” (tryb jednofirmowy) lub „Połączenia z ERP” (tryb wielofirmowy) uzupełniono zarówno pole „NIP firmy”, jak również pole „Token KSeF” – zostanie otwarte okno „Importowanie dokumentów”, bez konieczności wyboru certyfikatu

 

Uwaga
Jeśli token, który wprowadzono w polu „Token KSeF” został unieważniony w systemie KSeF, wówczas po kliknięciu przycisku [Importuj] również konieczny jest wybór certyfikatu.

 

W przypadku wyboru niewłaściwego certyfikatu lub wystąpienia innego błędu (zob. rozdział Przykładowe błędy poniżej) pobieranie faktur z KSeF nie będzie możliwe – zostaje wówczas wyświetlony następujący komunikat:

 

Komunikat wyświetlany, jeśli próbowano pobrać faktury z KSeF po wyborze niewłaściwego certyfikatu

 

Dokumenty, które zostały zarejestrowane w Comarch BPM (dawniej DMS), a nie zostały jeszcze wygenerowane do dokumentu Comarch BPM (dawniej DMS), są widoczne na liście dokumentów w prawym panelu.

Nazwy dokumentów KSeF, które nie zostały jeszcze otwarte w danym punkcie ACD, są zaznaczone pogrubioną czcionką na liście dokumentów.

 

Widok punktu ACD typu „Import dokumentów zakupu z KSeF” z nieprzeczytanym dokumentem (FS-24/26)

 

W wersji 2024.3.0 zmieniono dotychczasową nazwę kolumny z listą dokumentów „Numer dokumentu” na „Dokument” i dodano nowe ikony nad listą dokumentów:

[Filtry] – po kliknięciu w tę ikonę wyświetlane jest okno, które pozwala na zdefiniowanie warunków do wyszukiwania dokumentów na liście. W ramach okna dostępne są następujące pola:

    • NIP firmy – w ramach pola można zawęzić pobieranie danych według wprowadzonej wartości NIP; wprowadzoną wartość można wyczyścić, klikając w znak x po prawej stronie pola;
    • Data przyjęcia w KSeF – od – w ramach pola można wybrać datę, zgodnie z którą będzie filtrowana lista dokumentów w punkcie ACD – widoczne będą tylko faktury przyjęte w KSeF od wybranej daty; wprowadzoną wartość można wyczyścić, klikając w znak x po prawej stronie pola;
    • Data przyjęcia w KSeF – do – w ramach pola można wybrać datę, zgodnie z którą będzie filtrowana lista dokumentów w punkcie ACD – widoczne będą tylko faktury przyjęte w KSeF do wybranej daty; wprowadzoną wartość można wyczyścić, klikając w znak x po prawej stronie pola;
    • Wartość brutto [wartość od] [wartość do] – w ramach filtra można wprowadzić zakres wartości brutto faktury, zgodnie z którym nastąpi zawężenie pobieranych danych; dostępne są dwa pola: pierwsze pole od lewej strony, to pole „wartość od”, drugie pole od lewej strony to „wartość do”; operator może wybrać wartość w jednym z pól lub w obu
    • Typ dokumentu – w ramach filtra można wybrać jeden typ dokumentu według którego ma zostać zawężone pobranie danych dokumentów. Dostępne opcje to:
      • faktura VAT
      • faktura uproszczona
      • faktura rozliczeniowa
      • faktura zaliczkowa
      • faktura korygująca
      • faktura korygująca fakturę rozliczeniową
      • korekta faktury zaliczkowej

 

Wprowadzoną wartość można wyczyścić, klikając w znak x po prawej stronie pola.

 

Lista opcji dostępnych w polu „Typ dokumentu”

    • Stan faktury – w ramach filtra można wybrać jeden stan dokumentu, według którego ma zostać zawężone pobranie danych dokumentów. Dostępne opcje to:
    • zarejestrowane w BPM (dawniej DMS) – tzn. wygenerowano wcześniej w Comarch BPM (dawniej DMS) dokumenty o takich samych numerach KSeF i nie zostały one odrzucone w punkcie ACD;
    • niezarejestrowane w BPM (dawniej DMS) – opcja domyślnie zaznaczona; nie wygenerowano wcześniej w Comarch BPM (dawniej DMS) dokumentów o takich samych numerach KSeF i nie zostały one odrzucone w punkcie ACD;
    • odrzucone – dokumenty, które odrzucono na punkcie ACD
    • wszystkie – wszystkie dokumenty: zarejestrowane, niezarejestrowane i odrzucone

Aby uruchomić filtrowanie listy dokumentów według warunków zdefiniowanych w oknie filtry, należy kliknąć w przycisk [Filtruj] – wówczas lista dokumentów w punkcie ACD zostanie zawężona zgodnie z wybranymi wartościami.

 

Okno „Filtry”

 

[Usuń filtry] – jeśli operator kliknie w tę ikonę, wtedy wszystkie warunki wyszukiwania dokumentu, które zdefiniowano w oknie „Filtry” oraz w ramach wyszukiwarki obok przycisku „Szukaj”, zostaną usunięte

 

[Odśwież] – gdy operator kliknie w tę ikonę, wówczas zostanie wyświetlona aktualna lista dokumentów

Operator może również zawęzić listę dokumentów lub wyszukać na niej dokument, wpisując frazę w polu wyszukiwarki nad listą dokumentów, a następnie klikając przycisk [Szukaj], podobnie, jak miało to miejsce w dotychczasowych wersjach.

 

W wersji 2023.0.0 dodano opcję odrzucenia dokumentu w punkcie ACD – w tym celu operator powinien kliknąć prawym przyciskiem myszy na daną pozycję na liście dokumentów w punkcie ACD i kliknąć wyświetlony wówczas przycisk [Odrzuć] – wtedy dokument zniknie z listy dokumentów niezarejestrowanych (jeśli miał taki status) i zostanie zarchiwizowany.

 

Uwaga
Wybór opcji „Odrzuć” jest możliwy tylko dla jednego dokumentu na raz.

 

Odrzucenie dokumentu w punkcie ACD

 

W wersji 2023.0.0 dodano opcję przywrócenia dokumentu w punkcie ACD – w tym celu operator powinien kolejno:

    • Nacisnąć przycisk [Filtry];
    • Zaznaczyć opcję „odrzucone” lub „wszystkie” w ramach pola „Stan faktury”;
    • Nacisnąć przycisk [Filtruj];
    • Na wyświetlonej liście wszystkich dokumentów lub dokumentów odrzuconych kliknąć prawym przyciskiem myszy na daną pozycję i nacisnąć wyświetlony wówczas przycisk [Przywróć] – wtedy dokument zostaje przywrócony i jest widoczny na liście dokumentów niezarejestrowanych (jeśli przedtem miał taki status).

 

Uwaga
Wybór opcji „Przywróć” jest możliwy tylko dla jednego dokumentu na raz.

 

Przywrócenie dokumentu w punkcie ACD

[/su_lightbox]

 

Od wersji 2025.0.0 na liście przeprocesowanych dokumentów w zależności od tego, czy i ile nazw atrybutów wprowadzono na zakładce „Ogólne” podczas konfiguracji punktu ACD (0,1,2 lub 3) widoczne jest 1- 4 kolumn.

Aby wprowadzić wartość w dodatkowych kolumnach, należy kliknąć w daną komórkę w wybranej kolumnie i wierszu, a następnie w poszerzonym polu edycji wpisać tekst. Wówczas wprowadzone dane zostaną zapisane w wybranych kontrolkach typu tekst.

 

Widok listy dokumentów w punkcie ACD typu „Import dokumentów zakupu z KSeF”, jeśli na zakładce „Ogólne” uzupełniono pola „Atrybut 1”, „Atrybut 2” i „Atrybut 3” – przed rozpoczęciem pracy w punkcie

 

Widok listy dokumentów w punkcie ACD typu „Import dokumentów zakupu z KSeF”, jeśli na zakładce „Ogólne” uzupełniono pola „Atrybut 1”, „Atrybut 2” i „Atrybut 3” i przeprocesowano dokument – wprowadzanie wartości dla „Atrybutu 3” (w tym przypadku to „Forma płatności”)

 

Widok listy dokumentów w punkcie ACD typu „Import dokumentów zakupu z KSeF”, jeśli na zakładce „Ogólne” uzupełniono pola „Atrybut 1”, „Atrybut 2” i „Atrybut 3” i przeprocesowano dokument – mapowanie danych z atrybutów do kontrolek typu Tekst

 

Jeśli wcześniej wprowadzono wartość atrybutu do tabeli do.KS_Documents, wówczas po przesunięciu kursora na daną komórkę w ramach kolumny atrybutu zostanie wyświetlona pełna wartość komórki.

Kiedy operator kliknie w nazwę danej kolumny, obok niej pojawi się ikona   – w takim przypadku lista jest posortowana w danej kolumnie według wartości rosnąco. Jeżeli operator kliknie ponownie w nazwę kolumny, wówczas obok tej nazwy wyświetlona zostaje ikona   – wtedy lista zostaje posortowana w danej kolumnie według wartości malejąco

Sortowanie dokumentów rosnąco ma miejsce według następującej kolejności:

  • Uszeregowane alfabetycznie;
  • Uszeregowane według kolejności numerycznej (0-9);
  • Uszeregowane według znaków specjalnych.

Sortowanie dokumentów malejąco ma miejsce według następującej kolejności:

  • Uszeregowane według znaków specjalnych;
  • Uszeregowane według kolejności numerycznej (9-0);
  • Uszeregowane alfabetycznie.

 

Jeśli operator przesunie kursor na początek nazwy danej kolumny, wówczas między kolumnami pojawia się ikona dwustronnej strzałki (kolor strzałki jest zależny od ustawień komputera dla wyglądu kursora) – wówczas po kliknięciu lewym przyciskiem myszki można zmieni szerokość kolumny, przeciągając ją w prawo albo w lewo.

 

Po kliknięciu na daną pozycję na liście dokumentów podgląd dokumentu z KSeF zostanie wyświetlony w lewym panelu, a pod nim widoczna będzie lista kontrolek, którą określono w ramach zakładki „Kontrolki” podczas definiowania danego punktu konfiguracyjnego.

Jeśli dany operator nie ma prawa do edycji dokumentu KSeF w punkcie ACD (podczas konfiguracji danego punktu ACD typu „Import dokumentów zakupu z KSeF” w ramach zakładki „Uprawnienia” nie zaznaczono dla niego parametru „Edycja dokumentu”), wówczas kontrolki na danym dokumencie w punkcie ACD są wyszarzone i niedostępne do edycji.

 

Zaznaczanie parametru „Edycja dokumentu” dla operatora „Administrator”

 

Pracujący punkt konfiguracyjny typu „Import dokumentów zakupu z KSeF” (gdy użytkownik ma prawo do edycji wartości w kontrolkach)

 

Pracujący punkt konfiguracyjny typu „Import dokumentów zakupu z KSeF” (gdy użytkownik nie ma prawa do edycji wartości w kontrolkach)

 

Po sprawdzeniu danych w kontrolkach i ewentualnym uzupełnieniu wartości należy kliknąć w przycisk [Generuj], aby został utworzony nowy dokument w ramach typu obiegu, który zdefiniowano dla danego punktu ACD.

Istnieje możliwość zatrzymania generowania dokumentów – w tym celu należy kliknąć w przycisk [Zatrzymaj], który znajduje się w oknie „Inicjowanie dokumentów”. Generowanie dokumentów zostanie wówczas przerwane.

 

Okno „Inicjowanie dokumentów” z przyciskiem „Zatrzymaj”

 

 

Dokument, który wygenerowano z punkt konfiguracyjnego typu „Import dokumentów zakupu z KSeF”

 

Jeżeli poprawnie skonfigurowano punkt ACD i zapisano zmiany, wówczas po wygenerowaniu danego dokumentu do Comarch DMS nastąpi automatyczne dodanie załącznika w formacie pdf z fakturą KSeF na tym dokumencie, z nazwą faktury jako nazwą załącznika (zgodnie z nazwą faktury w kolumnie KSD_NumerFaktury w tabeli do.KS_Documents). Po kliknięciu w nazwę załącznika lub automatycznie po otwarciu dokumentu podgląd dokumentu zostanie wyświetlony w oknie po prawej stronie karty obiegu, podobnie jak w przypadku innych załączników.

 

Podgląd pliku pdf z fakturą z KSeF

 

Przykładowe błędy

Jeśli po kliknięciu w przycisk [Importuj] i wyborze opcji w oknie „Import faktur z KSeF” :

 

  • w ramach okna „Wybierz certyfikat” użytkownik kliknie przycisk [Anuluj] lub znak X w oknie „Wybierz certyfikat”, wówczas okno zostanie zamknięte i wyświetlony zostanie poniższy komunikat:

 

Komunikat wyświetlany, jeśli nie wybrano certyfikatu

 

  • w ramach okna „Wybierz certyfikat” użytkownik wybrał niewłaściwy certyfikat, wtedy okno zostanie zamknięte i wyświetlony zostanie następujący komunikat:

 

Komunikat wyświetlany, jeśli wybrano niewłaściwy certyfikat

 

  •  przedtem na zakładce „Integracje” (tryb jednofirmowy) lub „Połączenia z ERP” (tryb wielofirmowy) uzupełniono poprawnie pole „Token KSeF”, ale uzupełniono niepoprawnie pole „NIP firmy”, wówczas pobieranie faktur nie jest możliwe i zostaje wyświetlony następujacy komunikat:

 

Komunikat wyświetlany, jeśli  uzupełniono niewłaściwie pole „NIP firmy”

 

  • przedtem na zakładce „Integracje” (tryb jednofirmowy) lub „Połączenia z ERP” (tryb wielofirmowy) uzupełniono poprawnie pole „Token KSeF”, ale uzupełniono niepoprawnie pole „NIP firmy”, wówczas pobieranie faktur nie jest możliwe – zostanie wyświetlone okno „Wybierz certyfikat”, a po wyborze właściwego certyfikatu wyświetli się następujący komunikat:

 

Komunikat wyświetlany, jeśli nie uzupełniono pola „NIP firmy”

 

Rozpoczynasz pracę z Comarch BPM (dawniej DMS) i chcesz dowiedzieć się, jak korzystać z programu? A może masz już podstawową wiedzę o Comarch BPM (dawniej DMS) i chcesz dowiedzieć się więcej?

Sprawdź Szkolenia Comarch BPM (dawniej DMS)!

 




Przykłady zapytań SQL w zakładce Kontrolki dla punktu ACD „Import dokumentów zakupu z KSeF”

W ramach zakładki „Kontrolki”  w przypadku typu punktu ACD „Import dokumentów zakupu z KSeF” (zob. Definiowanie punktu konfiguracyjnego (Import dokumentów zakupu z KSeF)) można zastosować szereg zapytań SQL, aby z pliku został zmapowany określony rodzaj danych. Poniżej przedstawiono przykłady takich zapytań:

  • Załącznik – opcja dostępna od wersji 2024.3.0; użytkownik wybiera kontrolkę typu Załącznik, znajdującą się w danym typie obiegu (w poniższym przykładzie nazwą pliku będzie nazwa faktury)
Select KSD_SourceContent,

CASE

WHEN KSD_NumerFaktury LIKE '%/%' THEN CONCAT(REPLACE(KSD_NumerFaktury, '/', '_'), '.pdf')

ELSE CONCAT(KSD_NumerFaktury, '.pdf')

END AS modified_column

from do.KS_Documents

where KSD_ID=@Id1@

 

Uwaga
W przypadku zastosowania powyższego zapytania jeżeli w nazwie faktury występuje znak /, zostanie zamieniony na _ .

 

Uwaga
Należy pamiętać, że w odróżnieniu od innych zapytań SQL w przypadku wprowadzania zapytania dla kontrolki typu Załącznik w ramach zakładki „Kontrolki” podczas konfiguracji punktu ACD typu „Import dokumentów zakupu z KSeF” konieczne jest dodanie frazy ‘.pdf’, tak, jak przedstawiono w powyższym przykładzie.

 

  • Numer dokumentu – użytkownik wybiera kontrolkę typu Tekst, znajdującą się w danym typie obiegu
select KSD_NumerFaktury

from do.KS_Documents

where KSD_ID=@Id1@
  • Data wystawienia – użytkownik wybiera kontrolkę typu Data i godzina, znajdującą się w danym typie obiegu
Select KSD_DataWystawienia

from do.KS_Documents

where KSD_ID=@Id1@
  • Miejsce wystawienia – użytkownik wybiera kontrolkę typu Tekst, znajdującą się w danym typie obiegu
Select KSD_MiejsceWystawienia

from do.KS_Documents

where KSD_ID=@Id1@
  • Kontrahent – użytkownik wybiera kontrolkę typu Tekst, znajdującą się w danym typie obiegu
select KSC_PodatnikNazwa from do.KS_DocumentContractors p

join do.KS_Documents d on p.KSC_DocumentID=d.KSD_Id

where KSD_Id=@Id1@
  • Kontrahent (dla współpracy z Comarch ERP Optima) – użytkownik wybiera kontrolkę typu Kontrahent, znajdującą się w danym typie obiegu
select top 1 Knt_KntId, Knt_Kod

from [Nazwa_bazy_DMS].[do].[KS_DocumentContractors]

join [Nazwa_bazy_ERPOptima].[cdn].[Kontrahenci] on Knt_Nip = KSC_PodatnikNIP

where KSC_DocumentId=@Id1@
  • Kontrahent (dla współpracy z Comarch ERP XL) – użytkownik wybiera kontrolkę typu Kontrahent, znajdującą się w danym typie obiegu
select top 1 Knt_gidnumer, knt_akronim

from [Nazwa_bazy_DMS].[do].[KS_DocumentContractors]

join [Nazwa_bazy_ERPXL].[cdn].[KntKarty] on Knt_Nip = KSC_PodatnikNIP

where KSC_DocumentId=@Id1@
  • Towar – użytkownik wybiera kontrolkę typu Tekst, znajdującą się w danym typie obiegu
select KSI_ElementNazwa from do.KS_DocumentItems c

join do.KS_Documents d on c.KSI_DocumentID=d.KSD_Id

where KSD_Id=@Id1@
  • Termin płatności – użytkownik wybiera kontrolkę typu Data i godzina, znajdującą się w danym typie obiegu
select KSP_TerminPlatnosci from do.KS_PaymentDates
where KSP_DocumentId=@Id1@
  • Forma płatności – użytkownik wybiera kontrolkę typu Lista, znajdującą się w danym typie obiegu
SELECT

    (
        CASE
            WHEN KSD_FormaPlatnosci = 1 THEN 'Gotówka'

            WHEN KSD_FormaPlatnosci = 2 THEN 'Karta'

            WHEN KSD_FormaPlatnosci = 3 THEN 'Bon'

            WHEN KSD_FormaPlatnosci = 4 THEN 'Czek'

            WHEN KSD_FormaPlatnosci = 5 THEN 'Kredyt'

            WHEN KSD_FormaPlatnosci = 6 THEN 'Przelew'

            WHEN KSD_FormaPlatnosci = 7 THEN 'Płatność Mobilna'

            ELSE 'Inna'

        END

    ) AS FormaPlatnosci

FROM

    do.KS_Documents

WHERE KSD_Id=@ID1@
  • Kod waluty – użytkownik wybiera kontrolkę typu Tekst, znajdującą się w danym typie obiegu
Select KSD_KodWaluty

from do.KS_Documents

where KSD_ID=@Id1@
  • Suma wartości sprzedaży netto – użytkownik wybiera kontrolkę typu Liczba stałoprzecinkowa, znajdującą się w danym typie obiegu
Select isnull(KSD_SumaNettoStawkaPodstawowa,0)

+ isnull(KSD_SumaNettoStawkaObnizona,0)

+ isnull(KSD_SumaNettoStawkaObnizonaDruga,0)

+ isnull(KSD_SumaNettoStawkaObnizonaTrzecia,0)

+ isnull(KSD_SumaNettoStawkiExportowe,0)

+ isnull(KSD_SumaVATOSS,0)

+ isnull(KSD_SumaNetto0_noWDT_NoExport,0)

+ isnull(KSD_SumaNetto0_WDT,0)

+ isnull(KSD_SumaNetto0_Export,0)

+ isnull(KSD_SumaNettoZW,0)

+ isnull(KSD_SumaNettoInna,0)

+ isnull(KSD_SumaNettoRS,0)

+ isnull(KSD_SumaNettoOOKraj,0)

+ isnull(KSD_SumaNettoMarza,0)

from do.KS_Documents

where KSD_Id=@id1@
  • Suma wartości sprzedaży objętej stawką 0% w przypadku wewnątrzwspólnotowej dostawy towarów – użytkownik wybiera kontrolkę typu Liczba stałoprzecinkowa, znajdującą się w danym typie obiegu
Select KSD_SumaNetto0_WDT

from do.KS_Documents

where KSD_ID=@Id1@
  • Suma wartości sprzedaży objętej stawką 0% w przypadku eksportu – użytkownik wybiera kontrolkę typu Liczba stałoprzecinkowa, znajdującą się w danym typie obiegu
Select KSD_SumaNetto0_Export

from do.KS_Documents

where KSD_ID=@Id1@
  • Suma wartości sprzedaży zwolnionej od podatku – użytkownik wybiera kontrolkę typu Liczba stałoprzecinkowa, znajdującą się w danym typie obiegu
Select KSD_SumaNettoZW

from do.KS_Documents

where KSD_ID=@Id1@
  • Suma wartości sprzedaży w przypadku dostawy towarów oraz świadczenia usług poza terytorium kraju, z wyłączeniem kwot wykazanych w polach P_13_5 i P_13_9 – użytkownik wybiera kontrolkę typu Liczba stałoprzecinkowa, znajdującą się w danym typie obiegu
Select KSD_SumaNettoInna

from do.KS_Documents

where KSD_ID=@Id1@
  • Suma wartości świadczenia usług, o których mowa w art. 100 ust. 1 pkt 4 ustawy – użytkownik wybiera kontrolkę typu Liczba stałoprzecinkowa, znajdującą się w danym typie obiegu
Select KSD_SumaNettoRS

from do.KS_Documents

where KSD_ID=@Id1@
  • Suma wartości sprzedaży w procedurze odwrotnego obciążenia, dla której podatnikiem jest nabywca zgodnie z art. 17 ust. 1 pkt 7 i 8 ustawy oraz innych przypadków odwrotnego obciążenia występujących w obrocie krajowym – użytkownik wybiera kontrolkę typu Liczba stałoprzecinkowa, znajdującą się w danym typie obiegu
Select KSD_SumaNettoOOKraj

from do.KS_Documents

where KSD_ID=@Id1@
  • Suma wartości sprzedaży w procedurze marży, o której mowa w art. 119 i art. 120 ustawy – użytkownik wybiera kontrolkę typu Liczba stałoprzecinkowa, znajdującą się w danym typie obiegu
Select KSD_SumaNettoMarza

from do.KS_Documents

where KSD_ID=@Id1@
  • Kwota należności ogółem – użytkownik wybiera kontrolkę typu Liczba stałoprzecinkowa, znajdującą się w danym typie obiegu
Select KSD_SumaBrutto

from do.KS_Documents

where KSD_ID=@Id1@
  • Kurs waluty stosowany do wyliczenia kwoty podatku w przypadkach, o których mowa w przepisach Działu VI ustawy na fakturach, o których mowa w art. 106b ust. 1 pkt 4 ustawy – użytkownik wybiera kontrolkę typu Liczba stałoprzecinkowa, znajdującą się w danym typie obiegu
Select KSD_KursWalutyZ

from do.KS_Documents

where KSD_ID=@Id1@
  • Przepis ustawy albo aktu wydanego na podstawie ustawy, na podstawie którego podatnik stosuje zwolnienie od podatku – użytkownik wybiera kontrolkę typu Tekst, znajdującą się w danym typie obiegu
Select KSD_SprzedazZWUstawa

from do.KS_Documents

where KSD_ID=@Id1@
  • Przepis dyrektywy 2006/112/WE, który zwalnia od podatku taką dostawę towarów lub takie świadczenie usług – użytkownik wybiera kontrolkę typu Tekst, znajdującą się w danym typie obiegu
Select KSD_SprzedazZWDyrektywa

from do.KS_Documents

where KSD_ID=@Id1@
  • Inna podstawa prawna wskazująca na to, że dostawa towarów lub świadczenie usług korzysta ze zwolnienia – użytkownik wybiera kontrolkę typu Tekst, znajdującą się w danym typie obiegu
Select KSD_SprzedazZWPodstawa

from do.KS_Documents

where KSD_ID=@Id1@
  • Data dopuszczenia nowego środka transportu do użytku – użytkownik wybiera kontrolkę typu Data i godzina, znajdującą się w danym typie obiegu
Select KSD_NSTWDT

from do.KS_Documents

where KSD_ID=@Id1@
  • Dane dla przypadków, gdy pole RodzajFaktury przyjmuje wartości KOR, KOR_ZAL lub KOR_ROZ – użytkownik wybiera kontrolkę typu Tekst, znajdującą się w danym typie obiegu
Select KSD_RodzajFaktury

from do.KS_Documents

where KSD_ID=@Id1@
  • Przyczyna korekty dla faktur korygujących – użytkownik wybiera kontrolkę typu Tekst, znajdującą się w danym typie obiegu
Select KSD_PrzyczynaKorekty

from do.KS_Documents

where KSD_ID=@Id1@
  • Data wystawienia faktury korygowanej – użytkownik wybiera kontrolkę typu Data i godzina, znajdującą się w danym typie obiegu
Select KSD_DataWystFaKorygowanej
from do.KS_Documents
where KSD_ID=@Id1@

 

  • Numer faktury korygowanej – użytkownik wybiera kontrolkę typu Tekst, znajdującą się w danym typie obiegu
Select KSD_NrFaKorygowanej

from do.KS_Documents

where KSD_ID=@Id1@
  • Numer identyfikujący fakturę korygowaną w Krajowym Systemie e-Faktur (KSeF) – użytkownik wybiera kontrolkę typu Tekst, znajdującą się w danym typie obiegu
Select KSD_NrKSeFFaKorygowanej

from do.KS_Documents

where KSD_ID=@Id1@
  • Dla faktury korygującej – okres, do którego odnosi się udzielany opust lub obniżka, w przypadku gdy podatnik udziela opustu lub obniżki ceny w odniesieniu do wszystkich dostaw towarów lub usług dokonanych lub świadczonych na rzecz jednego odbiorcy w danym okresie – użytkownik wybiera kontrolkę typu Tekst, znajdującą się w danym typie obiegu
Select KSD_OkresFaKorygowanej

from do.KS_Documents

where KSD_ID=@Id1@
  • Poprawny numer faktury korygowanej w przypadku, gdy przyczyną korekty jest błędny numer faktury korygowanej – użytkownik wybiera kontrolkę typu Tekst, znajdującą się w danym typie obiegu
Select KSD_NrFaKorygowany

from do.KS_Documents

where KSD_ID=@Id1@



Przełączanie trybu pracy z KSeF

W pliku Web.config znajdującym się w katalogu DMS Workflow Api (katalogu z plikami aplikacji serwerowej Comarch DMS) dostępny jest klucz <add key=”KSeFWorkMode” value=” ” />, który pozwala na określenie, czy Firma testuje funkcjonalność wysyłania faktur do KSeF, czy korzysta z niej produkcyjnie.

W ramach klucza można wprowadzić jedną z następujących wartości:

  • Demo –  w przypadku wprowadzenia takiej wartości praca z systemem KSeF odbywa się w trybie Demo:
    • Środowisko przedprodukcyjne (Demo) opiera się o faktyczne dane uwierzytelniające zgodne z rejestrem informacji o właścicielach firm. W celu zalogowania się do usługi konieczne jest posiadanie faktycznych uprawnień, analogicznych jak dla środowiska produkcyjnego
    • W ramach środowiska testowego oraz przedprodukcyjnego (Demo) należy używać zanonimizowanych danych;
    • Działanie środowiska przedprodukcyjnego (Demo) jest analogiczne do systemu produkcyjnego z tą różnicą, że znajdujące się tam dane nie są dokumentami księgowymi.
    • Faktury wystawione w środowisku testowym i przedprodukcyjnym (Demo) nie będą wywierały żadnych skutków prawnych i po określonym czasie zostaną usunięte z systemu.
  • Production –  wartość domyślna od wersji 2026.0.0; w przypadku wprowadzenia takiej wartości praca z systemem KSeF odbywa się w trybie Produkcyjnym, czyli wersji produkcyjnej systemu:
    • praca w tym trybie wymaga poświadczeń za pomocą realnych danych– aby zalogować się do usługi, należy posiadać rzeczywiste uprawnienia;
    • dokumenty realnymi dokumentami księgowymi.
  • Test – w przypadku wprowadzenia takiej wartości praca z systemem KSeF odbywa się w trybie testowym
    • praca w tym trybie wymaga poświadczeń za pomocą fikcyjnych danych;
    • autoryzacja odbywa się za pomocą testowych certyfikatów;
    • dokumenty nie są realnymi dokumentami księgowymi.

 

Klucz „KSeFWorkMode” z wprowadzoną wartością „Demo”




Schemat Mapowania Danych z Plików XML (struktura KSeF) do Konkretnych Tabel w Comarch BPM

Udostępniono dokumentację przedstawiającą zależności pomiędzy danymi z plików XML faktur zakupowych KSeF a odpowiadającymi im polami w tabelach w bazie Comarch BPM.

Po kliknięciu w przycisk znajdujący się poniżej zostanie pobrany plik dotyczący tej kwestii:

 

Pobierz dokument




Zestawienie Powiązań (Relacji) Tabel KSeF w Comarch BPM




Udostępnienie funkcji RPA (automatycznego trybu pracy – robotyzacja) na punktach ACD typu „Import dokumentów zakupu z KSeF”

Robotyzacja na punktach ACD typu „Import dokumentów zakupu z KSeF” – przykład

W wersji 2025.2.0 umożliwiono pełną automatyzację importowania oraz generowania dokumentów przez punkty ACD typu  „Import dokumentów zakupu z KSeF”.

Wprowadzono również możliwość ustawiania filtrów dla punktów ACD typu „Import dokumentów zakupu z KSeF” w konfiguracji automatycznego trybu pracy.

Aby umożliwić wykonywanie działań na wskazanych punktach ACD, wprowadzono nowe metody w obiekcie Globals w klasie ACD, która określa metody wykonywane jedynie w kontekście okna ACD – są to następujące metody:

  • ImportKSeFDocuments() – metoda do automatycznej obsługi pobierania nowych dokumentów z usługi KSeF – ta metoda:
    • Nie posiada parametrów wejściowych
    • Zwraca wyniki:
      • 0 – jeśli operacja wykonała się poprawnie
      • -1- jeśli wystąpił błąd
    • int ImportKSeFDocuments()

return: 0 – ok, -1 – error

Widok okna „Konfiguracji automatycznego trybu” z przykładowym skryptem do automatycznego pobierania dokumentów z KSeF i generowania dokumentów BPM (gdy punkt ACD współpracujący z KSeF nosi nazwę „Faktury KSeF”) – przykład

  • SetKSeFFilters(string, DateTime?,DateTime?, decimal?, decimal?, byte?, byte) – metoda służąca do ustawiania filtrów dla punktów ACD typu „Import dokumentów zakupu z KSeF” według określonych kryteriów. Uruchomienie metody powoduje przeładowanie listy dokumentów przy uwzględnieniu nowych wartości filtrów. Ta metoda:
    • Posiada parametry wejściowe – podanie wszystkich parametrów nie jest wymagane:
      • string – NIP firmy
      • DateTime? – Data przyjęcia dw KSeF- od
      • DateTime? – Data przyjęcia dw KSeF- do
      • decimal? – Wartość brutto – od
      • decimal? – Wartość brutto – do
      • byte? – Typ dokumentu
      • byte – Stan faktury
    • Zwraca wyniki:
      • 0 – jeśli operacja wykonała się poprawnie
      • -1- jeśli wystąpił błąd
    • int SetKSeFFilters(string, string?, string?, decimal?,decimal?, byte?, byte)

string: KSeF NIP

DateTime?: KSeF date from

DateTime?: KSeF date to

decimal?: KSeF gross amount from

decimal?: KSeF gross amount value to

byte?: 0 – VAT invoice, 1 – corrective invoice, 2 – advance invoice, 3 – settlement invoice, 4 – simplified                               invoice,  5 – correction of advance invoice, 6 – corrective settlement invoice

byte: 0 – unregistered, 1 – rejected, 2 – registered, 3 – all

return: 0 – ok, -1 – error

Widok okna „Konfiguracji automatycznego trybu” z przykładowym skryptem do automatycznego pobierania dokumentów z KSeF, filtrowania ich i generowania dokumentów BPM (gdy punkt ACD współpracujący z KSeF nosi nazwę „Faktury KSeF”) – przykład

  • ResetKSeFFilters() – metoda służąca do resetowania filtrów dla punktów ACD typu „Import dokumentów zakupu z KSeF”. Domyślne ustawienia to brak filtrów: NIP firmy, Data przyjęcia w KSeF – od, Data przyjęcia w KSeF – do, Wartość brutto – od, Wartość brutto – do Typ dokumentu. Filtr Stan faktury jest ustawiony na faktury niezarejestrowane w Comarch BPM. Ta metoda:
    • Nie posiada parametrów wejściowych
    • Zwraca wyniki:
      • 0 – jeśli operacja wykonała się poprawnie
      • -1- jeśli wystąpił błąd
    • int ResetKSeFFilters()

return: 0 – ok, -1 – error

Widok okna „Konfiguracji automatycznego trybu” z przykładowym skryptem do automatycznego pobierania dokumentów z KSeF, resetu filtrów i generowania dokumentów BPM (gdy punkt ACD współpracujący z KSeF nosi nazwę „Faktury KSeF”) – przykład

  • SetDocumentFlow(string) – metoda dodana w wersji 2026.0.0; ustawia jeden wybrany obieg, co umożliwia uruchomienie automatyzacji procesu wskazywania typu obiegu dokumentów, którym ma posługiwać się program procesu. Ta metoda:
    • Ma parametr wejściowy: nazwę typu obiegu – jest to parametr obowiązkowy
    • Zwraca wyniki:
      • 0 – operacja wykonała się poprawnie
      • -1 – wystąpił błąd
      • -2 – podany obieg dokumentów nie istnieje

Wprowadzanie kodu na zakładce „Edytor skryptów” na zakładce „Konfiguracja automatycznego trybu pracy” – widoczna jest metoda Globals.ACD.SetDocumentFlow(string)

 

Rozpoczynasz pracę z Comarch BPM (dawniej DMS) i chcesz dowiedzieć się, jak korzystać z programu? A może masz już podstawową wiedzę o Comarch BPM (dawniej DMS) i chcesz dowiedzieć się więcej?

Sprawdź Szkolenia Comarch BPM!