KSeF API - najczęstsze pułapki przy integracji z ERP
Witam,
Po kilku miesiącach integracji różnych systemów ERP z KSeF chciałem podzielić się najczęstszymi problemami na które natrafiam i sposobami ich rozwiązania.
**Problem z timeoutami**
API KSeF potrafi być wolne, szczególnie w godzinach szczytu. Standardowe timeout 30s to za mało. Ustwaiam minimum 60s dla wywołań synchronicznych i 120s dla batch operations.
```typescript
const axiosConfig = {
timeout: 60000,
retry: 3,
retryDelay: 2000
}
```
**Walidacja XML przed wysłaniem**
Najlepiej zrobić własną walidację schematu FA(2) zanim pójdziecie do API. Oszczędzi wam to frustracji z cryptycznymi błędami z serwera. Używam `libxmljs2` do walidacji XSD.
**Rate limiting**
Officialne limity to 60 req/min ale w praktyce lepiej trzymać się 40-45. Implementujcie kolejki z opóźnieniami, szczególnie przy masowym wysyłaniu faktur.
**Obsługa błędów**
KSeF zwraca różne kody błędów w różnych formatach. Czasem w XML, czasem w JSON. Najlepiej przygotować parser który obsłuży oba przypadki.
**Environment switching*
Pamiętajcie o różnych endpointach dla demo i prod. Ja mam to w config:
```typescript
const KSEF_CONFIG = {
demo: 'https://ksef-demo.mf.gov.pl/api',
prod: 'https://ksef.mf.gov.pl/api'
}
```
zCy macie podobne doświadczenia? Jakie inne problemy napokaliście przy integracjach?
6 odpowiedzi
Twoja odpowiedź
Zaloguj się, aby odpowiedzieć w tej dyskusji.