# Verifikáció eredményének lekérdezése (Result)

### Működés

Használja a `Result` hívást a verifikáció eredményének lekérdezéséhez. A verifikáció után rendszerünk visszairányítja a vásárlót az áruházba, úgy, hogy meghívja azt a `ResponseUrl`-t, amit az inicializáció (`Init`) során adott meg a kereskedő oldala. Miután rendszerünk meghívja a `ResponseUrl`-t, a kereskedő oldala elindíthatja a `Result` hívást.

`Result` hívás indításához szüksége lesz az adott tranzakció azonosítójára. Ezért a rendszerünkből érkező `ResponseUrl` hívás kiegészül a `TransactionId` GET paraméterrel, amely az adott tranzakció azonosítót biztosítja.

Fontos, hogy minden rendszerünkből érkező `ResponseUrl` hívás után indítson egy `Result` hívást, a vásárlói munkamenettől függetlenül. Ennek oka, hogy előfordulhat, hogy a `ResponseUrl` hívásra később, aszinkron módon, a háttérben kerül sor.

Rendszerünk aszinkron módon elindítja a `NotificationUrl` hívást, abban az esetben, ha beállt az adott tranzakció végstátusza. A `NotificationUrl` az inicializáció (`Init`) során kötelezően átadandó URL cím. Itt is fontos, hogy minden rendszerünkből érkező `NotificationUrl` hívás után indítson egy `Result` hívást.

Rendszerünk a `Result` hívás hatására értesül arról, hogy a kereskedő oldala megkapta a tranzakció eredményét. Ezért amennyiben a `Result` hívásra nem kerül sor, a tranzakció rendszerünkben a "megválaszolhatatlan" állapotot veszi fel.

[<mark style="color:blue;background-color:blue;">**Próbálja ki ezt a funkciót!**</mark>](https://demo.nevogate.com/views/?action=result)

{% hint style="info" %}
További részletekért a `NotificationUrl` használatáról látogassa meg a következő hivatkozást: [URL Értesítés](https://docs.nevogate.com/fizetoeszkoz-verifikacio/bankkartya-es-mobiltarca/url-ertesites)

A tranzakció állapotairól a rendszerünkben pedig a következő oldalon olvashat további információkat: [Tranzakció Állapotok](https://docs.nevogate.com/segedlet/tranzakcio-allapotok)
{% endhint %}

{% hint style="warning" %}
Figyeljen arra, hogy `Result` kérést kizárólag `ResponseUrl` vagy `NotificationUrl` hívások hatására indítson. A kereskedő rendszeréből indokolatlanul, vagy ütemezett módon `Result` kérést indítani tilos!
{% endhint %}

{% hint style="warning" %}
A fizetési tranzakcióhoz kapcsolódó adatok közül a kommunikációs naplóbejegyzések (log) a fizetési tranzakció létrehozását követő 2 évig, míg minden egyéb adat a szolgáltatási szerződés megszűnéséig érhető el.
{% endhint %}

### **Az API kérés általános információi**

<table data-full-width="true"><thead><tr><th>Művelet</th><th>HTTP kérés</th><th>Adatok</th></tr></thead><tbody><tr><td><code>Result</code></td><td><code>POST</code></td><td>method=<code>Result</code><br><br>json={JSON encode-olt paraméterek}</td></tr></tbody></table>

### **API kérés paraméterek**

A `Result` kérés egy (kötelező) paraméterrel rendelkezik

<table data-full-width="true"><thead><tr><th>Paraméter</th><th>Típus</th><th>Érték</th><th>Leírás</th></tr></thead><tbody><tr><td><code>TransactionId</code></td><td>string<br><br>(32 karakter)</td><td>32 karakter hosszú md5 hash</td><td>A tranzakció azonosítója a <em>Nevogate</em> rendszerében.</td></tr></tbody></table>

#### **Mintakód**

Tranzakció eredményének lekérése `Result` használatával

{% code overflow="wrap" %}

```php
curl --url 'https://system-test.paymentgateway.hu/api/payment/' \
  --user 'sdk_test:86af3-80e4f-f8228-9498f-910ad' \
  --user-agent 'Result | merchant-store.com | PHP | 7.3.0' \
  --request 'POST' \
  --data 'method=Result' \
  --data 'json=
    {
        "TransactionId":"992c8e75435e6d4dfdf6415f0714cae8"
    }'
```

{% endcode %}

### **API válasz paraméterek**

A `Result` kérés eredményét JSON formában válaszoljuk meg. A válasz a következő paramétereket tartalmazza:

<table data-full-width="true"><thead><tr><th width="346">Paraméter</th><th width="132">Típus</th><th>Érték</th><th>Leírás</th></tr></thead><tbody><tr><td><code>StoreName</code></td><td>string</td><td>egyedi értékek</td><td>Rendszerünkben tárolt egyedi boltazonosító.</td></tr><tr><td><code>ProviderName</code></td><td>string</td><td>egyedi értékek</td><td>A tranzakcióhoz kiválasztott fizetési szolgáltató.</td></tr><tr><td><code>TransactionId</code></td><td>string</td><td>32 karakter hosszú md5 hash</td><td>A tranzakció azonosítója a <em>Nevogate</em> rendszerében.</td></tr><tr><td><code>ResultCode</code></td><td>string</td><td><p>A tranzakció státusza lehet:</p><ul><li>PENDING</li><li>SUCCESSFUL</li><li>ERROR</li><li>CANCELED</li><li>TIMEOUT</li></ul><p>Hiba esetén a következő eredménykódok jelölik a hiba okát:</p><ul><li>InactiveStore</li><li>MissingParameter</li><li>MissingRemoteAddress</li><li>UnauthorizedAccess</li><li>UnauthorizedRemoteAddress</li><li>UnknownStore</li><li>UnknownTransaction</li><li>WrongApikey</li></ul></td><td>Jelzi a tranzakció eredményét.<br><br>A tranzakció státuszokról a következő oldalon olvashat további információkat: <a href="../../segedlet/tranzakcio-statuszok">Tranzakció státuszok</a></td></tr><tr><td><code>ResultMessage</code></td><td>string</td><td>leírás</td><td>Az egyes <code>ResultCode</code> értékek szöveges magyarázata.</td></tr><tr><td><code>Anum</code></td><td>string</td><td>egyedi értékek</td><td><p>A tranzakció engedélyszáma a fizetési szolgáltató rendszerében.<br></p><p>(Csak bizonyos szolgáltatók esetén.)</p></td></tr><tr><td><code>Amount</code></td><td>number</td><td>egyedi értékek</td><td><p>A tranzakció bruttó végösszege.<br></p><p>(Az összeg amit a vásárló kifizetett.)</p></td></tr><tr><td><code>Currency</code></td><td><p>string<br></p><p>(3 karakter)</p></td><td><ul><li>HUF</li><li>EUR</li><li>USD</li><li>...</li></ul></td><td>A tranzakció devizaneme.</td></tr><tr><td><code>OrderId</code></td><td>string</td><td>egyedi értékek<br><br>(kivéve e-mail címek, illetve személyes adatok)</td><td><p>A megrendelés azonosítója a kereskedő áruházában.<br></p><p>(Az inicializáció során átadott <code>OrderId</code>.)</p></td></tr><tr><td><code>UserId</code></td><td>string</td><td><p>egyedi értékek</p><p>(kivéve e-mail címek, illetve személyes adatok)</p></td><td><p>A vásárló azonosítója a kereskedő áruházában.<br></p><p>(Az inicializáció során átadott <code>UserId</code>.)</p></td></tr><tr><td><code>Language</code></td><td><p>string</p><p><br>(2 karakter)</p></td><td><ul><li>HU (alapért.)</li><li>EN</li><li>DE</li><li>...</li></ul><p>(ISO 639-1 alapján)</p></td><td>A fizetési felület nyelve.</td></tr><tr><td><code>ProviderTransactionId</code></td><td>string</td><td>egyedi értékek</td><td>A tranzakció azonosítója a fizetési szolgáltató rendszerében.</td></tr><tr><td><code>AutoCommit</code></td><td>string</td><td><ul><li>“true”</li><li>“false”</li></ul></td><td><p>Jelzi, hogy a bank azonnal vagy később hajtja végre a tranzakciót.<br></p><p>(Az inicializáció során beállított <code>AutoCommit</code> értéke.)</p></td></tr><tr><td><code>CommitState</code></td><td>string</td><td><ul><li>PENDING</li><li>APPROVED</li><li>DECLINED</li></ul></td><td><p>Kétlépcsős tranzakció esetén jelzi a tranzakciós összeg állapotát.<br></p><p>• PENDING: az összeg zárolásra került, de még terhelésre vár (tranzakció lezárással)</p><p>• APPROVED: a végleges összeg beterhelése megtörtént</p><p>• DECLINED: a zárolt összeg feloldásra került (nem történt terhelés)</p></td></tr><tr><td><code>PaywallPaymentName</code></td><td>string<br><br>(36 karakter)</td><td><ul><li>null</li><li>UUID</li></ul></td><td>A tranzakció <em>PayWall</em> azonosítója (kizárólag a <em>PayWall</em> segítségével indított fizetések esetén).</td></tr><tr><td><code>PaywallRecurringPaymentEnabled</code></td><td>string</td><td><ul><li>"true"</li><li>"false"</li></ul></td><td>Jelzi a vásárló hozzájárulását, hogy a kereskedő a jövőben az adott tranzakcióra hivatkozva újabb, ismétlődő tranzakciókat indíthasson (kizárólag a <em>PayWall</em> segítségével indított fizetések esetén).</td></tr><tr><td><code>PaymentRegistrationType</code></td><td>string</td><td><ul><li>CIT</li><li>MIT</li></ul></td><td>Jelzi a fizetési regisztráció típusát.</td></tr><tr><td><code>SzepPocket</code></td><td>string</td><td><ul><li>null</li></ul></td><td>A tranzakció inicializálása (<code>Init</code>) során megadott zsebazonosító (SZÉP Kártyás fizetés esetén).</td></tr><tr><td><code>ProviderResultCode</code></td><td>string</td><td><p>egyedi értékek, melyek csak az alábbi fizetési szolgáltatóktól származhatnak (szolgáltató és hozzá tartozó kód párosként felsorolva):</p><ul><li>GP (PRCODE)</li><li>RaiffeisenUPC (TranCode)</li></ul></td><td>A fizetési szolgáltató rendszeréből származó elsődleges eredmény- vagy hibakód.</td></tr><tr><td><code>ProviderResultCode2</code></td><td>string</td><td><p>egyedi értékek, melyek csak az alábbi fizetési szolgáltatóktól származhatnak (szolgáltató és hozzá tartozó kód párosként felsorolva):</p><ul><li>GP (SRCODE)</li><li>RaiffeisenUPC (HostCode)</li></ul></td><td>A fizetési szolgáltató rendszeréből származó másodlagos eredmény- vagy hibakód.</td></tr><tr><td><code>PaymentLinkName</code></td><td>string<br><br>(35 karakter)</td><td>egyedi értékek</td><td>A fizetési hivatkozás azonosítója a <em>Nevogate</em> rendszerében (amennyiben a tranzakció <em>PayLink</em> segítségével jött létre).</td></tr><tr><td><code>Created</code></td><td>string</td><td>dátum</td><td>A tranzakció létrehozásának ideje.</td></tr><tr><td><code>ResponseId</code></td><td>integer</td><td>egyedi értékek</td><td>A válaszüzenet egyedi azonosítója a <em>Nevogate</em> rendszerében.</td></tr></tbody></table>

#### **Mintakód**

A fenti `Result` kérésre adott válasz:

{% code overflow="wrap" %}

```php
{
    "StoreName": "sdk_test",
    "ProviderName": "GP",
    "TransactionId": "992c8e75435e6d4dfdf6415f0714cae8",
    "ResultCode": "SUCCESSFUL",
    "ResultMessage": "Sikeres tranzakció",
    "Anum": "006761",
    "Amount": "100",
    "Currency": "HUF",
    "OrderId": "TEST-ORDER-ID",
    "UserId": "TEST-USER-ID",
    "Language": "HU",
    "ProviderTransactionId": "tr_tzftXkC-fcwaVPiAVVNgotmIhY_QXydL",
    "AutoCommit": "true",
    "CommitState": "APPROVED",
    "PaywallPaymentName": null,
    "PaywallRecurringPaymentEnabled": "false",
    "PaymentRegistrationType": null,
    "SzepPocket": null,
    "ProviderResultCode": "000",
    "ProviderResultCode2": null,
    "PaymentLinkName": null,
    "Created": "2020-03-14 11:19:07",
    "ResponseId": "3202109280600047703"
}
```

{% endcode %}
