---
# System prepended metadata

title: '[10204/10214] Wallet-Card by Token'

---

[УКР](https://hackmd.io/-dYr0t8eREOOjLvWsBucRg) | ENG
![](https://i.imgur.com/ULmPUgP.jpg)
:arrow_left: [Guide](https://hackmd.io/QA2NYRliRLGviJl5P4-ZCw)

# [10204/10214] Wallet-Card by Token

*What is "XPAY Wallet" see in the section ["XPAY Wallet"](https://hackmd.io/bbv1AdS0SwiJeWqW1i1tCA).*

## Usage

|OperationType |Usage |
|:----:|----|
|`10204`| Payout from the Partner Wallet to the card token.|
|`10214`| Payout from the Partner Wallet to the card token using CallbackURL.|


## Request

*See the description of the "Partner", "KeyAES" and "Sign" attributes in the section "[General API Integration Information](https://hackmd.io/ijxPm0xtTpycgTjuU_NHQQ)".*


### Data Structure

The Data structure for this operation is formed from the following parameters:

:::info
<details>
<summary>Data structure formation (examples are below)</summary>
<br>

~~~
{
    "Currency": "",
    "Exchange": "",
    "CallbackURL": "",
    "Purpose": "",
    "TransferA2C": {
        "Sum": ,
        "Phone": "",
        "RecipientCard": {
            "RecipientToken": "",
            "FirstName": "",
            "MiddleName": "",
            "LastName": "",
            "IPN": "",
            "document_type_id": "",
            "doc_series": "",
            "doc_number": "",
            "dt_doc_issue": "",
            "dt_doc_exp": "",
            "doc_issued_by": ""
        },
        "FirstName": "",
        "LastName": "",
        "MiddleName": "",
        "CompanyName": "",
        "CompanyEDRPOU": "",
        "CompanyIBAN": ""
    },
    "Transaction": {
        "TransactionID": "",
        "TerminalID": "",
        "DateTime": ""
    }
}
~~~
</details>
:::


|Parameter|Required|Type|Description|Example|
|:----:|:----:|:----:|----|:----:|
| `Currency` | Yes - paying in currency different from UAH | String | Currency *debit* code is an abbreviated currency designation described in the standard [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217#Non_ISO_4217_currencies) (“GBP”, “USD”, ..). |`USD`|
| `Exchange` | Yes - paying in currency different from UAH | String | Currency *credit* code is an abbreviated currency designation described in the standard [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217#Non_ISO_4217_currencies) (“GBP”, “USD”, ..). |`GBP`|
| `CallbackURL` | No. </br> Only for **[10214]** | String | URL to which an additional response will be sent if the operation timeout has expired. The response will return the `TransactionID`, sent by the Partner. For example: {"Code":200, "Message":"Done", "Data":{"OperationID":5639163, "OperationStatus":10, "PspID":"1041299225", **"TransactionID":"50f8804693ef"**, "TransactionStatus":3}, "KeyAES":"", "Sign":""}.|`https://partner.com/callback/xpay1`|
| `Purpose` |No| String | Payment purpose. |`Payment Order No.111`|
|`TransferA2C`^1^|Yes|Structure|Structure transmits the operation data.|See example below.|
|`Transaction`|Yes|Structure|Structure transmits the transaction data. See section "[Transaction Structure](https://hackmd.io/ijxPm0xtTpycgTjuU_NHQQ?view#2-Data)".|See example below.|


^1^ **"TransferA2C"** Structure Parameters:

|Parameter|Required|Type|Description|Example|
|:----:|:----:|:----:|----|:----:|
| `Sum` | Yes |Integer | Operation sum in kopecks. |1UAH=>`100`|
| `Phone` | No | String | Client phone number in format: "380xxxxxxxxxxxx". |`380679335544`|
|`RecipientCard`^2^|Yes|Structure|Structure transmits the recipient's bank card data.|See example below.|
| `FirstName` | No | String | Sender name. |`Oleg`|
| `MiddleName` | No | String | Sender middle name. |`Mykhaylovich`|
| `LastName` | No | String | Sender last name. |`Podilskyi`|
|`CompanyName`| No |String | Sender company name. | `TOV "Romashka"`|
|`CompanyEDRPOU`| No | String | Sender company "EDRPOU" code. | `123456789012`|
|`CompanyIBAN`| No | String | Sender company IBAN. | `UA4830529900000 26008031203677`|


^2^ **"RecipientCard"** Structure Parameters:

|Parameter|Required|Type|Description|Example|
|:----:|:----:|:----:|----|:----:|
|`RecipientToken`|Yes|String| Recipient card token.| `d1d2a97aac30.. d12c291f4e669`|
| `FirstName` | Yes* | String |Recipient name. |`Maxim` |
| `MiddleName` | Yes* | String | Recipient middle name. |`Olegovich`|
| `LastName` | Yes* | String | Recipient last name. |`Kravets`|
| `IPN` | Yes* | String | Recipient individual tax number (IPN). |`111111111111`|
| `document_type_id` | Yes* | Integer | Document type from the directory: </br> `1` - passport, </br> `2` - ID-card. |`1`|
| `doc_series` | Yes* | String | Document series. |`19910824-00026`|
| `doc_number` | Yes* | String | Document number. |`123456789`|
| `dt_doc_issue` | Yes* | String | Date of document issuance. |`2022-06-14`|
| `dt_doc_exp` | Yes* | String | Expiration date of the document. |`2022-06-14`|
| `doc_issued_by` | Yes* | String | Authority that issued the document. |`3459`|

**Parameters are conditionally mandatory (determined at the integration stage).*



:::success
<details>
<summary>Example of the request [10204]</summary>
<br>

~~~md
{
  "Partner": {
    "PartnerToken": "72a8ddb8-9145-4a41-af1a-8c48ecaa4be1",
    "OperationType": 10204
  },
  "Data": "{\"Transaction\": {\"DateTime\": \"20220704 17:03:40\", \"TerminalID\": \"1\", \"TransactionID\": \" 0c5328f5-bda9-4376-b6a0-ca544fcb34ff\"}, \"TransferA2C\": {\"Sum\": 157500, \"RecipientCard\": {\"RecipientToken\": \"d1d2a97aac30..d12c291f4e669\"}}}",
  "KeyAES": "",
  "Sign": ""
}
~~~
</details>
:::


:::success
<details>
<summary>Example of the request [10214]</summary>
<br>

~~~md
{
  "Partner": {
    "PartnerToken": "72a8ddb8-9145-4a41-af1a-8c48ecaa4be1",
    "OperationType": 10214
  },
  "Data": "{\"CallbackURL\":\"https://echange.su/merchant-ap_xpay_status_uFuzCAlZFvzSI7X1I0ER0RTTDbDo4PKrsJJtxmUDfxJeKEiuonh667hAx0qid3vnrzr.html?order_id=144763\",\"Transaction\":{\"DateTime\":\"2020708 00:32:12\",\"TerminalID\":\"1\",\"TransactionID\":\"144763\"},\"TransferA2C\":{\"Sum\":245779,\" RecipientCard\":{\"RecipientToken\":\"d1d2a97aac30..d12c291f4e669\"}}}",
  "KeyAES": "",
  "Sign": ""
}
~~~
</details>
:::


## Response

*See the general information on the response structure formation in the section "[General API Integration Information](https://hackmd.io/ijxPm0xtTpycgTjuU_NHQQ)"*.


### Response Examples

:::success
<details>
<summary>Operation Successfully Completed</summary>
<br>

~~~md
{
   "Code": 200,
   "Message": "done",
   "Data": {
     "OperationID": 555,
     "OperationStatus": 10
   },
   "KeyAES": "",
   "Sign": ""
}
~~~
</details>
:::

:::success
<details>
<summary>Operation Failed</summary>
<br>

~~~md
{
   "Code": 200,
   "Message": "done",
   "Data": {
     "OperationID": 111,
     "OperationStatus": 21,
     "Reason": 3
   },
   "KeyAES": "",
   "Sign": ""
}
~~~
</details>
:::


## Related Requests

[[10301/10311/103013] Wallet-Card](https://hackmd.io/SvLoAv49QWOIsdPhCWFezA)
[[10202] Wallet-Wallet](https://hackmd.io/dOi__3dxSYSi_3EvZh2a5Q)
[[10303] Wallet-IBAN](https://hackmd.io/7kfzI0OAQB6Nt8ZN38UxSg)
[[10304] Wallet-UUID](https://hackmd.io/-U0QJEY_TASmrNQGwGepcA)
[[10400] Packet Payment Wallet-Card by Token](https://hackmd.io/BHS4jBINQ-u8SQxX3XvR6Q)
[[10401] Packet Payment Wallet-Card by Card Number](https://hackmd.io/v65TGa0uQPGCrKXQhvHuZg)


**Phone Top-Up**
[[10205] Wallet-Phone](https://hackmd.io/eyewES-3TCGr99R8shURgQ)
[[10305] Card-Phone](https://hackmd.io/RFSxYF85Q0WqOd8I6Xenjg)
[[10405] Token-Phone](https://hackmd.io/hRrNYs3wQYeHChpNSk0AFg)


**Get Transaction Data**
[[20003] Get Operation Status](https://hackmd.io/_eAjmoG-QPWoWWmsLOGf1g)


## Reference Materials

General parameters of the XPAY system are given in the section ["Reference Materials"](https://hackmd.io/16yLv895Qo-FWTvrWWQwbg):  operation types, payment types, response codes, operation status, reasons of operation rejection, etc.


![](https://i.imgur.com/17gAyWb.png)
:arrow_left: [Guide](https://hackmd.io/QA2NYRliRLGviJl5P4-ZCw)
:arrow_left: [General API Integration Information](https://hackmd.io/ijxPm0xtTpycgTjuU_NHQQ)

<details>
<summary>XPAY Support</summary>
</br>

Phone: +38 093 891 92 00
Email: info@xpay.com.ua
Telegram: @xpaysupportbot
</details>


