Rozwiązywanie problemów
Połączenie z SAP
Dział zatytułowany „Połączenie z SAP””Connection refused” przy testowaniu połączenia
Dział zatytułowany „”Connection refused” przy testowaniu połączenia”Przyczyny:
- Service Layer nie działa na serwerze SAP
- Port (50000/50001) jest zablokowany przez firewall
- Błędny adres URL
Rozwiązanie:
- Na serwerze SAP sprawdź status Service Layer:
systemctl status b1s - Sprawdź dostępność portu z serwera BizFlow NH:
curl -k https://sapserver:50000/b1s/v1/Info - Sprawdź reguły firewalla
- Upewnij się, że adres URL kończy się na
/b1s/v1/
”SSL connection could not be established”
Dział zatytułowany „”SSL connection could not be established””Przyczyna: Service Layer używa certyfikatu self-signed.
Rozwiązanie:
- Dodaj certyfikat CA serwera SAP do zaufanych w kontenerze
- Tymczasowo (tylko do testów): ustaw
SAP_IGNORE_SSL=truew.env
”Authorization failed” (401)
Dział zatytułowany „”Authorization failed” (401)”Przyczyny:
- Nieprawidłowy login lub hasło
- Użytkownik zablokowany w SAP
- Błędna nazwa CompanyDB (wielkość liter!)
Rozwiązanie:
- Sprawdź dane logowania bezpośrednio w Service Layer (Postman/curl)
- W SAP: Administracja — Użytkownicy — sprawdź status użytkownika
- Sprawdź dokładną nazwę bazy:
GET /b1s/v1/CompanyList
Certyfikaty KSeF
Dział zatytułowany „Certyfikaty KSeF””Certificate expired” przy wysyłce
Dział zatytułowany „”Certificate expired” przy wysyłce”Przyczyna: Certyfikat autoryzacji wygasł.
Rozwiązanie:
- Dashboard — Ustawienia — Organizacja — [firma] — Integracja KSeF — sprawdź datę ważności certyfikatu
- Wgraj nowy certyfikat lub uruchom enrollment
- Nie jest wymagany restart systemu
”Invalid certificate for environment”
Dział zatytułowany „”Invalid certificate for environment””Przyczyna: Certyfikat jest dla innego środowiska (np. certyfikat test użyty na demo).
Rozwiązanie:
- Sprawdź środowisko certyfikatu vs środowisko KSeF firmy
- Wgraj certyfikat dla właściwego środowiska
”ECDSA P-256 key required for offline certificate”
Dział zatytułowany „”ECDSA P-256 key required for offline certificate””Przyczyna: Certyfikat offline musi mieć klucz ECDSA P-256. Wgrany certyfikat ma inny typ klucza (np. RSA).
Rozwiązanie:
- Wygeneruj certyfikat offline przez enrollment (automatycznie użyje P-256)
- Lub uzyskaj certyfikat z kluczem ECDSA P-256 od dostawcy
Logowanie i konta
Dział zatytułowany „Logowanie i konta”Zapomniałem hasła
Dział zatytułowany „Zapomniałem hasła”Na stronie logowania kliknij Zapomniałeś hasła? — system wyśle email z linkiem do resetowania hasła. Link jest ważny przez ograniczony czas.
Jeśli email nie dochodzi:
- Sprawdź folder spam
- Sprawdź konfigurację SMTP w
.env - Poproś administratora o ręczny reset hasła (Ustawienia — Użytkownicy — Reset hasła)
Faktury odrzucone przez KSeF
Dział zatytułowany „Faktury odrzucone przez KSeF””Element ‘NIP’ is missing”
Dział zatytułowany „”Element ‘NIP’ is missing””Przyczyna: Brak NIPu nabywcy w wygenerowanym XML.
Rozwiązanie:
- Sprawdź czy kontrahent w SAP ma wypełnione pole FederalTaxID
- Jeśli nabywca nie ma NIPu (osoba fizyczna), profil powinien ustawiać
BrakID=1 - Sprawdź mapowanie pola
Faktura.Podmiot2.DaneIdentyfikacyjne.NIP
”Invalid tax rate category”
Dział zatytułowany „”Invalid tax rate category””Przyczyna: Kod VAT z SAP nie jest zmapowany w tabeli mapowania VAT.
Rozwiązanie:
- Otwórz profil mapowania — zakładka VAT
- Sprawdź, który kod VAT jest na fakturze (np. w SAP)
- Dodaj brakujące mapowanie
”Schema validation failed”
Dział zatytułowany „”Schema validation failed””Przyczyna: Wygenerowany XML nie jest zgodny ze schematem FA(3).
Rozwiązanie:
- Użyj podglądu XML w dashboardzie
- Porównaj z oficjalnym schematem FA(3)
- Najczęstsze problemy: brakujące wymagane pola, nieprawidłowy format daty, nieprawidłowa struktura adresu
”Duplicate invoice”
Dział zatytułowany „”Duplicate invoice””Przyczyna: Faktura o tym samym identyfikatorze została już wysłana do KSeF.
Rozwiązanie:
- Sprawdź czy faktura nie została wcześniej wysłana (dashboard — filtr Accepted)
- Każdy dokument może być wysłany do KSeF tylko raz
Tryb offline
Dział zatytułowany „Tryb offline”Tryb offline nie aktywuje się mimo niedostępności KSeF
Dział zatytułowany „Tryb offline nie aktywuje się mimo niedostępności KSeF”Przyczyny:
- BizFlow NH nie ma dostępu do API Latarni
- Latarnia nadal raportuje
Available(KSeF jest niedostępny, ale Latarnia tego nie wie)
Rozwiązanie:
- Sprawdź dostępność Latarni:
curl https://latarnia.ksef.mf.gov.pl/api/Status - Sprawdź logi:
./ctl.sh logs api | grep Latarnia - Ręczne przełączenie na tryb offline: w selektorze firm (CompanySelector) w nagłówku dashboardu rozwiń dropdown i wybierz override stanu Latarni. Opcja dostępna wyłącznie w środowiskach testowych i demo.
Kody QR nie generują się
Dział zatytułowany „Kody QR nie generują się”Przyczyny:
- Brak certyfikatu offline (KOD II)
- PDF Sidecar nie działa
Rozwiązanie:
- Sprawdź czy certyfikat offline jest wgrany (Dashboard — Certyfikaty)
- Sprawdź health check PDF Sidecar:
./ctl.sh status - Sprawdź logi:
./ctl.sh logs pdf-sidecar
”PDF sidecar unhealthy”
Dział zatytułowany „”PDF sidecar unhealthy””Przyczyna: Kontener PDF Sidecar nie działa lub nie odpowiada na health check.
Rozwiązanie:
- Sprawdź status:
./ctl.sh status - Restart:
docker restart bizflow-pdf-sidecar - Sprawdź logi:
./ctl.sh logs pdf-sidecar - Sprawdź czy port 3100 nie jest zajęty przez inny proces
PDF nie zawiera danych faktury
Dział zatytułowany „PDF nie zawiera danych faktury”Przyczyna: Błąd w przekazywaniu danych do PDF Sidecar.
Rozwiązanie:
- Sprawdź logi API:
./ctl.sh logs api | grep PDF - Sprawdź czy MinIO działa:
./ctl.sh status - Sprawdź wersję PDF Sidecar vs API (kompatybilność)
Panel serwisowy
Dział zatytułowany „Panel serwisowy”Panel serwisowy (dostępny dla ról super_admin i service) zawiera trzy zakładki:
SAP Setup
Dział zatytułowany „SAP Setup”Instalacja i zarządzanie UDT, UDF i UDO w SAP. Wyświetla listę wymaganych obiektów z ich statusem instalacji. Opcja Install All Missing do automatycznej instalacji brakujących elementów.
Zawiera również snippet triggera SQL — gotowy do skopiowania kod MSSQL lub HANA dla SBO_TransactionNotification, który tworzy zdarzenia w tabeli @BCD_EVENTS. Snippet jest generowany dynamicznie na podstawie konfiguracji firmy.
Submissions
Dział zatytułowany „Submissions”Historia wysyłek do KSeF z możliwością filtrowania, podglądu szczegółów i ponowienia (retry) nieudanych wysyłek.
Diagnostics
Dział zatytułowany „Diagnostics”Narzędzia diagnostyczne: sprawdzenie połączenia z SAP, KSeF, bazą danych, weryfikacja certyfikatów i konfiguracji.
Znane ograniczenia
Dział zatytułowany „Znane ograniczenia”Faktury zakupu (SAP Purchase Invoices)
Dział zatytułowany „Faktury zakupu (SAP Purchase Invoices)”Obsługa faktur zakupu z KSeF jest w fazie planowania. W menu bocznym pozycja SAP — Faktury zakupu wyświetla stronę “Coming soon”.
Jak sprawdzić wersję BizFlow NH?
Dział zatytułowany „Jak sprawdzić wersję BizFlow NH?”./ctl.sh status# lubcurl http://localhost:5001/api/v1/healthJak zrestartować cały system?
Dział zatytułowany „Jak zrestartować cały system?”./ctl.sh stop && ./ctl.sh startJak zebrać logi do zgłoszenia?
Dział zatytułowany „Jak zebrać logi do zgłoszenia?”./ctl.sh logs --all --since 1h > bizflow-logs.txtWyślij plik bizflow-logs.txt do supportu BizCode.