słownik automatyzacji
Webhook
Webhook to HTTP callback wysyłany automatycznie przez system źródłowy do wskazanego adresu URL w momencie, gdy nastąpi zdefiniowane zdarzenie. Zamiast odpytywać system co kilka sekund, odbiorca po prostu czeka i reaguje na przychodzące powiadomienie.
Klasyczny model integracji polega na pollingu: aplikacja co pewien czas pyta "czy jest coś nowego?" Webhook odwraca ten model. To system źródłowy pcha dane do odbiorcy z chwilą, gdy zdarzenie nastąpi. Różnica w latencji jest ogromna: polling co minutę oznacza średnio 30 sekund opóźnienia, webhook dociera w ułamku sekundy.
Z technicznego punktu widzenia webhook to po prostu żądanie HTTP POST wysłane na adres URL skonfigurowany przez odbiorcę. W ciele requestu znajdziesz payload w formacie JSON (lub XML w starszych systemach) opisujący zdarzenie. Odbiorca odpowiada kodem 200, żeby potwierdzić odbiór. Brak odpowiedzi lub błąd sprawia, że wiele systemów próbuje ponownie.
Webhook to jedyny sensowny wybór gdy potrzebujesz reakcji w czasie rzeczywistym: płatność Stripe, nowe zgłoszenie w CRM, zmiana statusu zamówienia. Polling nadaje się wyłącznie wtedy, gdy system źródłowy nie wspiera webhooków i nie ma alternatywnego API eventowego.
W praktyce
W projekcie automatyzacji fakturowania webhook ze Stripe uruchamia workflow n8n przy każdym zdarzeniu płatniczym: payment_intent.succeeded, invoice.paid, charge.dispute.created. Stripe wysyła podpisany request z sygnaturą HMAC-SHA256 w nagłówku Stripe-Signature. Pierwszym krokiem workflow jest weryfikacja tej sygnatury, żeby odrzucić fałszywe żądania. Drugim krokiem jest sprawdzenie idempotency key, żeby ta sama płatność nie wygenerowała dwóch faktur przy ponownym dostarczeniu.
Dobrze zaprojektowany webhook handler w n8n robi trzy rzeczy zanim wykona jakąkolwiek logikę biznesową: weryfikuje podpis, sprawdza idempotency, potwierdza świeżość timestampa (odrzuca zdarzenia starsze niż 5 minut). Dopiero potem trafia do outboxa, skąd logika biznesowa jest przetwarzana asynchronicznie.
Powiązane
Budujesz integracje z webhookami?
Pokażę Ci produkcyjne wzorce: weryfikacja sygnatur, idempotency, retry logic i obsługa błędów w n8n.
Webhooki n8n w praktyce