Whether to show the header in the payment UI.
Subscriptions API (2.0)
- Версия: 2.0
- Серверы:
https://api.xsolla.com/merchant/v2/
Этот справочник API описывает методы для управления подписками, купонами и акциями. Подробная информация о продукте Subscriptions приведена в руководстве по продукту и глоссарии.
Запрос
Вы можете создать токен с произвольными пользовательскими параметрами. Вы отправляете эти параметры при получении токена и получаете их обратно после успешной оплаты. Токен может содержать только параметры, описанные в этом документе или предварительно определенные вами.
Если какой-либо параметр отправлен в неправильном формате или имеет неправильный тип, токен выдан не будет. Вы получите HTTP-код 422 с описанием ошибки в JSON-формате. В extended_message вы получите информацию о том, какие именно параметры были отправлены неправильно.
Внимание
Этот метод API не включает в себя path-параметр project_id, поэтому для авторизации вам необходимо использовать ключ API, который действует во всех проектах.
Вы можете передавать в токене в объекте custom_parameters дополнительные параметры, которые могут использоваться для настройки антифрод-фильтров. Рекомендуемые параметры приведены в раскрывающемся списке. Подробнее в документации по продукту Pay Station.
Дата последнего посещения согласно стандарту ISO 8601.
Использует ли игрок дополнительные способы защиты аккаунта.
Дата последней смены пароля согласно стандарту ISO 8601.
Дата регистрации аккаунта согласно стандарту ISO 8601.
Период времени, который пользователь проводит в игре, согласно стандарту ISO 8601.
Количество внутриигровых событий, в которых участвовал игрок.
Суммарная стоимость инвентаря во внутриигровой валюте.
Объект с информацией о заказе.
Объект с информацией о заказе.
Валюта заказа. Используется трехбуквенное обозначение валюты согласно стандарту ISO 4217.
Объект с данными о подписке.
Массив с данными о планах подписок. Только планы из этого списка будут показаны в платежном интерфейсе.
Валюта рекуррентного плана в заказе, на основе которой будут сделаны все расчеты.
Информация о подаренной подписке.
Отправлен ли подарок анонимно. Если значение true, имя отправителя будет скрыто в email-уведомлении. По умолчанию false.
Email-адрес получателя.
Тип операции, применяемой к плану подписки пользователя. Чтобы изменить план подписки, передайте в параметре значение change_plan. В параметре purchase.subscription.plan_id необходимо передать ID нового плана подписки.
Внешний ID плана подписки. Вы можете найти этот параметр в Личном кабинете в разделе Subscriptions > Планы подписки.
Объект, содержащий настройки проекта.
Предпочтительная валюта платежа. Используется трехбуквенное обозначение валюты согласно стандарту ISO 4217.
Идентификатор транзакции в игре. Должен быть уникальным для каждого платежа пользователя.
Язык интерфейса. Используется двухбуквенное обозначение (в нижнем регистре).
Передайте значение sandbox, чтобы провести тестовые платежи. Обратите внимание, что URL для страницы оплаты будет https://sandbox-secure.xsolla.com.
Виджет оплаты. Принимает значения paybycash или giftcard. При передаче этого параметра пользователь перенаправляется на виджет Pay with Cash или Gift Cards.
Game’s Xsolla ID. Can be found in Publisher Account.
Настройки политики редиректа.
Перенаправлять ли пользователя автоматически со страницы статуса платежа.
Задержка (в секундах), после которой пользователь автоматически перенаправляется на return URL.
Действие, которое совершает платежный интерфейс, когда пользователь закрывает окно платежного интерфейса или нажимает кнопку Back to the Game. Может принимать значения redirect (по умолчанию) и postmessage. Если указано значение redirect, пользователь перенаправляется на URL-адрес, указанный в токене или в Личном кабинете. Если указано значение postmessage, при закрытии окна платежного интерфейса отправляется событие close, при нажатии Back to the Game — событие return.
Статус платежа, при котором пользователь перенаправляется на return URL. Принимает значение none, successful, successful_or_canсeled или any.
Пользователь будет перенаправлен на данную страницу после совершения платежа. Параметры user_id, foreigninvoice, invoice_id и status будут автоматически добавлены к ссылке.
Объект с настройками интерфейса.
Объект с данными настройки пунктов меню.
Объект с данными настройки меню подписок.
Объект с данными настройки меню виртуальной валюты.
Возможность ввода произвольного количества виртуальной валюты в интерфейсе оплаты.
Должна ли вкладка отображаться в меню.
Объект с данными настройки меню предметов.
Должна ли вкладка отображаться в меню.
Группа, которая будет выбрана при открытии вкладки.
Объект с данными настроек для desktop-версии.
Объект с настройками хедера.
Показывать ли кнопку Закрыть в настольной версии платежного интерфейса. Нажатие на кнопку закрывает платежный интерфейс и перенаправляет пользователя на адрес, указанный в параметре settings.return_url. false по умолчанию.
Внешний вид хедера. Может принимать значения compact (название игры и ID пользователя не будут показываться в хедере) или normal.
Если значение true, то логотип будет отображаться в хедере (необходимо сначала прислать файл с логотипом персональному менеджеру проекта).
Объект с данными настройки списка подписок.
Здесь вы можете передать текст про подписки. Текст появится перед списком рекуррентных планов в интерфейсе оплаты.
Если значение true и если локальная валюта пользователя отличается от базовой валюты плана, пользователь будет видеть две цены: цену в локальной валюте и цену в базовой валюте плана.
Объект с данными настройки списка пакетов виртуальной валюты.
Если значение true, то цена за предмет будет показана внутри кнопки. Если false, то цена будет слева от кнопки. false по умолчанию.
Объект с данными настройки списка предметов.
Если значение true, то цена за предмет будет показана внутри кнопки. Если false, то цена будет слева от кнопки. false по умолчанию.
Шаблон списка. Принимает значения list (по умолчанию) или grid.
Вывод списка групп виртуальных предметов либо в виде вертикального меню, либо над окном в виде горизонтального меню. Принимает значения horizontal_navigation или vertical_navigation (по умолчанию).
Отключение перехода по внешним ссылкам, по умолчанию true. При нажатии на внешнюю ссылку отправляется событие external-link-open с помощью механизма postMessage. В параметре url передается адрес, по которому выполняется переход.
Платежный интерфейс в режиме Личного кабинета. Принимает значение user_account. Хедер содержит только навигационное меню Личного кабинета; исключается возможность выбора предмета и оплата покупки; режим Личного кабинета доступен только в desktop-режиме.
Размер платежного интерфейса. В зависимости от требуемых размеров платежного интерфейса, параметр может принимать следующие значения:
- small: Наименьший размер платежного интерфейса. Используется в случаях, когда размеры окна строго ограничены (размер: 620 x 630)
- medium: Рекомендуемый размер платежного интерфейса. Оптимален при открытии в lightbox (размер: 740 x 760)
- large: желательно открывать в новом окне/вкладке (размер: 820 x 840)
Внешний вид интерфейса оплаты. Может принимать значения default (по умолчанию) или default_dark.
Объект с данными об аккаунте пользователя.
Страница История пользователя.
Страница Мой аккаунт.
Страница Сохраненные платежные аккаунты.
Объект с информацией о пользователе.
Объект с данными об атрибутах пользователя, необходимых для фильтрации списка предметов. Параметры передаются в json хэше парами ключ-значение.
Может ли пользователь изменить страну на странице оплаты. Если в токене передан параметр country.value, значение по умолчанию — false.
Используется двухбуквенное обозначение страны согласно стандарту ISO 3166-1 alpha-2.
Параметр user.email используется при построении моделей антифрода и положительно влияет на конверсию платежей. Передача параметра является обязательным требованием Xsolla и платежных систем. Если параметр не передан в запросе, на платежной форме появляется обязательное поле для ввода email-адреса. Пользователь получает чек о покупке на email-адрес, который был передан в параметре или указан в платежной форме.
Email пользователя. Должен быть валидным в соответствии с протоколом RFC 822.
Объект с реквизитами юридического лица.
Страна регистрации. Используется двухбуквенное обозначение страны согласно стандарту ISO 3166-1 alpha-2.
Параметр позволяет однозначно идентифицировать пользователя, а также, в отличие от user ID, известен пользователю (адрес электронной почты, никнейм, и т. д.). Параметр может использоваться при оплате покупки вне игрового магазина (например, кнопка игры в терминалах оплаты).
Объект с данными о характеристиках трафика.
Название кампании. В данный параметр следует указывать транслитерированное или переведенное на английский язык название кампании.
Ключевое слово кампании. При использовании этого параметра в статистике будут собираться данные по тем ключевым словам, которые используются для таргетинга вашей рекламной кампании (а не по поисковым запросам). В Google Analytics содержимое метки utm_term попадает в единый отчет с поисковыми запросами.
- https://api.xsolla.com/merchant/v2/merchants/{merchant_id}/token
- Mock serverhttps://xsolla.redocly.app/_mock/ru/api/subscriptions/merchants/{merchant_id}/token
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
-u <username>:<password> \
'https://xsolla.redocly.app/_mock/ru/api/subscriptions/merchants/{merchant_id}/token' \
-H 'Content-Type: application/json' \
-d '{
"purchase": {
"checkout": {
"amount": 10,
"currency": "USD"
},
"subscription": {
"gift": {
"email": "recipient_email@email.com",
"recipient": "test_recipient_v1"
}
}
},
"settings": {
"currency": "USD",
"language": "en",
"project_id": 16184,
"ui": {
"components": {
"virtual_currency": {
"custom_amount": true
}
},
"desktop": {
"virtual_item_list": {
"button_with_price": true,
"layout": "list"
}
},
"size": "medium"
}
},
"user": {
"age": 19,
"country": {
"allow_modify": true,
"value": "US"
},
"email": {
"value": "john.smith@mail.com"
},
"id": {
"value": "user_2"
},
"name": {
"value": "John Smith"
}
}
}'{ "token": "eop57k1boA7nnYPtewZ6KEXJyJADEwRT" }