# Kétlépcsős tranzakció lezárása (Close)

### Működés

Használja a `Close` hívást egy kétlépcsős tranzakció lezárásához. A `Close` segítségével jelezheti a fizetési szolgáltató számára, hogy a vásárló számláján korábban befoglalt összeget teljes egészében megterhelje, részben terhelje meg vagy szabadítsa fel.

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

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

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>Close</code></td><td><code>POST</code></td><td>method=<code>Close</code><br><br>json={JSON encode-olt paraméterek}</td></tr></tbody></table>

### Terhelés

Teljes összeg terhelésére a `Close` hívás során két lehetőség van (elég csupán az egyiket alkalmazni):

* a hívás során **ne** adja át az `ApprovedAmount` paramétert
* amennyiben mégis átadja az `ApprovedAmount` paramétert, annak értéke legyen `0`

Mindkét eljárás jelzi a fizetési szolgáltató számára, hogy a korábban befoglalt teljes összeggel terhelje meg a vásárló számláját.

### Részterhelés

Részösszeg terheléséhez, a `Close` hívás során adja át a terhelni kívánt részösszeget az `ApprovedAmount` paraméterben. Ilyen esetben kizárólag az `ApprovedAmount`-ban megadott részösszeg kerül terhelésre. Az eredetileg befoglalt összeg és a részösszeg közötti különbözet automatikusan feloldásra kerül a vásárló számláján (többszörös, egymást követő részösszeg terhelésre ezért nincs lehetőség).

{% hint style="info" %}
Részösszeg terhelését csak bizonyos fizetési szolgáltatók támogatják. Ez a funkció jelenleg a következő szolgáltatóknál érhető el:

* Barion Smart Gateway
* Global Payments
* K\&H Bank
* PayPal REST
* SimplePay
* Wordline - Saferpay
  {% endhint %}

### Feloldás

Foglalás feloldásához, a `Close` hívás során adja át az `Approved` paramétert, melynek értéke legyen `"false"`. Ennek hatására a fizetési szolgáltató feloldja a teljes korábban befoglalt összeget a vásárló számláján (ezért részösszeg feloldására nincs lehetőség).

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

A `Close` kérés paraméterei közül a `TransactionId` átadása kötelező:

<table data-full-width="true"><thead><tr><th>Paraméter</th><th width="133">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><tr><td><code>Approved</code></td><td>string</td><td><ul><li>“true” (alapért.)</li><li>“false”</li></ul></td><td><p>Jelzi a befoglalt összeg terhelését vagy feloldását.<br></p><ul><li>“true” esetén a fizetési szolgáltató ténylegesen megterheli a korábban befoglalt összeget (vagy részösszeget) a vásárló számláján</li><li>“false” esetén a fizetési szolgáltató feloldja a korábban befoglalt teljes összeget a vásárló számláján</li></ul></td></tr><tr><td><code>ApprovedAmount</code></td><td>number</td><td><p>szabadon választható<br></p><p>(de legfeljebb az eredeti tranzakció összege)</p></td><td><p>Jelzi a terhelni kívánt részösszeg mértékét.<br></p><p>Ha ez a paraméter nem kerül átadásra, vagy az átadott értéke “0”, akkor a fizetési szolgáltató a teljes korábban befoglalt összeggel terheli meg a vásárló számláját.<br></p><p>(Amennyiben az <code>Approved</code> paraméter átadása <code>”false”</code> értékkel történik, úgy az <code>ApprovedAmount</code> paraméterben átadott érték nem lesz figyelembe véve és a teljes összeg feloldásra kerül a vásárló számláján.)</p></td></tr></tbody></table>

#### **Mintakód**

Kétlépcsős tranzakció lezárása `Close` 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 'Close | merchant-store.com | PHP | 7.3.0' \
  --request 'POST' \
  --data 'method=Close' \
  --data 'json=
    {
        "TransactionId":"a4d6f6f27f2116da21da62d705dbd7ef",
        "Approved":"true"
    }'
```

{% endcode %}

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

A `Close` 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="240">Paraméter</th><th width="133">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><tr><td><code>ResultCode</code></td><td>string</td><td><p>Az eredménykód a következők egyike lehet:</p><ul><li>SUCCESSFUL</li></ul><p>Hiba esetén a következő eredménykódok jelölik a hiba okát a Nevogate rendszerében:</p><ul><li>InactiveStore</li><li>InactiveProvider</li><li>MissingParameter</li><li>MissingRemoteAddress</li><li>UnauthorizedAccess</li><li>UnauthorizedRemoteAddress</li><li>UnknownStore</li><li>UnknownTransaction</li><li>WrongApike</li><li>WrongParameter</li></ul><p>(Továbbá a szolgáltatókra vonatkozó specifikus eredménykódok is megjelenhetnek itt.)</p></td><td><p>Jelzi a végleges terhelés, vagy a befoglalt összeg feloldásának eredményét.</p><ul><li>SUCCESSFUL: a befoglalt összeg végleges terhelése, részterhelése vagy feloldása sikeres.</li></ul></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, hibaüzenet esetén.</td></tr><tr><td><code>Approved</code></td><td>boolean</td><td><ul><li>true</li><li>false</li></ul></td><td>Az <code>Close</code> hívás során megadott <code>Approved</code> paraméter értéke.</td></tr><tr><td><code>ApprovedAmount</code></td><td>number</td><td>értékét rendszerünk adja vissza</td><td><p>A terhelt összeg vagy részösszeg.</p><p>(Maximum értéke az előzetesen befoglalt összeg.)</p></td></tr><tr><td><code>ReservedAmount</code></td><td>number</td><td>vásárlás során kerül meghatározásra</td><td>A vásárlás során eredetileg befoglalt összeg.</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 `Close` kérésre adott sikeres válasz:

{% code overflow="wrap" %}

```php
{
    "TransactionId": "a4d6f6f27f2116da21da62d705dbd7ef",
    "ResultCode": "SUCCESSFUL",
    "Approved": true,
    "ApprovedAmount": 100,
    "ReservedAmount": 100,
    "ResultMessage": null,
    "ResponseId": "3202109280600047705"
}
```

{% endcode %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.nevogate.com/egykattintasos-fizetes-one-click-payment/bankkartya-es-mobiltarca/kesobbi-terheles-ketlepcsos-fizetes/fizetes-fizetoeszkoez-regisztracioval/ketlepcsos-tranzakcio-lezarasa-close.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
