API платежных терминалов v2.0
API каталога игр
API предназначена для получения каталога игр — списка всех доступных проектов в Xsolla. API предоставляет всю основную информацию по каждому проекту, такую как: название, значок проекта, параметры, необходимые для оплаты. Эта информация может быть использована для составления страницы оплаты в проекте.
API каталога игр полезен терминальным способам оплаты, желающим разместить кнопки игр в своем интерфейсе. Наличие кнопок игр вместо кнопки Xsolla в терминале позволит пользователю просто и привычно оплатить покупку в игре.
URL: https://api.xsolla.com/projects/list/index.php
Формат запроса
Параметры запроса для получения списка игр
| Название поля | Тип | Описание | Пример |
|---|---|---|---|
ID | integer | ID контрагента платежной системы. Обязательный. | 184 |
sign | integer | Подпись для предотвращения несанкционированного доступа. Обязательный. | 0a8d9fb24fcbac2efafec5e51045d05c |
Формирование подписи
Подпись служит для обеспечения безопасности при проверке и проведении платежей. Формируется с помощью алгоритма хеширования MD5 от строки, получаемой конкатенацией представленных выше параметров, разделенных знаком “|” в указанном ниже порядке.
- php
1md5(<ID>|<secret_key>)
secret_key: Секретный ключ контрагента.
Пример: Для контрагента #184 с секретным ключом “SecretKey” подпись формируется следующим образом:
$sign=md5(“184|SecretKey”)=0a8d9fb24fcbac2efafec5e51045d05c
Пример запроса:
https://api.xsolla.com/projects/list/index.php?id=184&sign=0a8d9fb24fcbac2efafec5e51045d05c
Формат ответа
Ответ на запрос выдается в формате XML и содержит список игр и основную информацию по каждой из них. XML имеет следующую структуру:
- php
1<projectlist>
2 <project>
3 <id>12345</id>
4 <name>Game</name>
5 <virtual_currency>Game of currency</virtual_currency>
6 <logo>http://static.xsolla.com/img/game/12345.gif</logo>
7 <limits>
8 <min>Minimum of amount game of currency</min>
9 <max>max of amount game of currency</max>
10 </limits>
11 <prompt>enter nickname of personage</prompt>
12 <v1>nickname of personage</v1>
13 </project>
14 ...
15</projectlist>
Описание полей
| Название поля | Тип | Описание |
|---|---|---|
projectlist | array | Список проектов (project). Поля проекта описаны ниже. |
project | string | Содержит поля: id, name, virtual_currency, logo, limits, prompt, “v1”, “v2”, “v3”, которые описаны ниже. |
id | integer | ID игры. |
name | string | Название. |
virtual_currency | string | Название виртуальной валюты. |
logo | string | URL-адрес логотипа игры. |
limits | array | Содержит поля min и max. Если для проекта не заданы лимиты (limits), блок не отображается. |
min | string | Минимальное количество виртуальной валюты. |
max | string | Максимальное количество виртуальной валюты. |
prompt | string | Приглашение к вводу параметров. |
local | string | Язык интерфейса (локаль). |
v1 | string | Приглашение к вводу основного параметра идентификации пользователя для проекта. |
v2 | string | Приглашение к вводу одного из дополнительных параметров идентификации пользователя для проекта. |
v3 | string | Приглашение к вводу одного из дополнительных параметров идентификации пользователя для проекта. |
Формат ответа в случае ошибки
При возникновении ошибки API вернет XML в следующем формате:
1<error>
2 <description>Incorrect signature</description>
3</error>
| Название поля | Тип | Описание |
|---|---|---|
error | string | Содержит description, описанный ниже. |
description | string | Описание ошибки. |
Описание ошибок
| Ошибка | Тип | Описание |
|---|---|---|
| Incorrect signature | string | Передана неверная подпись (sign). |
| Temporary technical error | string | Ошибка, связанная с неверной передачей параметра контрагент (id), при неполадках на сервере и при других ошибках. |
Взаимодействие с агентом
Общие положения
Возможны два варианта взаимодействия:
Кнопка Xsolla. Данная кнопка располагается у агента, оплата по ней происходит следующим образом: при выборе кнопки Xsolla пользователю требуется ввести заранее полученный номер и осуществить оплату на него. Соответственно, для оплаты на кнопку Xsolla необходимо заполнить поле
account(поляproject,v1,v2,v3не заполняются). В полеaccountдолжен быть девятизначный Xsolla-номер. Для размещения кнопки Xsolla обратитесь к менеджеру для получения логотипа и номера.Кнопки игр. Данные кнопки располагаются у агента, каждая кнопка соответствует отдельной игре. Пользователь нажимает на кнопку конкретной игры, авторизуется и осуществляет оплату на свой аккаунт. Соответственно, для оплаты на кнопку игр необходимо заполнить поля
project,v1,v2,v3(полеaccountне заполняется). Возможность посылатьproject,v1,v2,v3появляется после того, как в терминале будет установлена кнопка конкретного проекта (игры). Причем поляprojectиv1являются обязательными, аv2иv3— опциональными (их наличие или отсутствие зависит от конкретного проекта). Чтобы разместить кнопки игр, обратитесь к менеджеру для получения логотипов игр, их внутренних номеров, способов авторизации (правил заданияv1,v2,v3), а также другой информации по каждой игре.
Кнопка — элемент в системе агента, активация которого инициирует оплату в Xsolla.
Перед подключением агента к Xsolla необходимо уточнить:
- Партнерский номер (type) в Xsolla. Вы можете узнать его, обратившись к вашему аккаунт-менеджеру.
secret_key— конфиденциальный строковый параметр, необходимый для формирования цифровой подписи (md5-строки). Его можно узнать в Личном кабинете или у персонального менеджера проекта.
Взаимодействие с API происходит путем создания HTTP-запроса к шлюзу API по адресу:
- http
1https://ps.xsolla.com/api/gate
Любой запрос передается методами GET или POST, все параметры должны быть в кодировке UTF-8. Обращаем внимание, что использование кодировки UTF-8 важно, поскольку при использовании разных кодировок подписи сходиться не будут.
Формат запроса
Запросы к Xsolla могут выполняться для того, чтобы:
- проверить возможность проведения платежа (
command = check) - выполнить платеж (
command = pay) - проверить успешность платежа (
command = status) - рассчитать стоимость и количество игровой валюты (
command = calculate)
0 с комментарием OK и поле order с ID транзакции ранее проведенного платежа.Команда check
Команда check: идентификация пользователя по Xsolla-номеру
| Название поля | Тип | Описание | Пример |
|---|---|---|---|
command | string | Проверка возможности проведения платежа. Обязательный. | check |
account | integer | Xsolla-номер (9 цифр). Обязательный. | 001234567 |
sum | float | Сумма платежа в согласованной валюте. Разделитель: “.”; 2 знака после точки. Необязательный. | 100.98 |
type | integer | Ваш партнерский номер в Xsolla. Обязательный. | 151 |
date | string | Дата в формате YYYYMMDDHHMMSS. Обязательный. | 20060425180622 |
md5 | string | Подпись для предотвращения несанкционированного доступа. Обязательный. | 0a8d9fb24fcbac2efafec5e51045d05c |
Команда check: идентификация пользователя по project/v1/v2/v3
| Название поля | Тип | Описание | Пример |
|---|---|---|---|
command | string | Проверка возможности проведения платежа. Обязательный. | check |
project | integer | ID проекта в системе Xsolla; доступен в Личном кабинете. Обязательный. | 4783 |
v1 | string | Параметр идентификации пользователя (обычно никнейм в игре). Обязательный. | XsollaUser |
v2 | string | Дополнительный параметр идентификации пользователя (зависит от настроек проекта). Необязательный. | 0 |
v3 | string | Дополнительный параметр идентификации пользователя (зависит от настроек проекта). Необязательный. | 0 |
sum | float | Сумма платежа в согласованной валюте. Разделитель: “.”; 2 знака после точки. Необязательный. | 100.98 |
type | integer | Ваш партнерский номер в Xsolla. Обязательный. | 151 |
date | string | Дата в формате YYYYMMDDHHMMSS. Обязательный. | 20060425180622 |
md5 | string | Подпись для предотвращения несанкционированного доступа. Обязательный. | 0a8d9fb24fcbac2efafec5e51045d05c |
Команда pay
Команда pay: идентификация пользователя по account
| Название поля | Тип | Описание | Пример |
|---|---|---|---|
command | string | Название команды. Обязательный. | pay |
account | integer | Xsolla-номер (9 цифр). Обязательный. | 001234567 |
sum | float | Сумма платежа в согласованной валюте. Разделитель: “.”; 2 знака после точки. Обязательный. | 100.98 |
id | string | Уникальный номер транзакции в системе партнера. Обязательный. | xsollaid1 |
type | integer | Ваш партнерский номер в Xsolla. Обязательный. | 151 |
date | string | Дата в формате YYYYMMDDHHMMSS. Обязательный. | 20060425180622 |
test | boolean | Флаг тестового платежа (1 — тестовый платеж, 0 — реальный платеж, по умолчанию 0). Необязательный. | 1 |
md5 | string | Подпись для предотвращения несанкционированного доступа. Обязательный. | 0a8d9fb24fcbac2efafec5e51045d05c |
Команда pay: идентификация пользователя по project/v1/v2/v3
| Название поля | Тип | Описание | Пример |
|---|---|---|---|
command | string | Название команды. Обязательный. | pay |
project | integer | ID проекта (игры). Обязательный. | 4783 |
v1 | string | Параметр идентификации пользователя (обычно никнейм в игре). Обязательный. | XsollaUser |
v2 | string | Дополнительный параметр идентификации пользователя (зависит от настроек проекта). Необязательный. | 0 |
v3 | string | Дополнительный параметр идентификации пользователя (зависит от настроек проекта). Необязательный. | 0 |
sum | float | Сумма платежа в согласованной валюте. Разделитель: “.”; 2 знака после точки. Необязательный. | 100.98 |
id | string | Уникальный ID транзакции в системе партнера. Обязательный. | xsollaid2 |
type | integer | Ваш партнерский номер в Xsolla. Обязательный. | 151 |
date | string | Дата в формате YYYYMMDDHHMMSS. Обязательный. | 20060425180622 |
test | boolean | Флаг тестового платежа (1 — тестовый платеж, 0 — реальный платеж, по умолчанию 0). Необязательный. | 1 |
md5 | string | Подпись для предотвращения несанкционированного доступа. Обязательный. | 0a8d9fb24fcbac2efafec5e51045d05c |
order ответа будет содержать номер ранее проведенного платежа.Команда status
Вы можете проверить успешность платежа либо по ID транзакции в вашей системе (параметр id), либо по ID транзакции на стороне Xsolla (параметр invoice). Если вы передаете оба параметра, они должны относиться к одному платежу; в противном случае Xsolla возвращает ошибку валидации.
Команда status: проверка успешности платежа по ID транзакции в вашей системе
| Название поля | Тип | Описание | Пример |
|---|---|---|---|
command | string | Название команды. Обязательный. | status |
id | string | Уникальный ID транзакции в вашей системе. Обязательный, если не передан ID транзакции на стороне Xsolla (invoice). | xsollaid2 |
type | integer | Ваш партнерский номер в Xsolla. Обязательный. | 151 |
date | string | Дата в формате YYYYMMDDHHMMSS. Обязательный. | 20060425180622 |
md5 | string | Подпись для предотвращения несанкционированного доступа. Обязательный. | 0a8d9fb24fcbac2efafec5e51045d05c |
Пример:
1https://ps.xsolla.com/api/gate?command=status&id=xsollaid2&type=151&date=20060425180622&md5=0a8d9fb24fcbac2efafec5e51045d05c
Команда status: проверка успешности платежа по ID транзакции на стороне Xsolla
| Название поля | Тип | Описание | Пример |
|---|---|---|---|
command | string | Название команды. Обязательный. | status |
invoice | integer | Уникальный ID транзакции на стороне Xsolla. Обязательный, если не передан ID транзакции в вашей системе (id). | 987654321 |
type | integer | Ваш партнерский номер в Xsolla. Обязательный. | 151 |
date | string | Дата в формате YYYYMMDDHHMMSS. Обязательный. | 20060425180622 |
md5 | string | Подпись для предотвращения несанкционированного доступа. Обязательный. | 0a8d9fb24fcbac2efafec5e51045d05c |
Пример:
1https://ps.xsolla.com/api/gate?command=status&invoice=987654321&type=151&date=20060425180622&md5=0a8d9fb24fcbac2efafec5e51045d05c
Команда calculate
| Название поля | Тип | Описание | Пример |
|---|---|---|---|
command | string | Проверка возможности проведения платежа. Обязательный. | calculate |
project | integer | ID проекта. Обязательный. | 4783 |
sum | float | Сумма платежа в согласованной валюте. Разделитель: “.”; 2 знака после точки. Обязательный, если не указан out. | 100.98 |
out | float | Количество игровой валюты. Разделитель: “.”; 2 знака после точки. Обязательный, если не указан sum. | 10.98 |
type | integer | Ваш партнерский номер в Xsolla. Обязательный. | 151 |
date | string | Дата в формате YYYYMMDDHHMMSS. Обязательный. | 20060425180622 |
md5 | string | Подпись для предотвращения несанкционированного доступа. Обязательный. | 0a8d9fb24fcbac2efafec5e51045d05c |
Формирование поля MD5
Подпись служит для обеспечения безопасности при проверке и проведении платежей. Формируется с помощью алгоритма хеширования MD5 от строки, получаемой конкатенацией значений всех передаваемых параметров, причем в том же самом порядке, в котором они идут в запросе. В случае необязательных параметров действует правило – если параметр передается, он участвует в формировании подписи. Также в подписи участвует секретный ключ платежной системы, который можно уточнить у вашего персонального менеджера.
Команда check
- php
1<?php
2 $request['command']='check';
3 $request['account']=1234567;
4 $request['sum']=150.75;
5 $request['type']=151;
6 $request['date']='20110117000516';
7 $md5='';
8 foreach ($request as $value) {
9 $md5.=$value;
10 }
11 $request['md5']=md5($md5.$secret_key);
12?>
Строка:
check1234567150.7515120110117000516test
MD5:
1cad5a2c3457cffa8e857a507a7050ba
Команда pay
- php
1<?php
2$request['command']='pay';
3$request['account']=1234567;
4$request['sum']=150.75;
5$request['id']=384957;
6$request['type']=151;
7$request['date']='20110117000516';
8$md5='';
9foreach ($request as $value) {
10$md5.=$value;
11}
12$request['md5']=md5($md5.$secret_key);
13?>
Строка:
pay1234567150.7538495715120110117000516test
MD5:
7cfa05abde4ae2464142bf2ac7a72f32
Формирование подписи для команды status (проверка по ID транзакции в вашей системе)
- php
1$request['command'] = 'status';
2$request['id'] = 'xsollaid2';
3$request['type'] = 151;
4$request['date'] = '20110117000516';
5
6$md5 = '';
7foreach ($request as $value) {
8 $md5 .= $value;
9}
10$request['md5'] = md5($md5 . $secret_key);
Строка:
statusxsollaid215120110117000516+secret_key
MD5:
7cfa05abde4ae2464142bf2ac7a72f32 (пример)
Формирование подписи для команды status (проверка по ID транзакции на стороне Xsolla)
- php
1$request['command'] = 'status';
2$request['invoice'] = 987654321;
3$request['type'] = 151;
4$request['date'] = '20110117000516';
5
6$md5 = '';
7foreach ($request as $value) {
8 $md5 .= $value;
9}
10$request['md5'] = md5($md5 . $secret_key);
Строка:
status98765432115120110117000516+secret_key
MD5:
7cfa05abde4ae2464142bf2ac7a72f32 (пример)
Команда calculate
- php
1<?php
2 $request['command']='calculate';
3 $request['project']=4783;
4 $request['out']=12;
5 $request['type']=151;
6 $request['date']='20110117000516';
7 $md5='';
8 foreach ($request as $value) {
9 $md5.=$value;
10 }
11 $request['md5']=md5($md5.$secret_key);
12?>
Строка:
calculate47831215120110117000516test
MD5:
e73e11a9cad00e205358e05254905af5
Ответы
Коды ответов
Xsolla формирует XML, в котором содержится код статуса result и описание comment.
| Код ( | Описание ( | Описание |
|---|---|---|
0 | OK | Успешное выполнение запроса. В этом случае в XML добавляется блок payment с детальной информацией. |
1 | technical problem | Технические работы (необходимо присылать повторное оповещение). |
2 | xsolla-number not correct | Неправильная длина Xsolla-номера. |
3 | xsolla-number not found | Xsolla-номер не найден. |
4 | stop | Xsolla-номер не для оплаты. |
5 | sum error | Ошибка суммы. |
6 | bonus error | Ошибка выхода. |
7 | md5 error | Некорректная подпись MD5. Не совпадает хеш строк. |
8 | IP error | Запрещенный IP-адрес. |
9 | request is not correct | Обязательные параметры отсутствуют или команда задана неверно. |
10 | project is not exists | Проект не существует (выключен или удален навсегда). |
11 | type is not exists or disabled | Тип не существует или отключен. |
Пример ответа с ошибкой:
- xml
1<response>
2 <result>7</result>
3 <comment>md5 error</comment>
4</response>
Статусы успешного ответа
Если в поле result возвращается 0, в ответ также добавляется блок payment с детальной информацией о платеже. Статус платежа передается в коде в параметре status:
| Код ( | Описание ( | Описание |
|---|---|---|
0 | created | Платеж создан, но еще не был завершен или отменен. |
1 | succeeded | Успешный платеж. Поле date содержит дату завершения платежа в формате YYYY-MM-DD HH:MM:SS (GMT+3). |
2 | canceled | Платеж отменен. |
3 | processing | Платеж находится в обработке. Повторите запрос позднее. |
4 | incomplete | Платеж не может быть выполнен. Обратитесь в службу поддержки Xsolla. |
Пример успешного ответа для команды Status:
- xml
1<response>
2 <payment>
3 <invoice>123456789</invoice>
4 <id>xsollaid2</id>
5 <sum>100.98</sum>
6 <project>4783</project>
7 <v1>XsollaUser</v1>
8 <date>2026-01-23 12:34:56</date> <!-- present only when status is succeeded -->
9 <status>1</status>
10 <comment>succeeded</comment>
11 <statusKioskUrl>https://secure.xsolla.com/pages/status-kiosk?id=123456789&key=9e07b3…</statusKioskUrl>
12 </payment>
13 <result>0</result>
14</response>
API реестра операций для платежных систем
Документ предназначен для разработчиков, собирающихся использовать API реестра операций для ПС для предоставления возможности оплаты виртуальных товаров и услуг проекта. Документ предполагает базовые знания об API, запросах HTTP и архитектуре программного обеспечения.
Взаимодействие с API
- Работа происходит только по схеме интеграции сервер-сервер;
- Все параметры должны быть в кодировке UTF-8;
- Формат возвращения данных: csv.
Описание методов API
- Get – запрос на получение данных платежей.
URL-адрес API
Базовый URL: https://api.xsolla.com/payments/
Маска формирования URL
- http
1https://api.xsolla.com/payments/v<number versions>/<command>?<parameter1=value1>&<parameter2=value2
GET
Команда создает запрос на передачу данных о платежах от всех платежных систем данного контрагента за 24 часа.
Получение доступа
Для получения доступа к API обратитесь к персональному менеджеру проекта или напишите на [email protected], чтобы получить уникальный ID партнера и секретный ключ.
Пример запроса
https://api.xsolla.com/payments/v1/Get?date=2013-08-20&id=1234&sign=8f683701c03b03fe49e6ef7bbfafb8fb
Входные параметры
| Название поля | Тип | Описание | Пример |
|---|---|---|---|
date | string | Ответ содержит данные о платежах за последние 24 часа. Дата в формате YYYY-MM-DD (часовой пояс GMT+4). | 2013-08-20 |
id | integer | Уникальный ID партнера. Чтобы получить ID, обратитесь к вашему персональному менеджеру проекта или напишите на [email protected]. | 1234 |
sign | string | Подпись для предотвращения несанкционированного доступа. | 8f683701c03b03fe49e6ef7bbfafb8fb |
Ответ
Ответ формируется в формате csv (в качестве разделителя используется запятая “,”):
69927355,95188933,394,2013-08-01T06:49:25+04:00,91.0000,RUB,done
Описание полей:
| Название поля | Тип | Описание | Пример |
|---|---|---|---|
xsolla_id | integer | ID транзакции внутри Xsolla. Обязательный. | 12345678 |
ps_id | integer | ID транзакции, переданный платежной системой. Обязательный. | 1234 |
pid | integer | ID платежной системы. Обязательный. | 64 |
datetime | string | Время проведения платежа (часовой пояс GMT+4). Обязательный. | 2013-08-01T06:49:25+04:00 |
amount | float | Сумма, которую заплатил пользователь. Обязательный. | 10.98 |
currency | string | Валюта платежа. Обязательный. | USD |
status | string | Статус платежа (выводятся платежи со статусами done — платеж успешно завершен и canceled — платеж отменен). Обязательный. | done |
Формирование подписи
Параметры сортируются по ключам в алфавитном порядке. Подпись формируется с помощью алгоритма хеширования md5 от строки, получаемой конкатенацией значений параметров. Также в подписи участвует секретный ключ (секретный ключ можно узнать у менеджера). В качестве разделителя используется “|”.
Пример запроса
1date = 2013-08-20;
2id=1234;
3secret_key=password.
Строка будет иметь следующий вид:
2013-08-20|1234|password
MD5 хеш от данной строки:
e8df0ff2e4360300a5142cc28d86b422
Список кодов завершения
| HTTP статус ответа | Сообщение об ошибке | Описание ошибки |
|---|---|---|
| 200 | Успех. | |
| 400 | Wrong parameters | Переданы некорректные параметры. |
| 400 | Wrong ID partner | Некорректный контрагент. |
| 400 | Wrong date | Некорректная дата. |
| 403 | Incorrect sign | Подпись неверна. |
| 404 | Unknown command | Неизвестная команда. |
| 500 | Внутренняя ошибка API. |
Сверки по транзакциям с платежной системой
Сверки через email-оповещения
Сверки по транзакциям производятся путем отправки платежной системой письма с прикрепленным документом, имеющим определенный формат. Частота проведения сверок оговаривается заранее.
Формат документа
Формат документа:
- Документ присылается в кодировке UTF-8.
- Документ в формате .csv (разделитель запятая или точка с запятой).
- Документ доставляется прикрепленным к письму файлом с заранее указанного и постоянного email-адреса на адрес [email protected].
- Тема письма: “stats registry”.
- Формат наименования документа: stats_registry_period. Период задается двумя датами в формате YYYY-MM-DD:start_dateTend_date. Если период включает в себя один день (за одни сутки), указывать T и дату окончания нет необходимости.
Статистика принятых платежей за 24 ноября, 2010 год.
Имя файла: stats_registry_2010-11-24.csv
Статистика принятых платежей в период 1 октября по 16 декабря, 2010 год.
Имя файла: stats_registry_2010-01-10T2010-12-16.csv
Статистика принятых платежей за май 2011 года.
Имя файла: stats_registry_2011-05-01T2011-05-31.csv
Содержание документа
| Параметр | Тип | Описание |
|---|---|---|
| const | string | ID транзакции в системе контрагента (id в вашей системе). Обязательный, если не передан pid. |
| pid | string | ID транзакции в системе Xsolla (отправляется в запросе). Обязательный, если не передан const. |
| amount | string | Сумма платежа. Разделитель: “.”, 2 знака после точки. Обязательный. |
| payout | string | Сумма выплаты Xsolla. Обязательный. |
| currency | string | Валюта платежа в формате ISO 4217. Обязательный. |
| state | string | Статус платежа: success (проведен), cancelled (отменен). Присылать нужно только платежи в состоянии “проведен” или “отменен”. Под состоянием “отменен” понимается такое состояние платежа, когда пользователь сначала провел, а потом через какое-то время отменил платеж. Обязательный. |
| time | string | Дата и время платежа (YYYY-MM-DD HH:MM:SS). Обязательный. |
| desc | string | Дополнительный параметр, например реквизиты платежа, которые мы передаем в запросе (email, nick, phone). Необязательный. |
Пример реестра
Пример 1
- http
197035765;6654448;10.00;9.50;RUB;done;2011-09-01 13:30:45;nickname
2
397035766;6634558;150.00;145.00;RUB;done;2011-09-01 16:43:54;[email protected]
Пример 2 (если в системе ПС нет нашего pid)
- http
1564;;10.00;9.50;RUB;done;2011-09-01 13:30:45;nickname
2
3456;;150.00;145.00;RUB;done;2011-09-01 16:43:54;[email protected]
Пример 3 (если нет desc, обратите внимание на точку с запятой в конце)
- http
1564;6654855;10.00;9.50;RUB;done;2011-09-01 13:30:45;
2
3456;4588554;150.00;145.00;RUB;done;2011-09-01 16:43:54;
Сверки через API платежной системы
Возможен вариант проведения сверок с использованием HTTP (HTTPS) API платежной системы. После обращения к Xsolla API должна получить следующие параметры:
| Параметр | Тип | Описание |
|---|---|---|
const | string | ID транзакции в системе контрагента (id в вашей системе). Обязательный, если не передан pid. |
pid | string | ID транзакции в системе Xsolla (отправляется в запросе). Обязательный, если не передан const. |
amount | string | Сумма платежа. Разделитель: “.”, 2 знака после точки. Обязательный. |
payout | string | Сумма выплаты Xsolla. Обязательный. |
currency | string | Валюта платежа в формате ISO 4217. Обязательный. |
state | string | Состояние платежа: success (проведен), cancelled (отменен). Присылать нужно только платежи в состоянии “проведен” или “отменен”. Под состоянием “отменен” понимается такое состояние платежа, когда пользователь сначала провел, а потом через какое-то время отменил платеж. Обязательный. |
time | string | Дата и время платежа (в формате YYYY-MM-DD HH:MM:SS). Обязательный. |
desc | string | Дополнительный параметр, например реквизиты платежа, которые мы передаем в запросе (email, nick, phone). Необязательный. |
Нашли опечатку или ошибку в тексте? Выделите ее и нажмите Ctrl+Enter.