Получение токена
Note
Реализуйте получение токена, если на вашем сайте покупку будут осуществлять авторизованные пользователи. Если вы планируете продажи неавторизованным пользователям, подключите продукт Buy Button.
Для интеграции платежного интерфейса необходимо получить токен. Токен — это строка, в которой содержится информация об игре, пользователе и параметрах покупки.
API Иксоллы использует базовую HTTP-аутентификацию. Укажите свой ID продавца в качестве username и ключ API в качестве password.
Чтобы найти эти данные:
- Зайдите в Личный кабинет и перейдите в Настройки компании.
- На вкладке Компания скопируйте ID продавца.
- На вкладке Ключ API скопируйте Kлюч API.
Copy
- curl
https://api.xsolla.com/merchant/v2/merchants/{merchant_id}/token
В HTTP POST запросе вы можете указать параметры, которые нужно передать на платежный интерфейс. Передайте информацию о пользователе в параметрах
user.id
, user.name
и user.email
метода Получение токена.Note
Для параметра
user.id
используйте идентификатор, который пользователь сможет запомнить и в дальнейшем использовать самостоятельно вне игры (например, при пополнении игрового баланса с помощью push-платежей).Запрос и ответ передаются в формате JSON.
Ниже указан пример получения токена на PHP с использованием PHP SDK. Если вы разрабатываете на другом языке, можно использовать пример CURL (нажмите на кнопку CURL).
Copy
php
- php
- curl
<?php
use Xsolla\SDK\API\XsollaClient;
use Xsolla\SDK\API\PaymentUI\TokenRequest;
$tokenRequest = new TokenRequest($projectId, $userId);
$tokenRequest->setUserEmail('email@example.com')
->setExternalPaymentId('12345')
->setSandboxMode(true)
->setUserName('USER_NAME');
$xsollaClient = XsollaClient::factory(array(
'merchant_id' => MERCHANT_ID,
'api_key' => API_KEY
));
$token = $xsollaClient->createPaymentUITokenFromRequest($tokenRequest);
curl -v https://api.xsolla.com/merchant/v2/merchants/{merchant_id}/token \
-X POST \
-u your_merchant_id:merchant_api_key \
-H 'Content-Type:application/json' \
-H 'Accept: application/json' \
-d '
{
"user": {
"id": {
"value": "1234567"
},
"email": {
"value": "email@example.com"
}
},
"settings": {
"project_id": 14004,
"mode": "sandbox"
}
}'
Прогресс интеграции
Нашли опечатку или ошибку в тексте? Выделите ее и нажмите Ctrl+Enter.