Skip to content

Dostarczanie webhooków

Jak inFakt dostarcza zdarzenia na adres webhooka, kiedy ponawia wysyłkę i jak obsłużyć powtórzenia.

Zaktualizowano

Webhook to adres URL w aplikacji integratora, na który inFakt wysyła żądanie POST z danymi zdarzenia w formacie JSON, np. gdy faktura zostanie opłacona, trafi do KSeF albo zakończy się zadanie asynchroniczne. Integracja z webhookiem nie musi cyklicznie odpytywać API o zmiany.

Zdarzenie jest dostarczone, gdy serwer odbiorcy odpowie kodem 200 lub 201. Każda inna odpowiedź, przekroczenie czasu lub brak połączenia oznacza ponowienie wysyłki. Po 6 nieudanych próbach inFakt wysyła powiadomienie e-mailem, a po 10 wyłącza webhook (status Wyłączony przez inFakt).

Ponowienia

Serwer odbierający zdarzenia bywa chwilowo niedostępny, np. podczas wdrożenia lub awarii. Ponowienia chronią zdarzenia przed utratą, ale to samo zdarzenie może przez nie dotrzeć więcej niż raz. Liczbę dotychczasowych prób podaje pole event.retry_counter.

Zalecenia dla odbiorcy:

  • odpowiadać kodem 200 od razu po zapisaniu zdarzenia, a przetwarzać je w tle;
  • rozpoznawać powtórzenia po event.uuid i pomijać zdarzenia już przetworzone;
  • weryfikować podpis każdego żądania.

Ograniczenia

  • Webhooki obsługują tylko zdarzenia wymienione na stronie Zdarzenia webhooków.
  • Webhooki konfiguruje się w aplikacji inFakt (Ustawienia → Inne opcje → Webhooki), a nie przez API.
  • Zdarzenie informuje o zmianie. Aktualny stan zasobu najlepiej odczytać z API.
  • Nowy webhook działa dopiero po weryfikacji adresu. Do tego czasu ma status Do weryfikacji.

Zobacz też

Type to search…

↑↓ wybór↵ otwórzEsc zamyka