Poradnik

Webhook - co to jest i jak działa w e-commerce

Webhook to sposób, w jaki jeden system natychmiast informuje drugi, że coś się wydarzyło - bez ciągłego dopytywania. Tłumaczymy prostym językiem, czym jest webhook, czym różni się od zwykłego API i jak dzięki niemu zamówienie samo zamienia się w fakturę.

Webhook - co to jest i po co Ci ta wiedza

Webhook to automatyczne powiadomienie o zdarzeniu. Gdy w jednym systemie dzieje się coś ważnego - klient składa zamówienie, zmienia się status przesyłki, spływa płatność - ten system natychmiast wysyła krótki sygnał do innego systemu, żeby ten mógł zareagować. Po angielsku bywa nazywany „reverse API” albo „HTTP callback”, ale najprościej myśleć o nim jako o powiadomieniu push między programami.

Dla sprzedawcy internetowego to nie ciekawostka techniczna, tylko fundament automatyzacji. Bez webhooków (i pokrewnego mechanizmu odpytywania) każdy przepływ danych między sklepem, marketplace, magazynem i księgowością musiałby robić człowiek ręcznie. Z nimi - dzieje się sam.

Webhook a odpytywanie API - dwa podejścia

Żeby zrozumieć webhook, warto zestawić go z klasycznym odpytywaniem API (ang. polling). To dwa sposoby na to samo: dowiedzieć się, że coś się zmieniło.

Odpytywanie API (polling): Twój program co jakiś czas sam pyta platformę „czy jest nowe zamówienie?”. Jak natrętne odświeżanie skrzynki pocztowej co minutę. Działa, ale przez większość czasu odpowiedź brzmi „nic nowego”, więc marnujesz zapytania i czas.

Webhook (powiadomienie zdarzeniowe): to platforma sama daje znać, gdy zdarzenie faktycznie nastąpi. Nie pytasz, tylko czekasz na sygnał. Jak powiadomienie o nowym mailu, które przychodzi w chwili, gdy mail dotrze.

CechaOdpytywanie APIWebhook
Kto inicjujeTwój system pytaPlatforma powiadamia
OpóźnienieZależy od częstotliwości pytańNiemal natychmiast
ObciążenieSetki zapytań „na sucho”Ruch tylko przy zdarzeniu
RyzykoMożna coś przegapić między pytaniamiSygnał może się zgubić w sieci

W praktyce najlepiej działa połączenie obu podejść: webhook daje szybkość, a regularne odpytywanie API pełni rolę siatki bezpieczeństwa, gdy jakieś powiadomienie się nie przebije. Więcej o samych interfejsach znajdziesz we wpisie API w e-commerce - co to jest, a o tym, jak systemy autoryzują takie połączenia, w tekście o OAuth i kluczach API w integracjach.

Jak działa webhook krok po kroku

Mechanizm jest prostszy, niż się wydaje:

  1. Rejestracja adresu. System odbierający (np. Twoje narzędzie łączące sklepy) podaje platformie adres URL, pod który mają trafiać powiadomienia.
  2. Zdarzenie. Na platformie coś się dzieje - klient płaci za zamówienie.
  3. Wysyłka. Platforma wysyła na zarejestrowany adres krótką wiadomość z danymi zdarzenia (najczęściej w formacie JSON): numer zamówienia, kwota, produkty.
  4. Reakcja. System odbierający przetwarza dane i uruchamia dalsze działanie - zapisuje zamówienie, tworzy fakturę, zamawia etykietę.
  5. Potwierdzenie. Odbiorca odpowiada, że przyjął sygnał, żeby platforma wiedziała, że nie musi ponawiać.

Cały ten obieg trwa ułamki sekundy i nie wymaga Twojego udziału. Ty widzisz tylko efekt.

Przykład: nowe zamówienie zamienia się w fakturę

Najczęstszy scenariusz w sprzedaży wielokanałowej wygląda tak. Klient kupuje produkt na Allegro albo w Twoim sklepie na WooCommerce. W tej samej chwili platforma wysyła webhook do narzędzia spinającego Twoją sprzedaż. Narzędzie odbiera sygnał, pobiera pełne dane zamówienia i uruchamia łańcuch działań:

  • zamówienie ląduje w jednym widoku zamówień, niezależnie od kanału, z którego przyszło,
  • na jego podstawie powstaje faktura w Twoim programie księgowym, np. we wFirma lub Fakturownia, z poprawnym NIP-em i stawką VAT,
  • zamówienie trafia do przygotowania wysyłki, a stamtąd do etykiety kurierskiej w InPost czy DHL.

To właśnie jest sens automatyzacji: zdarzenie (zakup) wyzwala serię akcji bez ręcznego przepisywania danych. Cały przepływ od zamówienia do faktury dzieje się w tle. NavyFlame korzysta z powiadomień zdarzeniowych tam, gdzie platforma je udostępnia, a tam gdzie ich nie ma - regularnie odpytuje API, żeby nic Ci nie umknęło. Więcej praktycznych scenariuszy opisaliśmy w poradniku o automatyzacji w małym sklepie.

O czym pamiętać przy webhookach

Webhook to potężne narzędzie, ale ma swoje granice, o których warto wiedzieć:

  • Sieć bywa zawodna. Pojedyncze powiadomienie może się zgubić. Dlatego solidna integracja nigdy nie opiera się wyłącznie na webhookach - dodatkowo cyklicznie odpytuje API.
  • Kolejność i duplikaty. Zdarzenia mogą dotrzeć nie po kolei albo dwa razy. Dobre narzędzie radzi sobie z tym, rozpoznając, że dane zamówienie już obsłużyło (idempotentność).
  • Bezpieczeństwo. Adres webhooka powinien przyjmować dane tylko z zaufanego źródła, żeby nikt podszywający się nie wstrzyknął fałszywego zamówienia.

Dobra wiadomość jest taka, że jeśli korzystasz z gotowego integratora, te wszystkie szczegóły są rozwiązane po jego stronie. Ty nie konfigurujesz webhooków ręcznie ani nie martwisz się o zgubione sygnały - podłączasz swoje integracje i pracujesz w jednym panelu, a narzędzie dba, żeby żadne zamówienie nie umknęło.

Najczesciej zadawane pytania

Webhook to automatyczne powiadomienie, które jeden system wysyła do drugiego w chwili, gdy coś się wydarzy - na przykład gdy klient złoży zamówienie. Zamiast pytać w kółko „czy jest coś nowego?”, dostajesz sygnał dokładnie w momencie zdarzenia. Można to porównać do SMS-a od kuriera: nie dzwonisz co pięć minut, tylko dostajesz wiadomość, gdy paczka faktycznie dotrze.

W zwykłym odpytywaniu API to Ty (a właściwie Twój program) pytasz system o dane, np. co minutę sprawdzasz, czy są nowe zamówienia. Webhook działa odwrotnie: to system sam Cię powiadamia, gdy coś się wydarzy. Webhook jest szybszy i mniej obciąża oba systemy, bo nie generujesz setek zapytań, na które przez większość czasu odpowiedź brzmi „nic nowego”.

Nie. Webhooki to mechanizm techniczny, którym zajmuje się narzędzie łączące Twoje systemy. Jeśli używasz gotowego integratora, obsługę powiadomień zdarzeniowych i odpytywania API bierze on na siebie - Ty widzisz tylko efekt, czyli zamówienia i faktury pojawiające się automatycznie.

Nie każda i nie w takim samym zakresie. Część platform e-commerce udostępnia webhooki dla wybranych zdarzeń (np. nowe zamówienie, zmiana statusu), inne opierają się głównie na odpytywaniu API. Dlatego dobre narzędzie łączy oba podejścia: korzysta z webhooków tam, gdzie są dostępne, a gdzie ich brak, regularnie odpytuje API.

Sieć bywa zawodna, więc pojedyncze powiadomienie może się zgubić. Dlatego solidne integracje nie polegają wyłącznie na webhookach - dodatkowo cyklicznie odpytują API jako siatkę bezpieczeństwa. Dzięki temu nawet jeśli sygnał o zamówieniu nie dojdzie od razu, zostanie ono i tak pobrane przy najbliższej synchronizacji.

Zobacz, jak zdarzenia zamieniają się w działania

Przeklikaj pełne demo NavyFlame bez rejestracji - zobacz, jak nowe zamówienie samo trafia do obsługi, a stamtąd do faktury i wysyłki.

Zobacz demo