# Разные полезные штуки
описание подключения к сервисам XPASS
версия 1.7.9
---
[toc]
---
#### Структура "Transaction"
| Параметр | Обов'язковість | Тип | Опис | Приклад |
|:----:|:----:|:----:|----|:----:|
|`Transaction`|Так|Структура|Структура даних, що містить інформацію про транзакцію запиту статусу операції [20003].|Див. приклад нижче.|
Параметри структури "Transaction":
| Параметр | Обов'язковість | Тип | Опис |Приклад |
|:----:|:----:|:----:|----|:----:|
|`TransactionID`|Так|Рядок|Унікальний ідентифікатор транзакції у системі Партнера запиту статусу операції.|`45913135c6e2be0cbf58`|
|`TerminalID`|Так|Рядок|Унікальний ідентифікатор терміналу у системі Партнера запиту статусу операції. |`1`|
|`DateTime`|Так|Рядок|Дата та час проведення транзакції запиту статусу операції. Формат: YYYYMMDD HH24:MM:SS.|`20220521 06:41:04`|
## Оглавление
### История изменений
| № | Раздел | Изменение |Дата |Автор |
| -------- | -------- | -------- |-------- |-------- |
| 1 | | Первая версия документа |01.08.2018 |Куличенко Р.Б. |
| 1.2 | Описание запросов | Добавлен запрос: “Выполнение перевода между платежными инструментами клиента” |13.08.2018 |Куличенко Р.Б. |
| 1 | Text | Text |Text |Text |
| 1 | Text | Text |Text |Text |
### Общее описание мер безопасности
Взаимодействие с информационной системой оператора требует соблюдения следующих мер безопасности:
1. сетевые подключения выполняется в рамках пула разрешенных IP адресов партнера.
2. обмен происходит в рамках защищенного протоколом SSL соединения.
3. пакет данных подлежит обязательному шифрованию с использованием персонального публичного ключ партнера.
4. идентификация партнера выполняется следующим образом:
+ уникальный токен;
- подпись пакета данных приватным ключем партнера и верификация подписи на стороне
- оператора с помощью публичного ключа партнера.
- криптование пакета публичным ключом, который генерируется на стороне оператора и передается партнеру.
Для соблюдения вышеуказанных правил:
1. **Оператор** передает партнеру его токен и свой публичный ключ;
1. **Партнер** предоставляет оператору свой публичный ключ;
:::warning
:bulb:
**требование к ключам шифрования:**
- [ ] Длина RSA ключа - 2048 бит;
- [ ] Упакован PKIX алгоритмом;
- [ ] Формат - PEM.
:::
#### Общая схема взаимодействия
Интеграция цифрового кошелька XPAY в мобильное приложение/Web-сайт партнера выполняется с использованием схемы взаимодействия сервер-сервер. XPAY предоставляет API и механизмы доступа для взаимодействия с системой партнера. При этом прямое взаимодействие мобильного приложения/Web-сайте партнера с API XPAY не производится.
Информационный обмен отображен на схеме:
https://docs.google.com/drawings/d/1aLrR7wdNCr6CovBz_L4AWhdhYJnFZiQ_00jioEjGmWM/edit?usp=sharing

[img](https://docs.google.com/drawings/d/1aLrR7wdNCr6CovBz_L4AWhdhYJnFZiQ_00jioEjGmWM/edit?usp=sharing)
<img src="https://hackmd.io/_uploads/HyJfG7jYK.png" width=300 style="display:block;margin:30px auto" />
<img src="https://i.imgur.com/aoW0bG7.png" width=300 style="display:block;margin:30px auto" />
==Выполнение платежа на кошелек==
Запрос
**"Partner"** - структура JSON содержащая токен партнера и код типа операции (строка)
```
{
"PartnerToken":"",
"OperationType":40402,
"Locale":""
}
```
```
{
"UserID":"",
"Phone":"",
"Email":"",
"DeviceID":"",
"Sum":,
"Sender":"",
"Recipient":"",
"CallbackURL": "",
"Transaction":{
"TransactionID":"",
"TerminalID":"",
"DateTime":""
}
}
```
<details>
<summary>Вопрос 1</summary>
<br>
It is a long established fact that a reader will be distracted by the readable content of a page whncy. Various versions have evolved over the years, sometimes by accident, sometimes on purpose (injected humour and the like).
</details>
```
It is a long established fact that a reader
```
:::info
:bulb: **Hint**: In the private team plan, the image will be uploaded to a private S3 storage and only accessible through the note.
:::
---
Вариант с тегами
###### `API` `10102` `updated`
---
Формат для списков
+ Текст 1:
- Текст 1.1:
* Текст 1.1.1
* Текст 1.1.2
+ Текст 2
---
Ваариант для заполнения примеров
~~~md
{
"PartnerToken":tryryfcvbhbj,
"OperationType":10102
"Locale":en
}
~~~
---
Ссылки
[link text](http://dev.nodeca.com)
[link with title](http://nodeca.github.io/pica/demo/ "title text!")
Autoconverted link https://github.com/nodeca/pica
---
{%pdf https://www.w3.org/TR/WAI-WEBCONTENT/wai-pageauth.pdf %}
---
---
This is an HTML abbreviation example.
It converts "HTML", but keeps intact partial entries like "xxxHTMLyyy" and so on.
*[HTML]: Hyper Text Markup Language
---
Footnote 1 link[^first].
Footnote 2 link[^second].
Inline footnote^[Text of inline footnote] definition.
Duplicated footnote reference[^second].
[^first]: Footnote **can have markup**
and multiple paragraphs.
[^second]: Footnote text.
---
```flow
st=>start: Старт
e=>end: Конец
op=>operation: Действие 1
op2=>operation: Действие 2
cond=>condition: Да или Нет?
st->op->op2->cond
cond(yes)->e
cond(no)->op2
```
:::success
Yes :tada:
:::
:::info
This is a message :mega:
:::
:::warning
Watch out :zap:
:::
:::danger
Oh No! :fire:
:::
:::spoiler Текст
Текст 1
Текст 2
:::
---
## Mind map
```markmap
# XPAY API Guide
## Початок роботи
## Група
- [[10102] Карта-кошелек](/jxzgAy4nSt-Q-6chgRCZdQ)
- [[10102] Карта-кошелек](/jxzgAy4nSt-Q-6chgRCZdQ)