Webhooki pozwalają Loyaltify od razu informować twoje inne systemy, gdy coś się wydarzy, na przykład gdy dołączy nowy klient albo klient zdobędzie punkty. Loyaltify wysyła krótką wiadomość na wybrany przez ciebie adres, a twój system może na nią zareagować.
Przydają się do aktualizowania CRM-u, wyzwalania e-maili we własnych narzędziach lub tworzenia raportów. Ten przewodnik opisuje, jak skonfigurować webhook, co zawiera każda wiadomość i jak sprawdzić, czy wiadomości docierają.
💡 Warto wiedzieć: ta funkcja jest częścią planu Advanced. Przestaje działać po przejściu na niższy plan.
Skonfiguruj webhook
Krok 1: Otwórz konfigurację webhooka
Przejdź do zakładki Integracje i kliknij Połącz na karcie Webhook.
Krok 2: Uzupełnij dane
W oknie Konfiguracja webhooka:
Adres URL endpointu: adres https w twoim systemie, który ma odbierać wiadomości.
Autoryzacja: wybierz Bearer i wpisz własny token albo wybierz Brak.
Zdarzenia: zaznacz te, które chcesz otrzymywać. Musisz wybrać co najmniej jedno.
Następnie zapisz, a twój webhook zacznie działać.
💡 Wskazówka: wybierz Bearer i długi, losowy token. Każda wiadomość będzie wtedy zawierać nagłówek Authorization: Bearer, a po nim twój token, dzięki czemu twój system może sprawdzić, czy wiadomość naprawdę pochodzi od Loyaltify. Ten token jest niezależny od twojego klucza API.
Późniejsze zmiany
Endpoint, autoryzację i zdarzenia możesz zmienić w dowolnym momencie na stronie Konfiguracja webhooka. Na koniec kliknij Zapisz.
Zdarzenia do wyboru
Klient utworzony (
customer.created): dołącza nowy klient.Klient zaktualizowany (
customer.updated): dane klienta zostają zmienione.Transakcja utworzona (
transaction.created): klient otrzymuje saldo początkowe, coś zdobywa, realizuje nagrodę, otrzymuje nagrodę za polecenie lub jego punkty wygasają.Próba rejestracji istniejącego klienta (
customer.signup_attempt): ktoś, kto już ma kartę, ponownie wypełnia twój formularz. Nowe zgłoszenie nie zmienia jego zapisanych danych.
Co zawiera każda wiadomość
Loyaltify wysyła każdą wiadomość w formacie JSON z nagłówkami Content-Type: application/json i User-Agent: Loyaltify-Webhook/1.0. Każda wiadomość składa się z trzech części:
event: jakie to zdarzenie, na przykładcustomer.created.timestamp: kiedy do niego doszło, w UTC (na przykład2026-10-16T16:38:46Z).data: szczegóły, które zależą od zdarzenia.
Liczby, takie jak point i balance_after, są wysyłane jako tekst, na przykład "1.0", a puste wartości to null.
Klient utworzony i Klient zaktualizowany
name,email,phoneibirthdayuuid: ID klienta (to samo, które jest w kodzie QR jego karty)point: jego saldo (przy zdarzeniu Klient utworzony saldo początkowe)custom_fields: odpowiedzi na twoje pytania niestandardowe, w tym ukryte wartości z linku do formularza, takie jakclick_idis_marketing_opted_in: czy klient wyraził zgodę marketingowącreated_at,updated_atistore_uuid
Zdarzenie Klient zaktualizowany zawiera te same pola, z nowymi wartościami. Oto przykład zdarzenia Klient utworzony:
{
"data": {
"name": "Alex",
"uuid": "7f3e9a21",
"email": "[email protected]",
"phone": null,
"point": "1.0",
"birthday": null,
"created_at": "2026-10-16T16:38:41.704Z",
"store_uuid": "a1b2c3d4",
"updated_at": "2026-10-16T16:38:46.790Z",
"custom_fields": {},
"is_marketing_opted_in": true
},
"event": "customer.created",
"timestamp": "2026-10-16T16:38:46Z"
}
Transakcja utworzona
kind: typ transakcji, na przykładinitial(saldo początkowe przy rejestracji),manual,redeem,expired,refereelubreferrerpointiamount: wartości transakcji. Przy wygaśnięciachpointma wartość ujemną.balance_after: saldo klienta po transakcjicampaign: przy realizacjach kampania, która została zrealizowanauser: osoba z zespołu, która zeskanowała kartę (imię i nazwisko, ID i e-mail), lubnullprzy zdarzeniach automatycznych, takich jak wygaśnięciacustomer_uuid,customer_emailicustomer_phonereferred_by_uuid: przy nagrodach za polecenia informacja, kto polecił klientauuid: własne ID transakcjicreated_atistore_uuid
Oto przykład, w którym osoba z zespołu dodaje punkt:
{
"data": {
"kind": "manual",
"user": {
"name": "Sam Taylor",
"uuid": "0b8e7d4c-1f2a-4c3b-9d5e-6a7b8c9d0e1f",
"email": "[email protected]"
},
"uuid": "5c9d2e7a-3b4f-4a1c-8e6d-2f7a9b0c1d3e",
"point": "1.0",
"amount": null,
"campaign": null,
"created_at": "2026-10-16T16:45:10.375Z",
"store_uuid": "a1b2c3d4",
"balance_after": "2.0",
"customer_uuid": "7f3e9a21",
"customer_email": "[email protected]",
"customer_phone": null,
"referred_by_uuid": null
},
"event": "transaction.created",
"timestamp": "2026-10-16T16:45:10Z"
}
Nagroda za polecenie wysyła jednocześnie dwie transakcje: referee dla nowego klienta, z referred_by_uuid ustawionym na ID polecającego, oraz referrer dla klienta, który go polecił.
Próba rejestracji istniejącego klienta
customer: kim jest istniejący klient, wraz z jegouuidicustom_fieldsmatched_on: jak został rozpoznany, na przykład po adresie e-mailsubmission: co właśnie wpisał w formularzuform: którego formularza użył
Aby zobaczyć pełną wiadomość, otwórz dowolne dostarczenie w sekcji Ostatnie zdarzenia (patrz niżej).
Sprawdź dostarczenia
Na stronie Konfiguracja webhooka sekcja Ostatnie zdarzenia pokazuje twoje zdarzenia wraz ze statusem, kodem odpowiedzi, liczbą prób i datą. Kliknij ikonę oka, aby zobaczyć dokładnie, co zostało wysłane, jakie były nagłówki i jak odpowiedział twój system.
Wiadomości nie docierają?
Sprawdź, czy Adres URL endpointu to prawidłowy adres https. Przeglądarki czasem automatycznie wpisują w to pole adres e-mail.
Sprawdź, czy zdarzenie jest zaznaczone na stronie Konfiguracja webhooka.
Sprawdź, czy masz plan Advanced.
Sprawdź zdarzenie w sekcji Ostatnie zdarzenia. Jeśli kod odpowiedzi wskazuje błąd, twój system otrzymał wiadomość, ale ją odrzucił, a ikona oka pokazuje jego odpowiedź.
Nadal coś nie działa? Napisz do zespołu wsparcia przez czat na żywo.
Warto wiedzieć
Wiadomości mogą docierać w innej kolejności, więc jeśli kolejność ma znaczenie, korzystaj ze znacznika czasu.
Przygotuj swój system na to, że to samo zdarzenie może dotrzeć dwa razy, tak na wszelki wypadek. W przypadku transakcji
uuidwdatajest unikalne dla każdej z nich.Korzystasz z API? Webhooki wysyłają krótkie ID klienta. Niektóre żądania API wymagają zamiast tego wewnętrznego numeru klienta, a dokumentacja API pokazuje, jak znaleźć jeden na podstawie drugiego.
Korzystasz z Omnisend? Przewodnik Omnisend wykorzystuje webhook do połączenia z Loyaltify. Link znajdziesz w artykule Przegląd integracji.
Potrzebujesz pomocy?
Chętnie pomożemy!
Jeśli masz pytania dotyczące webhooków, napisz do nas przez czat na żywo w Loyaltify lub użyj przycisku czatu w prawym dolnym rogu tej strony. Nasz zespół chętnie ci pomoże.



