УКР | [ENG](https://hackmd.io/5aztDMZ5RDie-uZu5ZFXbg) ![](https://i.imgur.com/Jnu9hNn.jpg) :arrow_left: [На Головну](/eSq3juGWQLS1wVvJZiTUAQ) # [40002] Отримання переліку платіжних інструментів ## Застосування Для кожного авторизованного користувача доступне отримання переліку платіжних інструментів. Платіжний інструмент має унікальний ідентифікатор (токен), який передається у полі "cc_uuid" (див. деталі у відповіді). Використання сервісу отримання балансу, а також проведення платежу, виконується з передачею токена платіжного інструмента. Схему взаємодії див. у розділі "[Загальна схема взаємодії](https://hackmd.io/Q5OrcottRSKWlfrPZPC7mg)". ## Запит *Опис атрибутів "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`|Ні|Рядок|Унікальний ідентифікатор клієнта у системі Партнера.|`Uwuh0B5GQVuokYSL`| | `Phone` | Так | Рядок | Телефон клієнта у форматі "380ххххххххх". |`380679335544`| | `Email` | Ні | Рядок | Email клієнта. |`index@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>Приклад запиту [40002]</summary> <br> ~~~md { "Partner": { "PartnerToken": "3b4e5666-b585-491a-af31-516e47b25041", "OperationType": 40002 }, "Data": "{\"Phone\": \"380679335544\", \"UserID\": \"Uwuh0B5GQVuokYSL\", \"DeviceID\": \"0Ht9z0yh5aDNr5js1zGFz5QTmIE=\", \"Transaction\": {\"DateTime\": \"2022-04-21 02:46:33\", \"TerminalID\": \"1\", \"TransactionID\": \"JXECMxR4IUCqtsqr5KBkABrKC0M=\"}}", "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).* Успішна відповідь на запит [40002] містить масив структур `CardsList`, у якому передаються незашифровані або зашифровані дані платіжних інструментів. Параметри структури опціональні та налаштовуються індивідуально в залежності від потреб Партнера. Основні параметри: | Параметр | Обов'яз-ковість | Тип | Опис |Приклад| |:----:|:----:|:----:|----|:----:| |`name`|Ні|Рядок|Назва платіжного інструменту (ПІ). |`MonoBan`| |`balance`|Ні|Ціле|Баланс ПІ (має значення для гаманців). |1грн.=>`100`| |`cc_uuid`|Ні|Рядок|UUID (унікальний ідентифікатор) ПІ. |`ead5ea7a-f19f-44ec-8742-3621b4bfdc18`| |`mask_pan`|Ні|Рядок|Ідентифікатор ПІ: </br> - для гаманців - ID гаманця; </br> - для карт - маскований PAN. |`537541******2121`| |`pi_type_id`|Ні|Ціле|Тип ПІ: </br> `1`- гаманець; </br> `2` - карта. |`1`| |`bank_name`|Ні|Рядок|Назва банку (для карт). |`UNIVERSAL BANK`| |`channel_name`|Ні|Рядок|Назва платіжної системи (для карт). |`MasterCard (IPM)`| ### Приклади відповідей :::success <details> <summary>Перелік платіжних інструментів у незашифрованому вигляді</summary> <br> ~~~md { "Code": 200, "Message": "done", "Data": { "DecodedData": "{\"CardsList\":[{\"name\":\"MonoBan\",\"balance\":0,\"cc_uuid\":\"ead5ea7a-f19f-44ec-8742-3621b4bfdc18\",\"mask_pan\":\"537541******2121\",\"pi_type_id\":2,\"bank_name\":\"UNIVERSAL BANK\",\"channel_name\":\"MasterCard (IPM)\"},{\"name\":\"\",\"balance\":456782,\"cc_uuid\":\"142b675c-690e-4063-ab34-895d4be043b0\",\"mask_pan\":\"UAH540110155\",\"pi_type_id\":1,\"bank_name\":\"Bank\",\"channel_name\":\"Card\"}]}", "OperationID": 11, "OperationStatus": 10 }, "KeyAES": "", "Sign": "" } ~~~ </details> ::: :::success <details> <summary>Помилка виконання операції</summary> <br> ~~~md { "Code": 200, "Message": "fail", "Data": { "OperationID": 111, "OperationStatus": 21, "Reason": 3 }, "KeyAES": "", "Sign": "" } ~~~ </details> ::: ## Довідкові матеріали Опис загальних параметрів системи XPAY див. у розділі ["Довідкові матеріали"](https://hackmd.io/aBE7H5cfQ-iqaN3SnwaQ-w): коди типів операцій, типи платіжних методів, коди статусів обробки операцій, відомості та помилки, що повертаються у відповіді та ін. ![](https://i.imgur.com/17gAyWb.png) :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>