# OTP specifikus paraméterek

Az *OTP Bank* esetében a hagyományos *SZÉP Kártyán* kívül úgynevezett *cafeteria* kártya is elérhető. A *cafeteria*, a *SZÉP Kártyához* képest más típusú alszámlákat (*zsebeket*) tartalmaz, ugyanakkor az alszámla azonosítók átadása a *SZÉP Kártyás* fizetéssel azonos módon történik.

{% hint style="info" %}
Az API kérésekhez kapcsolódó paramétereket két táblázatba soroljuk fel a könnyebb átláthatóság kedvéért. Természetesen az egyes paraméterek megjelenhetnek ugyanabban az API kérésben.

Az API paraméterek felosztása a következő:

* kötelező paraméterek
* opcionális paraméterek
  {% endhint %}

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

#### Kötelező paraméterek

<table data-full-width="true"><thead><tr><th>Paraméter</th><th width="141">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>A <em>Nevogate</em> szerződésben kerül meghatározásra.</td><td>Rendszerünkben tárolt egyedi bolt azonosító.</td></tr><tr><td><code>ProviderName</code> *</td><td>string</td><td><ul><li>OTP</li><li>RawOTPSZEP</li></ul></td><td>A tranzakcióhoz kiválasztott fizetési szolgáltató.<br><br>* RawOTPSZEP használatánál a szolgáltató elvárja a vásárló email címének átadását az általános vásárlói adatok objektumban (ebben az esetben az <code>Info</code> paraméter átadása kötelező).</td></tr><tr><td><code>OtpCardPocketId</code> *</td><td>string</td><td><p>Cafeteria kártya esetén:</p><ul><li>01 (étel utalvány)</li><li>02 (meleg étkezési utalvány)</li><li>03 (iskolakezdési utalvány)</li><li>04 (kultúra utalvány)</li><li>05 (ajándék utalvány)</li><li>06 (sport utalvány)</li></ul><p>SZÉP Kártya esetén:</p><ul><li>09 (főszámla)</li><li>08 (aktív magyarok alszámla)</li><li>09 (otthonfelújítás alszámla)</li></ul></td><td><p>A fizetéshez használt alszámla (<em>zseb</em>) azonosítója.<br><br>* Az <code>OtpCardPocketId</code> paramétert csak OTP <code>ProviderName</code> érték használata esetén kell átadni.</p><p>RawOTPSZEP <code>ProviderName</code> használata esetén a <code>SzepPocket</code> paraméter használata szükséges.<br><br>RawOTPSZEP <code>ProviderName</code> érték használatával csak SZÉP Kártya terhelhető.</p></td></tr><tr><td><code>ResponseUrl</code></td><td>string<br><br>(255 karakter)</td><td>szabadon választható</td><td>Visszatérési URL: tranzakciót követően, rendszerünk erre a címre irányítja vissza a vásárlót.</td></tr><tr><td><code>NotificationUrl</code></td><td>string<br><br>(255 karakter)</td><td>szabadon választható</td><td>Rendszerünk ezen a címen értesíti a kereskedőt a tranzakció státuszának változásáról (<a href="../url-ertesites">URL értesítés</a>).</td></tr><tr><td><code>Amount</code></td><td>number</td><td><p>szabadon választható</p><p>(egész szám)</p></td><td>Bruttó végösszeg amit a vásárló kifizet.</td></tr></tbody></table>

#### Opcionális paraméterek

<table data-full-width="true"><thead><tr><th>Paraméter</th><th width="142">Típus</th><th>Érték</th><th>Leírás</th></tr></thead><tbody><tr><td><code>Currency</code></td><td>string<br><br>(3 karakter)</td><td><ul><li>HUF</li></ul></td><td><p>A fizetés devizaneme.<br></p><p>(Átadása nem befolyásolja a tranzakció devizanemét, mely SZÉP Kártyánál minden esetben HUF.)</p></td></tr><tr><td><code>OrderId</code></td><td>string<br><br>(255 karakter)</td><td>szabadon választható<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.</p><p>(Lehetővé teszi a tranzakció visszakeresését, használata erősen javasolt.)</p></td></tr><tr><td><code>UserId</code></td><td>string<br><br>(255 karakter)</td><td>szabadon választható<br><br>(kivéve e-mail címek, illetve személyes adatok)</td><td><p>A vásárló azonosítója a kereskedő áruházában.<br></p><p>(Lehetővé teszi a tranzakció visszakeresését, használata erősen javasolt.)</p></td></tr><tr><td><code>Language</code></td><td>string<br><br>(2 karakter)</td><td><ul><li>HU (alapért.)</li><li>EN</li><li>DE</li></ul></td><td>A fizetési felület nyelve.</td></tr><tr><td><code>Info</code> *</td><td>string</td><td>egyedi értékek</td><td>A vásárlás és a vásárló adatai (<a href="../../../segedlet/eros-uegyfel-hitelesites-psd2-sca">PSD2/SCA</a>).<br><br>* RawOTPSZEP használatánál a szolgáltató elvárja a vásárló email címének átadását az általános vásárlói adatok objektumban (ebben az esetben az <code>Info</code> paraméter átadása kötelező).</td></tr><tr><td><code>SzepPocket</code> *</td><td>string</td><td><ul><li>foszamla (alapért.)</li><li>aktiv_magyarok</li><li>otthonfelujitas</li></ul></td><td><p>A fizetéshez használt alszámla (zseb) azonosítója.</p><p>* A <code>SzepPocket</code> paramétert csak RawOTPSZEP <code>ProviderName</code> érték használata esetén lehet átadni.<br>OTP <code>ProviderName</code> használata esetén az <code>OtpCardPocketId</code> paraméter használata szükséges.</p></td></tr><tr><td><code>ModuleName</code></td><td>string<br><br>(255 karakter)</td><td>egyedi értékek</td><td>A kereskedő oldalán használt szervizcsomag, programnyelv, keretrendszer, modul, stb. megnevezése.</td></tr><tr><td><code>ModuleVersion</code></td><td>string<br><br>(8 karakter)</td><td>verziószám</td><td>A kereskedő oldalán használt szervizcsomag, programnyelv, keretrendszer, modul, stb. verziószáma.</td></tr></tbody></table>

#### **Mintakód**

Tranzakció inicializálása `Init` kérés 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 'Init | merchant-store.com | PHP | 7.3.0' \
  --request 'POST' \
  --data 'method=Init' \
  --data 'json=
    {
        "StoreName":"sdk_test",
        "ProviderName":"OTP",
        "ResponseUrl":"https://demo.nevogate.com/response.php",
        "NotificationUrl":"https://www.notification.url/",
        "Amount":100,
        "Currency":"HUF",
        "OrderId":"TEST-ORDER-ID",
        "UserId":"TEST-USER-ID",
        "OtpCardPocketId":"08"
    }'
```

{% endcode %}

### API válasz paraméterek

Az `Init` 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>Paraméter</th><th width="121">Típus</th><th>Érték</th><th>Leírás</th></tr></thead><tbody><tr><td><code>TransactionId</code></td><td>string</td><td><p>Sikeres inicializálás:</p><ul><li>32 karakter hosszú md5 hash</li></ul><p>Sikertelen inicializálás:</p><ul><li>null</li></ul></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>Sikeres inicializálás:</p><ul><li>SUCCESSFUL</li></ul><p>Sikertelen inicializálás:</p><ul><li>InactiveStore</li><li>InactiveProvider</li><li>MissingParameter</li><li>MissingRemoteAddress</li><li>UnauthorizedAccess</li><li>UnauthorizedRemoteAddress</li><li>UnknownParameter</li><li>UnknownProvider</li><li>UnknownProviderForStore</li><li>UnknownStore</li><li>WrongApikey</li><li>WrongParameter</li><li>WrongProviderSettings</li></ul><p>Illetve további szolgáltató specifikus eredménykódok.</p></td><td><p>Jelzi a tranzakció inicializálás eredményét.</p><p>Sikertelen inicializálás esetén jelzi a hiba okát.</p><p>A felsoroltakon kívül további szolgáltató specifikus eredménykódokat is tartalmazhat.</p></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>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**

Sikeres inicializálásra adott válasz:

{% code overflow="wrap" %}

```php
{
    "TransactionId": "3df9aa96b538f2ee2916d8441e5302ca",
    "ResultCode": "SUCCESSFUL",
    "ResultMessage": null,
    "ResponseId": "3202109280600047703"
}
```

{% endcode %}
