УКР | [ENG](https://hackmd.io/6yGgOTUeRhy9CVPFLKKgiw)

:arrow_left: [На Головну](/eSq3juGWQLS1wVvJZiTUAQ)
# [40005] Отримання фрейму для додавання карти
## Застосування
Запит [40005] застосовується для отримання посилання на фрейм для додавання карти.
## Запит
*Опис атрибутів "Partner", "KeyAES" та "Sign" див. у розділі ["Загальна інформація по підключенню (API)"](https://hackmd.io/g3cItPVFStez0ql3Xj-2TA).*
### Структура "Data"
Структура "Data" для даної операції формується з наступних параметрів:
:::info
<details>
<summary>Формування структури "Data" (приклади наведені нижче)</summary>
<br>
~~~
{
"UserID": "",
"Phone": "",
"Email": "",
"DeviceID": "",
"Transaction": {
"TransactionID": "",
"TerminalID": "",
"DateTime": ""
}
}
~~~
</details>
:::
| Параметр | Обов'яз-ковість | Тип | Опис |Приклад|
|:----:|:----:|:----:|----|:----:|
| `UserID` |Ні| Рядок | Унікальний ідентифікатор клієнта у системі Партнера. |`380932799111`|
| `Phone` |Так| Рядок | Телефон клієнта у форматі: "380ххххххххх". |`380679335544`|
| `Email` | Ні | Рядок | Email клієнта. |`i.franko@gmail.com`|
|`DeviceID`| Так |Рядок| ID пристрою клієнта. Для web-застосунків використовується "fingerprint", для мобільних застосунків - ["DeviceID"](https://support.google.com/google-ads/answer/9004555?hl=en).|`0Ht9z0yh5aDNr5-js1zGFz5QTmIE=`|
|`Transaction`|Так|Структура|Структура, що передає дані про транзакцію. Див. розділ ["Структура "Transaction"](https://hackmd.io/g3cItPVFStez0ql3Xj-2TA#2-Data).|Див. нижче.|
:::success
<details>
<summary>Приклад запиту [40005]</summary>
<br>
~~~md
{
"Partner": {
"PartnerToken": "664e545e-5916-4f7b-acb5-027d44c94cc2",
"OperationType": 40005,
"Locale": "ru"
},
"Data": "{\"UserID\":\"551151\", \"Phone\":\"380954097668\", \"Email\":\"i.franko@gmail.com\", \"DeviceID\":null, \"Transaction\": {\"TransactionID\":\"921402\", \"TerminalID\":\"1\", \"DateTime\":\"2022-10-31 13:52:20\"}}",
"KeyAES": "",
"Sign": ""
}
~~~
</details>
:::
## Відповідь
*Загальна інформація по формуванню структури відповіді наведена у розділі [“Загальна інформація по підключенню (API)”](https://hackmd.io/g3cItPVFStez0ql3Xj-2TA?both#%D0%A1%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%B0-%D0%B2%D1%96%D0%B4%D0%BF%D0%BE%D0%B2%D1%96%D0%B4%D1%96).*
### Структура "Data"
Успішна відповідь на запит [40005] містить параметр `URI`, у якому передається посилання на фрейм.
### Приклади відповідей
:::success
<details>
<summary>Операція проведена успішно</summary>
<br>
~~~md
{
"Code": 200,
"Message": "done",
"Data": {
"OperationID": 11,
"OperationStatus": 10,
"URI": "https://otp.xpay.com.ua/ru/ident-frame/124566543"
},
"KeyAES": "",
"Sign": ""
}
~~~
</details>
:::
:::success
<details>
<summary>Помилка виконання операції</summary>
<br>
~~~md
{
"Code": 200,
"Message": "fail",
"Data": {
"OperationID": 111,
"OperationStatus": 21,
"Reason": 3
},
"KeyAES": "",
"Sign": ""
}
~~~
</details>
:::
### Параметри виклику фрейму для додавання картки
Фрейм викликається методом GET за отриманим URI. Параметри GET:
|Параметр |Допустимі значення |Призначення|
|:----:|:----:|:----|
|`token` |Токен із запиту отримання фрейму. |Авторизація запиту.|
|`skip_list`| `true/false` </br> За_замовчуванням: `false`. |Примусовий перехід до режиму додавання картки, минаючи список карток.|
|`success_callback_url`| `URI` |URL адреса, на яку виконується редирект клієнта після успішного завершення роботи у фреймі. За наявності в URI параметра `token=%s`, замість `%s` підставляється токен вибраної картки. |
|`callback_type` | `external/internal` </br> За_замовчуванням: `internal`. |Перехід на сторінку при успішному додаванні картки: </br> - `external` - на URL адресу, вказану у "success_callback_url"; </br> - `internal` – на сторінку списку карт. |
## Довідкові матеріали
Опис загальних параметрів системи XPAY див. у розділі ["Довідкові матеріали"](https://hackmd.io/aBE7H5cfQ-iqaN3SnwaQ-w): коди типів операцій, типи платіжних методів, коди статусів обробки операцій, відомості та помилки, що повертаються у відповіді та ін.

:arrow_left: [На Головну](/eSq3juGWQLS1wVvJZiTUAQ)
:arrow_left: [Загальна інформація по підключенню (API)](https://hackmd.io/g3cItPVFStez0ql3Xj-2TA)
<details>
<summary>Служба підтримки XPAY</summary>
</br>
Телефон: +38 093 891 92 00
Email: info@xpay.com.ua
Telegram: @xpaysupportbot
</details>