# Pay Station API
# Введение
* **Версия:** 2.0.0
* **Серверы**:
* `https://api.xsolla.com/api`
Pay Station позволяет вам монетизировать игру, предоставляя пользователям
удобный интерфейс для оплаты покупок во внутриигровом магазине. Чтобы настроить
открытие платежного интерфейса, следуйте [инструкции](/ru/doc/pay-station/how-to/how-to-open-payment-ui/).
В Pay Station API представлены следующие группы методов:
- Токен — содержит метод для создания токена с любыми параметрами пользователя
для дальнейшей обработки платежа через платежный интерфейс.
- [Токенизация](/ru/doc/pay-station/features/tokenization/) — содержит методы для
проведения безопасных платежей без открытия платежного интерфейса и
непосредственного участия пользователя.
- Отчеты — содержит методы для возвращения информации о транзакциях пользователя,
а также создания отчетов и получения детализации выплат по валютам.
- Возврат платежа — содержит методы для создания запросов на отмену платежа и на
частичный возврат платежа.
- Тестирование — содержит метод для тестирования процесса чарджбэка.
Подробные сведения о настройке платежного интерфейса приведены в [руководстве
по интеграции решения Payments](/ru/solutions/payments/integration-guide/integration-flow/).
Примечание
Вы также можете использовать раздел Xsolla Base API из коллекции Postman, чтобы протестировать методы, необходимые для интеграции.
Version: 2.0
## Servers
```
https://api.xsolla.com/merchant/v2
```
## Security
### basicAuth
Xsolla API использует базовую HTTP-аутентификацию. Все запросы к API должны содержать заголовок `Authorization: Basic `, где `` — пара `merchant_id:api_key`, закодированная по стандарту Base64.
Значения параметров вы можете найти в [Личном кабинете](https://publisher.xsolla.com/):- `merchant_id` указан:
- В разделе **Настройки компании > Компания**.
- Aдресной строке браузера на любой странице Личного кабинета. URL-адрес имеет вид: `https://publisher.xsolla.com/`.
- `api_key` отображается в Личном кабинете только при создании и должен храниться на вашей стороне. Создать ключ можно в разделах:
- **Настройки компании > Ключи API**;
- **Настройки проекта > Ключи API**.
Подробная информация о работе с ключами API приведена в [справочнике API](https://developers.xsolla.com/ru/api/getting-started/#api_keys_overview).
Type: http
Scheme: basic
## Download OpenAPI description
[Pay Station API](https://developers.xsolla.com/_bundle/@l10n/ru/api/pay-station/index.yaml)
## Токен
### Создание токена
- [POST /merchants/{merchant_id}/token](https://developers.xsolla.com/ru/api/pay-station/token/create-token.md): Вы можете создать токен с любыми параметрами пользователя. Вы отправляете эти
параметры Xsolla при создании токена и получаете их обратно после успешной
оплаты. Токен может содержать только описанные ниже параметры, либо параметры,
предопределенные вами.
Если какой-либо параметр был передан в некорректном формате, токен не может
быть выдан. В ответ вернется 422 HTTP код и в JSON объекте в теле ответа будет
содержаться информация об ошибке. В параметре extended_message указывается,
какие именно параметры были переданы неверно.
По умолчанию время жизни токена — 24 часа. Если вы хотите изменить это
значение, обратитесь к персональному менеджеру проекта или напишите на csm@xsolla.com. Новое значение будет
действовать во всех проектах вашей компании, созданных в Личном кабинете.
ВниманиеТокен, полученный в результате вызова этого метода, используется только для авторизации других запросов. Вы можете использовать этот токен для открытия платежного интерфейса, если у вас подключен продукт Subscriptions.Чтобы открыть платежный интерфейс в новом окне, используйте ссылку: https://secure.xsolla.com/paystation4/?token={token}, где {token} — полученный токен.Для тестирования используйте этот URL-адрес: https://sandbox-secure.xsolla.com/paystation4/?token={token}.
ВниманиеЭтот метод API не включает в себя path-параметр project_id, поэтому для авторизации вам необходимо использовать ключ API, который действует во всех проектах.
## Токенизация
### Список сохраненных платежных аккаунтов
- [GET /projects/{project_id}/users/{user_id}/payment_accounts](https://developers.xsolla.com/ru/api/pay-station/tokenization/get-saved-accounts.md): Загрузка списка сохраненных платежных аккаунтов пользователя.
ПримечаниеДанный метод API в тестовом окружении (sandbox-режиме) работает только с тестовыми картами, у которых нет проверки 3-D Secure.
### Удаление сохраненного платежного аккаунта
- [DELETE /projects/{project_id}/users/{user_id}/payment_accounts/{type}/{account_id}](https://developers.xsolla.com/ru/api/pay-station/tokenization/delete-saved-account.md): Удаление сохраненного платежного аккаунта.
ПримечаниеДанный метод API в тестовом окружении (sandbox-режиме) работает только с тестовыми картами, у которых нет проверки 3-D Secure.
ПримечаниеВы можете использовать этот метод API в тестовом окружении (sandbox-режиме). Для этого передайте в запросе данные тестового аккаунта. Подробную информацию об открытии тестового окружения и сценариях тестирования читайте в инструкции.
### Оплата по сохраненному платежному аккаунту
- [POST /projects/{project_id}/users/{user_id}/payments/{type}/{account_id}](https://developers.xsolla.com/ru/api/pay-station/tokenization/charge-with-saved-account.md): Оплата по сохраненному платежному аккаунту.
ПримечаниеДанный метод API в тестовом окружении (sandbox-режиме) работает только с тестовыми картами, у которых нет проверки 3-D Secure.
ВниманиеДля корректной работы метода настройте время ожидания 2 минуты.
## Отчеты
### Список отчетов
- [GET /merchants/{merchant_id}/reports](https://developers.xsolla.com/ru/api/pay-station/reports/get-reports.md): Список финансовых отчетов за указанный период времени.
ВниманиеЭтот метод API не включает в себя path-параметр project_id, поэтому для авторизации вам необходимо использовать ключ API, который действует во всех проектах.
### Список транзакций
- [GET /merchants/{merchant_id}/reports/transactions/registry.{format}](https://developers.xsolla.com/ru/api/pay-station/reports/get-transactions.md): Возвращает список с подробной информацией об успешных и отмененных транзакциях
за указанный период. В ответе вы получите данные о платежах, включая информацию
о комиссиях, налогах, а также о заказе и пользователе. Список доступен в
формате JSON или CSV. Вы можете использовать этот метод API для финансовой
сверки.
ВниманиеЭтот метод API не включает в себя path-параметр project_id, поэтому для авторизации вам необходимо использовать ключ API, который действует во всех проектах.
### Поиск транзакций
- [GET /merchants/{merchant_id}/reports/transactions/search.{format}](https://developers.xsolla.com/ru/api/pay-station/reports/find-transactions.md): Возвращает список транзакций на основе параметров поиска. В ответе вы получите
данные о всех платежах, совершенных в вашей игре, даже если они не были
завершены успешно. Вы можете указать не только период выполнения транзакции, но
и другие параметры, например, чтобы найти транзакции определенного пользователя
или в определенном статусе платежа. Список будет доступен в формате JSON или
CSV.
ВниманиеЭтот метод API не включает в себя path-параметр project_id, поэтому для авторизации вам необходимо использовать ключ API, который действует во всех проектах.
### Быстрый поиск транзакций
- [GET /merchants/{merchant_id}/reports/transactions/simple_search](https://developers.xsolla.com/ru/api/pay-station/reports/find-transactions-fast.md): Быстрое получение списка транзакций на основе параметров поиска в течение
нескольких секунд. Альтернатива методу API Поиск транзакций, который возвращает результаты поиска в
формате JSON, CSV или XLS.
ВниманиеЭтот метод API не включает в себя path-параметр project_id, поэтому для авторизации вам необходимо использовать ключ API, который действует во всех проектах.
### Детализация выплат по валютам
- [GET /merchants/{merchant_id}/reports/transactions/summary/transfer](https://developers.xsolla.com/ru/api/pay-station/reports/get-payouts-breakdown.md): Получение детализации выплат по валютам.
ВниманиеЭтот метод API не включает в себя path-параметр project_id, поэтому для авторизации вам необходимо использовать ключ API, который действует во всех проектах.
### Информация о транзакции
- [GET /merchants/{merchant_id}/reports/transactions/{transaction_id}/details](https://developers.xsolla.com/ru/api/pay-station/reports/get-transaction.md): Полная информация о транзакции по ID.
ВниманиеЭтот метод API не включает в себя path-параметр project_id, поэтому для авторизации вам необходимо использовать ключ API, который действует во всех проектах.
### Список выплат
- [GET /merchants/{merchant_id}/reports/transfers](https://developers.xsolla.com/ru/api/pay-station/reports/get-payouts.md): Получение списка выплат за определенный период.
ВниманиеЭтот метод API не включает в себя path-параметр project_id, поэтому для авторизации вам необходимо использовать ключ API, который действует во всех проектах.
## Возврат платежа
### Частичный возврат платежа
- [PUT /merchants/{merchant_id}/reports/transactions/{transaction_id}/partial_refund](https://developers.xsolla.com/ru/api/pay-station/refund/request-partial-refund.md): Отправка запроса на частичный возврат платежа пользователю. Подробная
информация о процессе возврата, а также список способов оплаты, которые
поддерживают оформление частичного возврата, приведены в
документации.
ПримечаниеВы можете использовать этот метод API в тестовом окружении (sandbox-режиме). Для этого передайте в запросе данные тестового платежа. Подробную информацию об открытии тестового окружения и сценариях тестирования читайте в инструкции.
ВниманиеЭтот метод API не включает в себя path-параметр project_id, поэтому для авторизации вам необходимо использовать ключ API, который действует во всех проектах.
### Возврат платежа
- [PUT /merchants/{merchant_id}/reports/transactions/{transaction_id}/refund](https://developers.xsolla.com/ru/api/pay-station/refund/request-refund.md): Отправка запроса на возврат платежа пользователю. Подробнее о процессе возврата
можно прочитать в инструкции.
ПримечаниеВы можете использовать этот метод API в тестовом окружении (sandbox-режиме). Для этого передайте в запросе данные тестового платежа. Подробную информацию об открытии тестового окружения и сценариях тестирования читайте в инструкции.
ВниманиеЭтот метод API не включает в себя path-параметр project_id, поэтому для авторизации вам необходимо использовать ключ API, который действует во всех проектах.
## Тестирование
### Возврат платежа (chargeback)
- [POST /merchants/{merchant_id}/projects/{project_id}/payments/{transaction_id}/chargeback](https://developers.xsolla.com/ru/api/pay-station/testing/request-chargeback.md): Отправка запроса на отмену платежа (chargeback) в тестовом окружении:
- Чтобы получить доступ к тестовому окружению, передайте параметр
"mode":"sandbox" при получении токена.
- Тестовый платеж должен быть совершен в проекте, который вы используете для
тестирования.
- Транзакция не должна быть в статусах refunded, cancelled.
- Ваша роль в Личном кабинете должна быть как минимум Финансовый менеджер.
(Вы можете найти эту информацию в разделе Настройки компании >
Пользователи.)
- Подробную информацию об этом сценарии тестирования читайте в инструкции.
ПримечаниеО других сценариях тестирования читайте в документации.