
:arrow_left: [На Головну](/Mj2ZqCVpSq6A6Jzm6ladlw)
# [20802] Отримання даних заборгованості (v.2)
:::info
Застосування версії запитів "Оплата комунальних послуг (v.1)" чи "Оплата комунальних послуг (v.2)" визначається на етапі інтеграції.
:::
## Застосування
Запит [20802] застосовується для отримання даних заборгованості по окремому акаунту.
## Запит
*Опис атрибутів "Partner", "KeyAES" та "Sign" див. у розділі ["Загальна інформація по підключенню (API)"](https://hackmd.io/g3cItPVFStez0ql3Xj-2TA).*
### Структура "Data"
Структура "Data" для даної операції формується з наступних параметрів:
:::info
<details>
<summary>Формування структури "Data" (приклади наведені нижче)</summary>
<br>
~~~
{
"accountid": "",
"Transaction": {
"TransactionID": "",
"TerminalID": "",
"DateTime": ""
}
}
~~~
</details>
:::
|Параметр|Обов'яз-ковість|Тип|Опис|Приклад|
|:----:|:----:|:----:|----|:----:|
| `serviceid` | Так | Рядок | Унікальний ідентифікатор сервісу, отриманий у відповіді на запит [[20801] (v.2)](https://hackmd.io/tWx9osErTZSOWRh2lksgEA?both): `id`. |`1`|
| `accountid` | Так | Рядок | Унікальний ідентифікатор акаунту, отриманий у відповіді на запит [[20801] (v.2)](https://hackmd.io/tWx9osErTZSOWRh2lksgEA?both): `accountid`. |`17`|
| `field_1` | Ні | Рядок | Значення поля структури `fields`, отримане у відповіді на запит [[20801] (v.2)](https://hackmd.io/tWx9osErTZSOWRh2lksgEA?both): `name_1`. |`name_1`|
| `field_2` | Ні | Рядок | Значення поля структури `fields`, отримане у відповіді на запит [[20801] (v.2)](https://hackmd.io/tWx9osErTZSOWRh2lksgEA?both): `name_2`. |`name_2`|
|`Transaction`|Так|Структура|Структура, що передає дані про транзакцію. Див. розділ ["Структура "Transaction"](https://hackmd.io/g3cItPVFStez0ql3Xj-2TA#2-Data).|Див. нижче.|
:::success
<details>
<summary>Приклад запиту [20802]</summary>
<br>
~~~md
{
"Partner": {
"PartnerToken": "72a8ddb8-9145-4a41-af1a-8c48ecaa4be1",
"OperationType": 20802
},
"Data": "{\"serviceid\": \"1\", \"accountid\": \"17\", \"Transaction\": {\"TransactionID\": \"0c5328f5-bda9-4376-b6a0-ca544fcb72fc\", \"TerminalID\": \"1\", \"DateTime\": \"20230221120111\"}}",
"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"
Успішна відповідь на запит [20802] містить структуру `Product`, у якій передається додаткова інформація про платіж, в тому числі по заборгованості:
| Параметр | Обов’яз-ковість | Тип | Опис | Приклад |
|:-:|:-:|:-:|-|:-:|
| `productid` | Так | Рядок | Унікальний ідентифікатор заборгованості. |`383064108`|
| `BankingDetails` | Так | Структура|Структура, що передає банківські реквізити (містить інформацію про одержувача платежу). |Див. нижче.|
| `Address` | Так | Рядок | Поштова адреса платника послуг. |`Address`|
| `Account` | Так | Рядок | Аккаунт постачальника, що потрібно вказувати під час платежу. |`Account`|
| `UserName` | Так | Рядок | Ім'я платника. |`UserName`|
| `Name` | Так | Рядок | Назва послуги. |`Name`|
| `Date` | Так | Рядок | Дата нарахування. |`Date`|
| `Amount.Min` | Так | Ціле | Мінальна сума до оплати (у копійках). |`1`|
| `Amount.Max` | Так | Ціле | Максимальна сума до оплати (у копійках), може бути `null` - тоді обмежено лише операцією.|` 50000`|
| `Amount` | Так | Ціле | Сума нарахувань на дату запиту без врахування лічильників (у копійках). |`1000`|
| `Debt` | Так | Ціле | Сума до оплати (у копійках), якщо значення від’ємне, то переплата. |`100`|
| `Parameters` | Ні | Рядок | Додаткова інформація про послугу. |`Parameters`|
| `Mandatory` | Ні | Булеве | Обов'язковість оплати даної заборгованості: `productid`. За замовчуванням: `false`. |`true`|
| `Privileges` | Ні | Масив | Масив, що передає дані пільг за послугою.|Див. нижче.|
| `Meters`^1^ | Так | Масив | Масив, що передає дані лічильників. |Див. нижче.|
^1^ Параметри масиву **"Meters"**:
| Параметр | Обов’яз-ковість | Тип | Опис | Приклад |
|:-:|:-:|:-:|-|:-:|
| `id` |Так| Рядок | Унікальний ідентифікатор лічильника. |`id`|
| `name` | Так | Рядок | Назва лічильника. |`name`|
| `tarif` | Так | Рядок | Тариф лічильника. |`tarif`|
| `unit` | Так | Рядок | Одиниця виміру (кВт, куб..) лічильника. |`unit`|
| `oldvalue` | Ні | Ціле | Останнє значення лічильника (може бути пустим). |`1100`|
### Приклади відповідей
:::success
<details>
<summary>Операція проведена успішно</summary>
<br>
~~~md
{
"Code": 200,
"Message": "Done",
"Data": {
"Product": [
{
"productid": "1",
"BankingDetails": {},
"Address": "",
"Account": "Account",
"UserName": "UserName",
"Name": "Name",
"Date": "",
"Amount.Min": 0,
"Amount.Max": 0,
"Amount": 0,
"Debt": 0,
"Parameters": "",
"Mandatory": true,
"Privileges": [],
"Meters": [
{
"id": "",
"name": "",
"tarif": "",
"unit": "",
"oldvalue": 1100
}
]
}
]
}
}
~~~
</details>
:::
:::success
<details>
<summary>Помилка виконання операції</summary>
<br>
~~~md
{
"Code": 200,
"Message": "done",
"Data": {
"OperationID": 111,
"OperationStatus": 21,
"Reason": 3
},
"KeyAES": "",
"Sign": ""
}
~~~
</details>
:::
## Пов'язані запити
[[20801] Отримання даних довідника (v.2)](https://hackmd.io/tWx9osErTZSOWRh2lksgEA)
[[10108] Погашення заборгованості (v.2)](https://hackmd.io/7lBhiykHQ6K4gTJLatww-Q)
## Довідкові матеріали
Опис загальних параметрів системи XPAY див. у розділі ["Довідкові матеріали"](https://hackmd.io/aBE7H5cfQ-iqaN3SnwaQ-w): коди типів операцій, типи платіжних методів, коди статусів обробки операцій, відомості та помилки, що повертаються у відповіді та ін.

: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>