Перейти к содержимому

Введение

  • Версия: 2.0.0
  • Серверы:
    • https://api.xsolla.com/api

Pay Station позволяет вам монетизировать игру, предоставляя пользователям удобный интерфейс для оплаты покупок во внутриигровом магазине. Чтобы настроить открытие платежного интерфейса, следуйте инструкции.

В Pay Station API представлены следующие группы методов:

  • Токен — содержит метод для создания токена с любыми параметрами пользователя для дальнейшей обработки платежа через платежный интерфейс.
  • Токенизация — содержит методы для проведения безопасных платежей без открытия платежного интерфейса и непосредственного участия пользователя.
  • Отчеты — содержит методы для возвращения информации о транзакциях пользователя, а также создания отчетов и получения детализации выплат по валютам.
  • Возврат платежа — содержит методы для создания запросов на отмену платежа и на частичный возврат платежа.
  • Тестирование — содержит метод для тестирования процесса чарджбэка.

Подробные сведения о настройке платежного интерфейса приведены в руководстве по интеграции решения Payments.

Примечание

Вы также можете использовать раздел Xsolla Base API из коллекции Postman, чтобы протестировать методы, необходимые для интеграции.

Скачать описание OpenAPI
Языки
Серверы
https://api.xsolla.com/merchant/v2/
Mock server
https://xsolla.redocly.app/_mock/ru/api/pay-station/
Операции
Операции

Список сохраненных платежных аккаунтов

Запрос

Загрузка списка сохраненных платежных аккаунтов пользователя.

Примечание

Данный метод API в тестовом окружении (sandbox-режиме) работает только с тестовыми картами, у которых нет проверки 3-D Secure.

Безопасность
basicAuth
Путь
project_idintegerобязательный

ID проекта.

user_idstringобязательный

Уникальный ID пользователя в игре, который хранится на вашей стороне. Убедитесь, что указываете существующий ID пользователя. При возникновении ошибок изучите ответы на частые вопросы.

Запрос
modestring

Передайте значение sandbox, чтобы провести тестовые платежи. Для проведения реальных платежей уберите этот параметр.

curl -i -X GET \
  -u <username>:<password> \
  'https://api.xsolla.com/merchant/v2/projects/{project_id}/users/{user_id}/payment_accounts?mode=string'

Ответы

OK.

Телоapplication/json
Ответ
application/json
[ { "id": 4612345, "name": "PP_saved_account", "payment_system": {}, "type": "paypal" } ]

Удаление сохраненного платежного аккаунта

Запрос

Удаление сохраненного платежного аккаунта.

Примечание

Данный метод API в тестовом окружении (sandbox-режиме) работает только с тестовыми картами, у которых нет проверки 3-D Secure.

Примечание

Вы можете использовать этот метод API в тестовом окружении (sandbox-режиме). Для этого передайте в запросе данные тестового аккаунта. Подробную информацию об открытии тестового окружения и сценариях тестирования читайте в инструкции.

Безопасность
basicAuth
Путь
project_idintegerобязательный

ID проекта.

user_idstringобязательный

Уникальный ID пользователя в игре, который хранится на вашей стороне. Убедитесь, что указываете существующий ID пользователя. При возникновении ошибок изучите ответы на частые вопросы.

typestringобязательный

Тип платежного аккаунта.

Перечисление ЗначениеОписание
alipayplus_boost

Boost.

alipayplus_cn

Alipay.

alipayplus_dana

DANA.

alipayplus_gcash

GCash.

alipayplus_hk

Alipay (Гонконг).

alipayplus_kplus

K PLUS.

alipayplus_maya

Maya.

alipayplus_rabbitlinepay

Rabbit LINE pay.

alipayplus_tng

Touch 'n Go.

alipayplus_truemoney

TrueMoney Wallet.

account_idintegerобязательный

Идентификатор сохраненного платежного аккаунта в базе данных Xsolla.

curl -i -X DELETE \
  -u <username>:<password> \
  'https://api.xsolla.com/merchant/v2/projects/{project_id}/users/{user_id}/payment_accounts/{type}/{account_id}'

Ответы

No Content.

Оплата по сохраненному платежному аккаунту

Запрос

Оплата по сохраненному платежному аккаунту.

Примечание

Данный метод API в тестовом окружении (sandbox-режиме) работает только с тестовыми картами, у которых нет проверки 3-D Secure.

Внимание

Для корректной работы метода настройте время ожидания 2 минуты.

Безопасность
basicAuth
Путь
project_idintegerобязательный

ID проекта.

user_idstringобязательный

Уникальный ID пользователя в игре, который хранится на вашей стороне. Убедитесь, что указываете существующий ID пользователя. При возникновении ошибок изучите ответы на частые вопросы.

typestringобязательный

Тип платежного аккаунта.

Перечисление ЗначениеОписание
alipayplus_boost

Boost.

alipayplus_cn

Alipay.

alipayplus_dana

DANA.

alipayplus_gcash

GCash.

alipayplus_hk

Alipay (Гонконг).

alipayplus_kplus

K PLUS.

alipayplus_maya

Maya.

alipayplus_rabbitlinepay

Rabbit LINE pay.

alipayplus_tng

Touch 'n Go.

alipayplus_truemoney

TrueMoney Wallet.

account_idintegerобязательный

Идентификатор сохраненного платежного аккаунта в базе данных Xsolla.

Телоapplication/jsonобязательный
custom_parametersobject(custom_parameters)

Объект с параметрами для настройки антифрод-фильтров. Список параметров приведен ниже на этой странице. Чтобы добавить кастомные параметры, свяжитесь с вашим персональным менеджером или напишите на csm@xsolla.com.

custom_parameters.​active_datestring

Дата последнего посещения согласно стандарту ISO 8601.

custom_parameters.​additional_verificationboolean

Использует ли игрок дополнительные способы защиты аккаунта.

custom_parameters.​character_customizedboolean

Настраивал ли игрок персонажа.

custom_parameters.​chat_activityboolean

Пишет ли игрок в чате.

custom_parameters.​completed_tasksinteger

Количество выполненных заданий.

custom_parameters.​forum_activityboolean

Пишет ли игрок в форуме.

custom_parameters.​items_usedboolean

Использует ли игрок купленные в игре предметы.

custom_parameters.​karma_pointsinteger

Карма игрока.

custom_parameters.​last_change_password_datestring

Дата последней смены пароля согласно стандарту ISO 8601.

custom_parameters.​non_premium_currencynumber(float)

Сумма непремиальной валюты игрока.

custom_parameters.​notifications_enabledboolean

Подписался ли игрок на рассылку уведомлений.

custom_parameters.​profile_completedboolean

Добавил ли игрок дополнительную информацию в профиль.

custom_parameters.​profile_image_addedboolean

Загрузил ли игрок изображение профиля.

custom_parameters.​pvp_activityboolean

Участвует ли игрок в битвах PvP (Player(s) versus player(s); игрок против игрока).

custom_parameters.​registration_datestring

Дата регистрации аккаунта согласно стандарту ISO 8601.

custom_parameters.​session_timestring

Период времени, который пользователь проводит в игре, согласно стандарту ISO 8601.

custom_parameters.​social_networks_addedboolean

Подключил ли игрок профили в социальных сетях.

custom_parameters.​total_bansinteger

Количество банов игрока в чате/на форуме.

custom_parameters.​total_charactersinteger

Количество персонажей игрока.

custom_parameters.​total_clansinteger

Количество кланов, в которых состоит игрок.

custom_parameters.​total_friendsinteger

Количество друзей игрока.

custom_parameters.​total_game_eventsinteger

Количество внутриигровых событий, в которых участвовал игрок.

custom_parameters.​total_giftsinteger

Количество подарков, отправленных или полученных игроком.

custom_parameters.​total_hoursinteger

Общее количество часов, проведенных в игре.

custom_parameters.​total_inventory_valuenumber(float)

Суммарная стоимость инвентаря во внутриигровой валюте.

custom_parameters.​total_sumnumber(float)

Общая сумма платежей.

custom_parameters.​tutorial_completedboolean

Завершил ли игрок обучение в игре.

custom_parameters.​unlocked_achievementsinteger

Количество разблокированных достижений.

custom_parameters.​user_levelinteger

Уровень игрока, репутация или ранг.

custom_parameters.​win_rateinteger

Рейтинг побед игрока.

purchaseobject

Объект с информацией о заказе.

purchase.​checkoutobject

Объект с информацией о заказе.

purchase.​checkout.​amountnumber(float)

Сумма заказа.

purchase.​checkout.​currencystring

Валюта заказа. Используется трехбуквенное обозначение валюты согласно стандарту ISO 4217.

purchase.​descriptionobject
purchase.​description.​valuestring<= 4000 characters
purchase.​virtual_currencyobject

Объект с данными о виртуальной валюте.

purchase.​virtual_currency.​quantitynumber(float)

Количество виртуальной валюты в заказе.

settingsobject

Объект с данными о настройках.

settings.​currencystring(currency)

Предпочтительная валюта платежа. Используется трехбуквенное обозначение валюты согласно стандарту ISO 4217.

settings.​external_idstring(external_id)

ID транзакции в игре. Должен быть уникальным для каждого платежа пользователя. Изучите подробную информацию в документации.

settings.​mock_codeinteger(mock_code)

Код ошибки, которую вы хотите воспроизвести при тестировании оплаты через PayPal в тестовом окружении (sandbox-режиме). Работает корректно, только если передан параметр "mode":"sandbox".

Перечисление1002101510391046105710891201120318011803
settings.​modestring

Передайте значение sandbox, чтобы провести тестовые платежи. Для проведения реальных платежей этот параметр необходимо убрать.

userobject

Объект с информацией о пользователе.

user.​ipstringобязательный

IP адрес пользователя.

user.​legalobject(legal)

Объект с реквизитами юридического лица.

user.​legal.​addressstring

Полный юридический адрес.

user.​legal.​countrystring

Страна регистрации. Используется двухбуквенное обозначение страны согласно стандарту ISO 3166-1 alpha-2.

user.​legal.​namestring

Полное юридическое наименование.

user.​legal.​vat_idstring

Индивидуальный идентификатор налогоплательщика.

user.​namestring

Имя пользователя.

curl -i -X POST \
  -u <username>:<password> \
  'https://api.xsolla.com/merchant/v2/projects/{project_id}/users/{user_id}/payments/{type}/{account_id}' \
  -H 'Content-Type: application/json' \
  -d '{
    "purchase": {
      "description": {
        "value": "currency purchase"
      },
      "virtual_currency": {
        "quantity": 100
      }
    },
    "settings": {
      "currency": "USD",
      "external_id": "ext123",
      "mode": "sandbox"
    },
    "user": {
      "ip": "111.11.11.11",
      "legal": {
        "address": "17 Crown Street London SW2 0JW United Kingdom",
        "country": "GB",
        "name": "My Awesome Company",
        "vat_id": "GB111111111"
      },
      "name": "John Smith"
    }
  }'

Ответы

Created.

Телоapplication/json
transaction_idinteger
Ответ
application/json
{ "transaction_id": 123458390 }
Операции
Операции
Операции