owned this note
owned this note
Published
Linked with GitHub
УКР | [ENG](https://hackmd.io/CM0Mt9FATVS3cWkihWG_bA)
![](https://i.imgur.com/ULmPUgP.jpg)
:arrow_left: [На Головну](/Mj2ZqCVpSq6A6Jzm6ladlw)
# [102070221/102070222/102070251/102070252] Підтвердження/скасування передавторизації
**Передавторизація (Холдування)** - процедура тимчасового блокування (резервування) суми списання по рахунку банківської картки на користь оплати за товар чи послугу, наприклад, до моменту повного виконання замовлення, або перевірки дійсності картки.
## Застосування
|"OperationType" | Тип операції |
|:----:|----|
|`102070221`|Підтвердження передавторизації.|
|`102070222`|Скасування передавторизації.|
|`102070251`|Підтвердження передавторизації за реквізитами.|
|`102070252`|Скасування передавторизації за реквізитами.|
## Запит
*Опис атрибутів "Partner", "KeyAES" та "Sign" див. у розділі ["Загальна інформація по підключенню (API)"](https://hackmd.io/g3cItPVFStez0ql3Xj-2TA).*
### Структура "Data"
Структура "Data" для даної операції формується з наступних параметрів:
:::info
<details>
<summary>Формування структури "Data" (приклади наведені нижче)</summary>
<br>
~~~
{
"PreauthorizationID": "",
"Sum": ,
"ticket": [],
"cashiersignature": "",
"Transaction":{
"TransactionID": "",
"TerminalID": "",
"DateTime": ""
}
}
~~~
</details>
:::
| Параметр | Обов'яз-ковість | Тип | Опис | Приклад|
|:----:|:----:|:----:|----|:----:|
|`PreauthorizationID`|Так|Рядок|Унікальний ідентифікатор операції у системі Оператора, яку необхідно підтвердити/скасувати. Це параметр `txn_id`, переданий у запиті "[pay](https://hackmd.io/2x_MsqZIT6epfiqcQimFwQ)". |`633661`|
|`Sum`|Ні|Ціле|Сума поставторизації у копійках. Може відрізнятись від суми передавторизації, як у більшу, так і у меншу сторону не більше ніж на 15% (відсоток визначається індивідуально). |1грн.=>`100`|
|`Transaction`|Так|Структура|Структура, що передає дані про транзакцію. Див. розділ ["Структура "Transaction"](https://hackmd.io/g3cItPVFStez0ql3Xj-2TA#2-Data).|Див. нижче.|
*Параметри `ticket` та `cashiersignature` передаються за необхідності фіскалізації операції, описані в запиті [[10005]](https://hackmd.io/1okrbJtPTVCsl6b_lyt9bg).*
:::success
<details>
<summary>Приклад структури "Data"</summary>
<br>
~~~md
{
"PreauthorizationID": 633661,
"Sum": 3000,
"ticket": [
{
"ID": "РД009732",
"Good": "Сметана 20% жиру ТМ Простоквашино 350г/20",
"Count": 1000,
"Price": 3000,
"uktzed": "0403"
}
],
"Transaction": {
"TransactionID": "321643_1643975265",
"TerminalID": "0",
"DateTime": "20220406 08:07:09"
}
}
~~~
</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).*
### Приклади відповідей
:::success
<details>
<summary>Операція проведена успішно</summary>
<br>
~~~md
{
"Code": 200,
"Message": "operation ok",
"Data": {
"OperationID": 4576,
"OperationStatus": 10
},
"KeyAES": "",
"Sign": ""
}
~~~
</details>
:::
:::success
<details>
<summary>Помилка виконання операції</summary>
<br>
~~~md
{
"Code": 200,
"Message": "done",
"Data": {
"OperationID": 111,
"OperationStatus": 21,
"Reason": 3
},
"KeyAES": "",
"Sign": ""
}
~~~
</details>
:::
## Тестові дані
:::info
![](https://i.imgur.com/gtxKB22.png)
Для тестування даного запиту застосовуйте параметри **Тестового Партнера**.
Див. деталі підключення у розділі: ["Параметри підключення Тестового Партнера"](https://hackmd.io/kGejjgk0QaiwfpoZFnTadA).
<details>
<summary>Тестовий запит</summary>
<br>
~~~md
{
"Partner": {
"PartnerToken": "72a8ddb8-9145-4a41-af1a-8c48ecaa4be1",
"OperationType": 102070221
},
"Data": "{\"PreauthorizationID\":\"633661\",\"Sum\":15800,\"ticket\":[],\"cashiersignature\":\"\",\"Transaction\":{\"TransactionID\":\"0c5328f5-bda9-4376-b6a0-ca544fcb50fc\",\"TerminalID\":\"1\",\"DateTime\":\"2023041809:59:21\"}}",
"KeyAES": "",
"Sign": ""
}
~~~
</details>
<details>
<summary>Очікувана відповідь</summary>
<br>
~~~md
{
"Code": 200,
"Message": "Done",
"Data": {
"OperationDate": "2023-04-18T11:59:57.461895+03:00",
"OperationID": 9508323,
"OperationStatus": 10
},
"KeyAES": "",
"Sign": ""
}
~~~
</details>
:::
## Пов'язані запити
[[10001/10002] Підтвердження/скасування передавторизації, здійсненої через запити [10102/101023/101025]](https://hackmd.io/KRcEsWMkRtiV0T1_ISoUMA)
[[30201/302013/302015] Відміна/повернення платежу, здійсненого через запити [10102/101023/101025]](https://hackmd.io/W25MdduPQFidcqLdTWIbpg)
[[30202] Відміна/повернення платежу поставторизації](https://hackmd.io/YQp1wWGTTCmw0EG_zFGIwg)
[[30203] Відміна/повернення платежу, здійсненого через Checkout](https://hackmd.io/3BzRqynvSF-J7fhcZCZDXA)
## Довідкові матеріали
Опис загальних параметрів системи XPAY див. у розділі ["Довідкові матеріали"](https://hackmd.io/aBE7H5cfQ-iqaN3SnwaQ-w): коди типів операцій, типи платіжних методів, коди статусів обробки операцій, відомості та помилки, що повертаються у відповіді та ін.
![](https://i.imgur.com/17gAyWb.png)
:arrow_left: [На Головну](/Mj2ZqCVpSq6A6Jzm6ladlw)
: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>