Pracujesz z agentem AI? Kroki 1-3 wykona za Ciebie - wystarczy klucz API i
partnerId, o nazwę sklepu i resztę pól zapyta sam. Zobacz Integrację z agentami AI.1. Utworzenie produktu
Produkt reprezentuje Twój sklep w systemie Paymove. Wszystkie płatności i subprodukty są tworzone w ramach tego produktu. Przykładowy request tworzenia produktu:2. Rejestracja webhooka
Webhook to adres URL po Twojej stronie, który Paymove wywołuje po zakończonej płatności. Dzięki temu nie musisz ręcznie sprawdzać statusu - zamówienia mogą być realizowane automatycznie. Lista możliwych statusów: tabela statusów. Przykładowy request rejestracji webhooka:Jak działa webhook
Statusy płatności w Paymove:Payload webhooka
Kształt payloadu zależy od tego, czy ustawiłeśrequestTemplate.
Bez requestTemplate Paymove wysyła pełny obiekt płatności. Pola bez wartości są pomijane, więc konkretne powiadomienie może zawierać ich mniej:
requestTemplate payload to dokładnie to, co wyrenderuje Twój szablon - ani mniej, ani więcej. Dla szablonu z punktu 2:
W szablonie możesz użyć każdego pola domyślnego payloadu:
Wartości podstawiane w szablonie tekstowym trafiają do payloadu jako łańcuchy znaków -
"price": "{{price}}" da "1000", a nie 1000. Zmienna bez wartości renderuje się jako pusty tekst.Weryfikacja podpisu
Każde żądanie webhooka zawiera nagłówekX-Paymove-Signature. Zweryfikuj go, zanim zaufasz treści - bez tego każdy, kto zna Twój URL, może podszyć się pod Paymove i zrealizować zamówienie bez płatności.
Gotowy kod w Node.js, Pythonie i Javie: Weryfikacja podpisu webhooka.
Wymagana odpowiedź
Twój serwer musi odpowiedzieć kodem HTTP równymexpectedCode. Przyjęło się zwracać przy tym:
Treść odpowiedzi nie jest w ogóle sprawdzana. Pole
expectedResponse jest zapisywane przy webhooku i zwracane w odpowiedzi API, ale nigdy nie jest porównywane z tym, co zwróci Twój serwer - możesz odesłać dowolne body.retries - domyślnie 0, czyli ani razu. Przy ustawionym retries kolejne próby następują po 1 s, 5 s, 5 min, 1 h, a następnie co 3 h.
Wywołania webhooka nie mają limitu czasu po stronie Paymove. Odpowiadaj natychmiast, a właściwe przetwarzanie zamówienia wykonuj asynchronicznie - inaczej wolny endpoint będzie blokował przetwarzanie.
3. Przypisanie webhooka do produktu
Po utworzeniu produktu i zarejestrowaniu webhooka należy je ze sobą powiązać. Dzięki temu każde zdarzenie płatności dotyczące tego produktu automatycznie trafia pod wskazany URL webhooka. Przykładowy request:4. Tworzenie płatności
Po skonfigurowaniu produktu i webhooka możesz zacząć tworzyć płatności. Wybierz metodę integracji:SDK
Pakiet Node.js - zainicjalizuj klienta i wywołaj
createPayment.REST API
Bezpośrednie wywołania HTTP - działa z każdym językiem.