Search
K
Links
Comment on page

URL Értesítés

Működés

Használja a NotificationUrl paramétert, hogy automatikusan értesüljön a tranzakciók státuszának változásáról. Az inicializáció (Init) során adja át az értesítési URL címet a NotificationUrl paraméterben. Rendszerünk ezt a címet hívja meg a tranzakció státuszának megváltozásakor.
Rendszerünk legfeljebb 5 alkalommal kísérli meg a megadott értesítési URL hívását, amíg a hívásra HTTP 200 választ nem kap. Az értesítés a tranzakció részletes adatait tartalmazza JSON formátumban (a Details hívás eredményének megfelelően), amit application/json típusként küldünk, így az adat a raw request body-ból nyerhető ki.
Jelezze vissza rendszerünk számára, hogy a kereskedő oldala értesült a tranzakció eredményéről. Ehhez indítson egy Result kérést minden rendszerünktől visszaérkező NotificationUrl hívás után. Result kérés hiányában a tranzakció “megválaszolhatatlan” állapotot kap a PayAdmin felületén.
A NotificationUrl átadása minden tranzakció inicializáció során kötelező. Továbbá figyeljen arra, hogy a megadott értesítési URL cím (NotificationUrl):
  • rendelkezzen HTTPS protokollal
  • legyen mindenkor publikusan elérhető
A JSON formátumú értesítésben található paraméterek kis kezdőbetűkkel szerepelnek. Ezzel ellentétben a tranzakció részletes adatainak lekérdezésére (Details hívásra) adott válasz paraméterei nagy kezdőbetűvel rendelkeznek.

Beállítás lépései

Végezze el a következő lépéseket az URL értesítés megfelelő működéséhez.
A leírt folyamatot minden egyes NotificationUrl híváskor végre kell hajtani.
  1. 1.
    Adjon meg egy értesítési URL címet a NotificationUrl paraméter segítségével.
  2. 2.
    Vizsgálja meg, hogy a raw request body tartalmaz JSON típusú adattartalmat (a rendszerünkből érkező NotificationUrl hívás során).
  3. 3.
    Nyerje ki az aktuális TransactionId értéket a raw request body-ból.
  4. 4.
    Indítson egy Result kérést melyben megadja a NotificationUrl törzséből kinyert TransactionId értéket.
  5. 5.
    Dolgozza fel a Result kérésre kapott választ, majd
  6. 6.
    mentse el a rendszerében a tranzakció végstátuszát (ResultCode).
  7. 7.
    Válaszoljon HTTP 200-as státusz kóddal a rendszerünkből érkező NotificationUrl hívásra.
PHP használata esetén így nyerheti ki a TransactionId értékét:
$json = file_get_contents('php://input');
$data = json_decode($json);
$transactionId = $data->commonData->transactionId;

Példa (URL értesítés beállítására teszt környezetben)

curl --url 'https://system-test.paymentgateway.hu/api/payment/' \
--user 'sdk_test:86af3-80e4f-f8228-9498f-910ad' \
--user-agent 'Init | merchant-store.com | PHP | 7.3.0' \
--request 'POST' \
--data 'method=Init' \
--data 'json=
{
"StoreName":"sdk_test",
"ProviderName":"Borgun2",
"ResponseUrl":"https://demo.paymentgateway.hu/response.php",
"Amount":100,
"Currency":"HUF",
"OrderId":"BF-TEST-ORDER",
"UserId":"BF-TEST-USER",
"NotificationUrl":"https://merchant.notification.url"
}'