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

Введение

API каталога позволяет настраивать каталог внутриигровых товаров на стороне Xsolla и отображать каталог пользователям в вашем игровом магазине.

API позволяет вам управлять такими сущностями каталога, как:

  • Виртуальные предметы — внутриигровые предметы, например оружие, скины, бустеры.
  • Виртуальная валюта — виртуальные деньги, которые используются для приобретения виртуальных товаров. Пакеты виртуальной валюты — предустановленные наборы виртуальной валюты.
  • Бандлы — комбинированные наборы виртуальных предметов, валюты или игровых ключей, продаваемые как единый артикул.
  • Игровые ключи — ключи для игр и DLC, распространяемые через такие платформы, как Steam, или других DRM-провайдеров.
  • Группы — логические группировки для организации и сортировки товаров в каталоге.

Методы API

Методы API делятся на следующие группы:

  • Admin — методы для создания, обновления, удаления и настройки товаров и групп каталога. Для вызова требуется базовая HTTP-аутентификация с использованием учетных данных Личного кабинета. Не предназначены для построения витрин для конечных пользователей.
  • Catalog — методы для получения товаров и построения витрин для конечных пользователей. Поддерживают опциональную аутентификацию с использованием JWT пользователя для возврата персонализированных данных, таких как пользовательские лимиты и активные промоакции.
Скачать описание OpenAPI
Языки
Серверы
https://store.xsolla.com/api/
Mock server
https://xsolla.redocly.app/_mock/ru/api/catalog/
Операции
Операции
Операции
Операции
Операции
Операции
Операции
Операции

Корзина (на стороне клиента)

Операции

Корзина (на стороне сервера)

Операции

Оплата (на стороне клиента)

Операции

Создание заказа со всеми товарами из определенной корзиныClient-side

Запрос

Используется для интеграции клиент-сервер. Создает заказ со всеми товарами из конкретной корзины и генерирует для него токен оплаты. Созданный заказ получает статус заказа new.

IP-адрес клиента используется для определения страны пользователя, которая затем используется для применения соответствующей валюты и доступных способов оплаты заказа.

Чтобы открыть платежный интерфейс в новом окне, воспользуйтесь следующей ссылкой: https://secure.xsolla.com/paystation4/?token={token}, где {token} — полученный токен.

Для целей тестирования используйте этот URL-адрес: https://sandbox-secure.xsolla.com/paystation4/?token={token}.

Примечание

Поскольку этот метод использует IP-адрес для определения страны пользователя и выбора валюты для заказа, важно использовать этот метод только на стороне клиента, а не на стороне сервера. Использование этого метода на стороне сервера может привести к неправильному определению валюты и повлиять на способы оплаты в Pay Station.
Безопасность
AuthForCart
Путь
project_idintegerобязательный

ID проекта. Вы можете найти этот параметр в Личном кабинете рядом с названием проекта.

Пример: 44056
cart_idstringобязательный

ID корзины.

Пример: custom_id
Телоapplication/json
currencystring

Валюта, в которой указана стоимость заказа. Трехбуквенный код валюты в соответствии с ISO 4217. Подробную информацию о валютах, поддерживаемых Xsolla, смотрите в документации.

custom_parametersobject[ 1 .. 200 ] properties

Дополнительные пользовательские параметры проекта.

localestring

Язык ответа.

sandboxboolean

Создает заказ в тестовом окружении. Эта возможность доступна для пользователей, указанных в списке пользователей компании.

По умолчанию false
settingsobject

Параметры для настройки процесса оплаты и платежного интерфейса для пользователя.

curl -i -X POST \
  https://store.xsolla.com/api/v2/project/44056/payment/cart/custom_id \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "custom_parameters": {
      "character_id": "ingameUsername"
    },
    "sandbox": true,
    "settings": {
      "ui": {
        "desktop": {
          "header": {
            "close_button": false,
            "is_visible": true,
            "type": "normal",
            "visible_logo": true,
            "visible_name": true,
            "visible_purchase": true
          }
        },
        "theme": "63295a9a2e47fab76f7708e1"
      }
    }
  }'

Ответы

Заказ успешно создан.

Телоapplication/json
order_idinteger

ID заказа.

tokenstring

Платежный токен.

Ответ
application/json
{ "order_id": 641, "token": "f4puMEFFDZcx9nv5HoNHIkPe9qghvBQo" }

Создание заказа с указанным товаромClient-side

Запрос

Используется для интеграции клиент-сервер. Создает заказ с указанным товаром и генерирует для него токен оплаты. Созданный заказ получает статус заказа new.

IP-адрес клиента используется для определения страны пользователя, которая затем используется для применения соответствующей валюты и доступных способов оплаты заказа.

Чтобы открыть платежный интерфейс в новом окне, воспользуйтесь следующей ссылкой: https://secure.xsolla.com/paystation4/?token={token}, где {token} — полученный токен.

Для целей тестирования используйте этот URL-адрес: https://sandbox-secure.xsolla.com/paystation4/?token={token}.

Примечание

Поскольку этот метод использует IP-адрес для определения страны пользователя и выбора валюты для заказа, важно использовать этот метод только на стороне клиента, а не на стороне сервера. Использование этого метода на стороне сервера может привести к неправильному определению валюты и повлиять на способы оплаты в Pay Station.
Безопасность
XsollaLoginUserJWT
Путь
project_idintegerобязательный

ID проекта. Вы можете найти этот параметр в Личном кабинете рядом с названием проекта.

Пример: 44056
item_skustringобязательный

Артикул товара.

Пример: booster_mega_1
Телоapplication/json
currencystring

Валюта, в которой указана стоимость заказа. Трехбуквенный код валюты в соответствии с ISO 4217. Подробную информацию о валютах, поддерживаемых Xsolla, смотрите в документации.

custom_parametersobject[ 1 .. 200 ] properties

Дополнительные пользовательские параметры проекта.

localestring

Язык ответа.

promo_codestring

Погашает промокод при оплате.

quantityinteger>= 1

Количество товаров.

По умолчанию 1
sandboxboolean

Создает заказ в тестовом окружении. Эта возможность доступна для пользователей, указанных в списке пользователей компании.

По умолчанию false
settingsobject

Параметры для настройки процесса оплаты и платежного интерфейса для пользователя.

curl -i -X POST \
  https://store.xsolla.com/api/v2/project/44056/payment/item/booster_mega_1 \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "custom_parameters": {
      "character_id": "ingameUsername"
    },
    "promo_code": "discount_code",
    "quantity": 5,
    "sandbox": true,
    "settings": {
      "ui": {
        "desktop": {
          "header": {
            "close_button": false,
            "is_visible": true,
            "type": "normal",
            "visible_logo": true,
            "visible_name": true,
            "visible_purchase": true
          }
        },
        "theme": "63295a9a2e47fab76f7708e1"
      }
    }
  }'

Ответы

Заказ успешно создан.

Телоapplication/json
order_idinteger

ID заказа.

tokenstring

Платежный токен.

Ответ
application/json
{ "order_id": 641, "token": "f4puMEFFDZcx9nv5HoNHIkPe9qghvBQo" }

Оплата (на стороне сервера)

Операции
Операции
Операции
Операции
Операции
Операции
Операции
Операции

Catalog

Данный API позволяет получать продаваемые товары любого вида или конкретный товар.

Операции
Операции
Операции