API Endpoints
BizFlow NH udostępnia REST API do integracji z systemami zewnętrznymi. Poniżej kluczowe endpointy.
Uwierzytelnianie
Dział zatytułowany „Uwierzytelnianie”Wszystkie endpointy (oprócz logowania) wymagają tokenu JWT w nagłówku:
Authorization: Bearer <token>POST /api/v1/auth/loginContent-Type: application/json
{ "email": "user@example.com", "password": "password"}Odpowiedź:
{ "accessToken": "eyJhbG...", "refreshToken": "eyJhbG...", "expiresIn": 86400}Refresh token
Dział zatytułowany „Refresh token”POST /api/v1/auth/refreshContent-Type: application/json
{ "refreshToken": "eyJhbG..."}Faktury KSeF
Dział zatytułowany „Faktury KSeF”Wysyłka faktury
Dział zatytułowany „Wysyłka faktury”POST /api/v1/ksef/invoices/sendContent-Type: application/json
{ "sapConfigId": 1, "docType": "OINV", "docEntry": 12345}Odpowiedź:
{ "submissionId": "550e8400-e29b-41d4-a716-446655440000", "status": "Sending"}Status wysyłki
Dział zatytułowany „Status wysyłki”GET /api/v1/ksef/submissions/{submissionId}Odpowiedź:
{ "id": "550e8400-e29b-41d4-a716-446655440000", "status": "Accepted", "ksefNumber": "2026-0315-XXXXXXXXXX-XX", "ksefDate": "2026-03-15T10:30:00Z"}Lista wysyłek
Dział zatytułowany „Lista wysyłek”GET /api/v1/ksef/submissions?sapConfigId=1&status=Accepted&page=1&pageSize=50Podgląd XML
Dział zatytułowany „Podgląd XML”POST /api/v1/ksef/invoices/previewContent-Type: application/json
{ "sapConfigId": 1, "docType": "OINV", "docEntry": 12345, "mappingProfileId": 1}Zwraca wygenerowany XML bez wysyłki do KSeF.
Konfiguracja SAP
Dział zatytułowany „Konfiguracja SAP”Lista połączeń
Dział zatytułowany „Lista połączeń”GET /api/v1/sap-configDodaj połączenie
Dział zatytułowany „Dodaj połączenie”POST /api/v1/sap-configContent-Type: application/json
{ "name": "Firma ABC", "serviceLayerUrl": "https://sapserver:50000/b1s/v1/", "companyDb": "SBO_ABC", "username": "BizFlowNH", "password": "password", "ksefEnvironment": "Test"}Test połączenia
Dział zatytułowany „Test połączenia”POST /api/v1/sap-config/{id}/testProfile mapowania
Dział zatytułowany „Profile mapowania”Lista profili
Dział zatytułowany „Lista profili”GET /api/v1/mapping-profiles?sapConfigId=1Import profilu
Dział zatytułowany „Import profilu”POST /api/v1/mapping-profiles/importContent-Type: application/json
{ "sapConfigId": 1, "profile": { ... }}Eksport profilu
Dział zatytułowany „Eksport profilu”GET /api/v1/mapping-profiles/{id}/exportCertyfikaty
Dział zatytułowany „Certyfikaty”Lista certyfikatów
Dział zatytułowany „Lista certyfikatów”GET /api/v1/certificates?sapConfigId=1Upload certyfikatu
Dział zatytułowany „Upload certyfikatu”POST /api/v1/certificates/uploadContent-Type: multipart/form-data
sapConfigId: 1type: Authenvironment: Testfile: (plik PFX)password: haslo_do_pfxMapowanie VAT
Dział zatytułowany „Mapowanie VAT”Lista mapowań
Dział zatytułowany „Lista mapowań”GET /api/v1/vat-mappings?sapConfigId=1Dodaj mapowanie
Dział zatytułowany „Dodaj mapowanie”POST /api/v1/vat-mappingsContent-Type: application/json
{ "sapConfigId": 1, "sapVatCode": "Dzw", "ksefCategory": "23", "description": "Dostawa towarów 23%"}Stan systemu
Dział zatytułowany „Stan systemu”Health check
Dział zatytułowany „Health check”GET /api/v1/healthOdpowiedź:
{ "status": "Healthy", "components": { "database": "Healthy", "rabbitmq": "Healthy", "redis": "Healthy", "openbao": "Healthy", "minio": "Healthy", "pdfSidecar": "Healthy" }}Stan KSeF (Latarnia)
Dział zatytułowany „Stan KSeF (Latarnia)”GET /api/v1/ksef/statusOdpowiedź:
{ "status": "Available", "lastChecked": "2026-03-15T10:30:00Z", "environment": "Production"}Kody odpowiedzi
Dział zatytułowany „Kody odpowiedzi”| Kod | Opis |
|---|---|
| 200 | Sukces |
| 201 | Utworzono |
| 400 | Błąd walidacji (nieprawidłowe dane) |
| 401 | Brak autoryzacji (token wygasł lub nieprawidłowy) |
| 403 | Brak uprawnień (rola nie pozwala) |
| 404 | Nie znaleziono |
| 500 | Błąd wewnętrzny serwera |