Notyfikacje (webhooki)
Notyfikacje to mechanizm, którym Paymentic informuje Twój system o zdarzeniach zachodzących w cyklu życia transakcji — zmianie statusu płatności, zwrotu czy dodatkowych zdarzeniach specyficznych dla BLIK. Są wysyłane jako zapytania HTTP POST na endpoint, który zdefiniujesz w panelu.
Model webhooków ma jedną wyraźną zaletę: Twój system nie musi odpytywać API, żeby dowiedzieć się o zmianie — to Paymentic aktywnie powiadamia o zdarzeniu, zwykle w ciągu kilku sekund od jego zajścia.
Jak to działa w skrócie
- Konfigurujesz URL webhooka w panelu (Integracja → Notyfikacje). Endpoint musi być publiczny i działać po HTTPS.
- Zdarzenie w Paymentic (np. transakcja zmienia status na
PAID) wyzwala wysyłkę notyfikacji. - Twój endpoint odbiera POST z ciałem JSON i kilkoma nagłówkami
X-Paymentic-*. - Weryfikujesz sygnaturę, żeby potwierdzić autentyczność zdarzenia.
- Zwracasz
HTTP 200 OK(lub202) — w przeciwnym razie Paymentic ponowi wysyłkę.
Dostępne zdarzenia
| Zdarzenie | Kiedy jest wysyłane | Szczegóły |
|---|---|---|
PAYMENT.TRANSACTION_STATUS_CHANGED | Każda zmiana statusu transakcji płatniczej | Szczegóły |
PAYMENT.REFUND_STATUS_CHANGED | Każda zmiana statusu zwrotu | Szczegóły |
PAYMENT.TRANSACTION_BLIK_STATUS_CHANGED | Zmiany statusu po stronie BLIK przy transakcjach BLIK L0 | Szczegóły |
PAYMENT.BLIK_ALIAS_STATUS_CHANGED | Zmiany statusu aliasu BLIK (One Click) | Szczegóły |
Zanim zaczniesz integrację
Zanim napiszesz obsługę webhooków, warto poznać trzy rzeczy:
- Struktura notyfikacji — jak wygląda przychodzący request: nagłówki, body, wersjonowanie.
- Sygnatura — jak zweryfikować, że webhook faktycznie pochodzi od Paymentic.
- Ponawianie notyfikacji — co się dzieje, gdy Twój endpoint nie odpowie, oraz dlaczego obsługa musi być idempotentna.
Dobre praktyki w skrócie
- Zwracaj
200 OKszybko. Ciężkie operacje (wysyłka maila, synchronizacja stanu magazynowego) wykonuj asynchronicznie, po odpowiedzi. - Weryfikuj sygnaturę zawsze. Bez tego webhook to tylko nieuwierzytelniony POST z internetu.
- Obsługa idempotentna. Ten sam
X-Paymentic-Notification-Idnie może zmienić stanu zamówienia więcej niż raz. - Loguj wszystko. Przy debugowaniu webhooków surowy log zapytania jest na wagę złota.
- Monitoruj liczbę retry. Nagły wzrost retry na Twoim endpoincie zwykle oznacza awarię, zanim zauważą ją użytkownicy.