> For the complete documentation index, see [llms.txt](https://docs.nevogate.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.nevogate.com/egykattintasos-fizetes-one-click-payment/nativ-mobiltarca/azonnali-terheles/fizetes-fizetoeszkoez-regisztracioval/tranzakcio-inditasa-startwallet.md).

# Tranzakció indítása (StartWallet)

### Működés

A `StartWallet` az előzőleg inicializált, fizetőeszköz-regisztrációval egybekötött mobiltárcás tranzakció fizetését indítja el. A művelet hitelesített API kérés, amelyet a kereskedő szerveréről kell indítani.

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

#### **Kötelező paraméterek**

<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</td><td>az InitWallet válaszban kapott azonosító</td><td>Az előzőleg inicializált mobiltárcás tranzakció azonosítója.</td></tr><tr><td><code>Wallet.Token</code></td><td>string</td><td>a Google Pay által kiadott fizetési token</td><td>A <code>paymentData.paymentMethodData.tokenizationData.token</code> változatlan szöveges értéke. A fizetési tokent ez a kérés adja át, az inicializálás nem tartalmazhatja.</td></tr></tbody></table>

A `Wallet` objektum a fizetési tokenen kívül más mezőt nem tartalmaz. A fizetési módot (`Wallet.Type`) és a kliens típusát (`Wallet.Environment`) a tranzakcióból oldjuk fel, a vásárló e-mail címét (`Wallet.PayerEmailAddress`) pedig az inicializáláskor kell átadni — ezeket a tranzakció indításakor ne ismételje meg. A regisztrációs paramétereket sem kell megismételni, azokat rendszerünk az inicializálás során kapott adatokból veszi.

#### **Mintakód**

{% code overflow="wrap" %}

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

{% endcode %}

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

<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</td><td>egyedi tranzakció azonosító</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><code>SUCCESSFUL</code> vagy hibakód</td><td>A művelet eredménye: <code>SUCCESSFUL</code> vagy hibakód.</td></tr><tr><td><code>ResultMessage</code></td><td>string / null</td><td>szöveges magyarázat vagy null</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 válaszazonosító</td><td>A válaszüzenet egyedi azonosítója a <em>Nevogate</em> rendszerében.</td></tr><tr><td><code>ThreeDSAuthClientData</code></td><td>string / null</td><td>hitelesítési adat vagy null</td><td>A Barion Smart Gateway további hitelesítésének adata. Nem üres értéknél a webes hitelesítés után <code>CompleteWallet</code> szükséges.</td></tr></tbody></table>

#### **Mintakód**

Hitelesítést igénylő mintaválasz:

{% code overflow="wrap" %}

```php
{
  "TransactionId": "992c8e75435e6d4dfdf6415f0714cae8",
  "ResultCode": "SUCCESSFUL",
  "ResultMessage": null,
  "ResponseId": "3202109280600047704",
  "ThreeDSAuthClientData": "BARION_AUTHENTICATION_DATA"
}
```

{% endcode %}

Gyakori hibák: `WrongTransactionStatus` (a tranzakció nincs elindítható állapotban: már elindították, hibás státuszba került, vagy lejárt), `MissingParameter` és `WrongParameter` (hiányzó vagy hibás fizetési token), `WrongProviderSettings` (a mobiltárca nincs engedélyezve a szolgáltatónál). Az általános és szolgáltatói hibakódok is előfordulhatnak.

{% hint style="warning" %}
A `SUCCESSFUL` itt a fizetésindítás műveletének eredménye, nem a fizetés és a fizetőeszköz-regisztráció sikerességét jelzi. A végleges státuszt `Result` kéréssel ellenőrizze. Már elindított tranzakcióra ne ismételje meg a `StartWallet` hívást: a válasz `WrongTransactionStatus` eredménykód lesz. Ismeretlen kimenetelű hálózati hiba után előbb a tranzakció eredményét kérdezze le (`Result`), és csak annak alapján döntsön.
{% endhint %}

{% hint style="info" %}
Paraméterhiba (`MissingParameter`, `WrongParameter`) esetén a tranzakció elindítható állapotban marad, ezért a `StartWallet` kérés javított adatokkal megismételhető. Ha viszont a fizetési szolgáltató hívása hiúsul meg, a tranzakció hibás státuszba kerül: ilyenkor új tranzakciót kell inicializálni (`InitWallet`), és a mobiltárcától új fizetési tokent kell kérni.
{% endhint %}
