Серверная интеграция

Этот тип интеграции подходит для партнеров, которые уже разработали игровую логику для авторизации, внутриигрового магазина и инвентаря игроков на своих серверах и хотят использовать платежный интерфейс Иксоллы. Необходимо получить Pay Station access token и настроить обработку оповещений.

При серверной интеграции реализуется следующая логика обработки платежа:

  1. Клиент отправляет на сервер приложения запрос для открытия платежного интерфейса.
  2. Сервер приложения отправляет на сервер Иксоллы сведения о валюте и размере платежа.
  3. Сервер Иксоллы возвращает токен со сведениями о покупке и параметрах платежного интерфейса.
  4. Сервер приложения отправляет полученный токен на клиент.
  5. Клиент открывает платежный интерфейс в браузере с помощью SDK.
  6. После оплаты покупки на сервер приложения приходит оповещение со статусом платежа.

Сервер Discord
Общайтесь с командой Иксоллы и разработчиками, использующими продукты Иксоллы.

Сценарий интеграции

Для интеграции продуктов Иксоллы с вашими серверами с помощью ассета Game Commerce:

  1. Установите ассет.
  2. Настройте проект в Личном кабинете.
  3. Настройте внутриигровой магазин и каталог товаров на вашем сервере.
  4. Настройте проект Unity.
  5. Получите токен.
  6. Откройте платежный интерфейс.
  7. Настройте оповещения.

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

Note
Данное руководство включает в себя минимальный набор настроек для быстрого запуска. Если у вас возникли вопросы по подключению, обратитесь к аккаунт-менеджеру проекта.

Установка ассета

  1. Скачайте Unity.
  2. Выберите персональную или профессиональную лицензию Unity в зависимости от ваших предпочтений.
  3. Создайте новый проект Unity.
  4. Загрузите ассет из Unity Asset Store или GitHub.
  5. Убедитесь, что для создания сборки игры используется компилятор Mono (только для standalone-сборок).

    1. В главном меню выберите пункт Edit > Project Settings.
    2. Перейдите в раздел Other Settings > Configuration.
    3. Убедитесь, что в поле Scripting Backend выбрано значение Mono.

После установки ассета вы можете запустить демосцену Xsollus из директории Assets > Xsolla > DemoCommon > Scene. Демосцена показывает возможности ассета и представляет собой возможный вариант реализации логики приложения.

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

Значения по умолчанию для демосцены Xsollus:

KeyValue
ID варианта авторизации026201e3-7e40-11ea-a85b-42010aa80004
ID проекта77640

Вы можете использовать демосцену двумя способами:

  • в качестве примера;
  • в качестве начальной версии вашей системы авторизации, инвентаря, внутриигрового магазина и т. д., чтобы получить быстрый результат и при необходимости расширить его возможности.

Чтобы использовать демосцену или ее части в своем приложении, добавьте ее в настройках сборки:

  1. Запустите сцену Xsollus из каталога Assets > Xsolla > DemoCommon > Scene.
  2. В главном меню выберите пункт File > Build settings и нажмите Add Open Scenes.

Настройка проекта в Личном кабинете

  1. Зарегистрируйтесь в Личном кабинете.
  2. Настройте проект, созданный автоматически после регистрации в Личном кабинете:
    1. В разделе Проекты выберите ваш проект и перейдите в Настройки проекта.
    2. На вкладке Общие настройки добавьте:
      • изображение (опционально);
      • языки проекта (английский установлен по умолчанию);
      • название проекта на всех добавленных языках;
      • сайт игры (опционально);
      • описание проекта (опционально).
    3. Нажмите Сохранить.

В процессе интеграции вам понадобятся следующие параметры:

  • ID продавца, который можно найти в разделе Настройки проекта > Оповещения.

  • Ключ API, который можно найти в разделе Настройки компании > Ключ API.

  • ID проекта, который можно найти в разделе Настройки проекта > ID проекта.

  • Секретный ключ проекта, который можно найти в разделе Настройки проекта > Оповещения.

Настройка проекта Unity

  1. Откройте ваш проект Unity.
  2. В главном меню выберите пункт Window > Xsolla > Edit Settings.
  3. Чтобы включить режим тестирования, в панели Inspector установите флажок Enable sandbox?.

  1. Разработайте интерфейс для системы входа, внутриигрового магазина и других пользовательских страниц вашего приложения. Вы можете создать собственное решение, следуя инструкциям Unity.
  2. Настройте обработку событий в соответствии с логикой вашего приложения с помощью методов SDK.

Получение токена

Для получения токена используйте метод API Create payment token by server. Ваш сервер должен отправлять на сервер Иксоллы запрос со следующими данными:

  • идентификатор пользователя, совершившего покупку;
  • сумма платежа;
  • валюта платежа;
  • сведения о покупке (опционально);
  • параметры платежного интерфейса (опционально).

Вы можете передавать сведения о покупке одним из следующих способов:

  • в виде списка предметов через параметр item;
  • в виде описания покупки через параметр description.

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

Note
Вы можете передавать дополнительные сведения с помощью параметра custom_parameters. Эти сведения будут также передаваться в настроенных оповещениях.

Открытие платежного интерфейса

Чтобы открыть платежный интерфейс, передайте полученный на предыдущем шаге токен в метод SDK OpenPurchaseByAccessToken.

Настройка оповещений

  1. Перейдите к вашему проекту в Личном кабинете.
  2. Перейдите в Настройки проекта > Оповещения, укажите URL оповещения и сгенерируйте секретный ключ проекта для подписи оповещений.

  1. Сохраните настройки.
  2. Реализуйте обработку следующих типов оповещений:

  1. Перейдите на вкладку Чекаут и нажмите Подключить.

  1. Протестируйте оповещения.

Note
Чтобы подтвердить получение оповещения, ваш сервер должен вернуть:
  • 204 HTTP код без тела сообщения в случае успешного ответа;
  • 400 HTTP код с описанием проблемы, если указанный пользователь не был найден или если передана недействительная подпись.
Механизм работы оповещений с примерами обработки подробно описан в справочнике API.

  1. Нажмите Платежи в боковом меню и перейдите в раздел Настройки.
  2. Установите переключатель Чекаут в положение Вкл.

  1. Нажмите Сохранить.

Тестирование процесса оплаты

После успешной настройки ассета вы можете проверить процесс оплаты. По умолчанию все платежи проводятся в sandbox-режиме. Вы можете использовать тестовую банковскую карту для имитации успешного процесса оплаты.

Для тестирования оплаты на реальных платежах:

  1. Убедитесь, что вы заключили договор с Иксоллой.
  2. В вашем проекте Unity снимите флажок Enable sandbox? в панели Inspector.
  3. В запросе на получение токена для параметра sandbox укажите значение false.

Была ли статья полезна?
Спасибо!
Что может сделать страницу еще лучше? Сообщение
Жаль, что так произошло
Расскажите, почему статья не была полезна. Сообщение
Спасибо за обратную связь!
Ваши мысли и идеи помогут нам улучшить ваш пользовательский опыт.
Оценить страницу
Оценить страницу
Что может сделать страницу еще лучше?

В другой раз

Спасибо за обратную связь!
Последнее обновление: 17 июня 2021

Нашли опечатку или ошибку в тексте? Выделите ее и нажмите Ctrl+Enter.

Сообщите о проблеме
Мы постоянно улучшаем качество нашей документации. Ваш отзыв поможет нам в этом.
Укажите email-адрес, чтобы мы могли связаться с вами
Спасибо за обратную связь!