Веб-магазин / Начисление покупок пользователю
 На главную

Веб-магазин

  • Настройка продажи в Веб-магазине с прямым пополнением

  • Настройка продажи в Веб-магазине с аутентификацией пользователя

  • Начисление покупок пользователю

    Реализуйте в вашем приложении начисление покупок пользователю, используя информацию от Иксоллы о состоянии транзакции. Вы можете получать информацию следующими способами:

    Запрос информации с помощью API

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

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

    Note
    Серверные методы используют базовую HTTP-аутентификацию.

    Note
    Клиентские методы используют серверную OAuth 2.0-аутентификацию.

    Базовая HTTP-аутентификация

    Запрос должен содержать заголовок Authorization: Basic <your_authorization_basic_key>, где <your_authorization_basic_key> — пара merchant_id:api_key, закодированная по стандарту Base64. Значения параметров вы можете найти в Личном кабинете:

    • merchant_id указан в разделе Настройки проекта > Вебхуки > ID продавца.
    • api_key указан в разделе Настройки компании > Ключ API.

    Серверная OAuth 2.0-аутентификация

    Запрос должен содержать заголовок Authorization: Bearer <user_JWT>, где <user_JWT> — JWT пользователя.

    Чтобы получить JWT пользователя:

    1. Создайте серверный OAuth 2.0-клиент:
      1. Откройте ваш проект в Личном кабинете. Перейдите в раздел Авторизация > ваш вариант авторизации и нажмите Настроить.
      2. В блоке Безопасность нажмите OAuth 2.0 аутентификация.
      3. Нажмите Добавить OAuth 2.0 и укажите:
        • Название клиента.
        • URI переадресации OAuth 2.0. Обязательное поле.
        • Тип аутентификации — серверный.
        • ID проекта.
      4. Нажмите Подключить. Сформированные ID клиента и секретный ключ понадобятся вам для дальнейшей интеграции.

    1. Получите серверный JWT. Для этого вызовите метод API Generate JWT, передав следующие параметры:
      • grant_type — тип JWT. Укажите значение client_credentials.
      • client_secret — секретный ключ серверного OAuth 2.0-клиента.
      • client_id — идентификатор серверного OAuth 2.0-клиента.

    Note
    Срок жизни серверного JWT — 59 минут.

    1. Получите JWT пользователя. Для этого вызовите метод API Auth by custom ID. Запрос должен содержать заголовок X-Server-Authorization: <server_JWT>, где <server_JWT> — серверный JWT, полученный на шаге 2.

    Получение информации с помощью вебхуков

    1. Настройте параметры для получения вебхуков:
      1. Откройте ваш проект в Личном кабинете.
      2. Нажмите Настройки проекта в боковом меню.
      3. Перейдите на вкладку Вебхуки.
      4. Установите переключатель Вебхуки в положение Вкл.
      5. В поле URL вебхука укажите URL-адрес, на который вы хотите получать вебхуки.
      6. Секретный ключ проекта для подписи вебхуков генерируется по умолчанию. Если вы хотите изменить его, нажмите значок обновления.
      7. Нажмите Сохранить настройки.

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

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

    • 204 HTTP-код без тела сообщения в случае успешного ответа.
    • 400 HTTP-код с описанием проблемы, если указанный пользователь не был найден или если передана недействительная подпись.

    Вы можете протестировать отправку вебхуков Успешный платеж и Возврат платежа в Личном кабинете в разделе Настройки проекта > Вебхуки > Магазин.

    При отсутствии реальных значений допускается ввод произвольных значений.

    Также протестировать отправку вебхуков можно при проверке процесса оплаты в тестовом или боевом окружении. Протестировать вебхук Возврат платежа можно только в боевом окружении.

    Прогресс интеграции
    Спасибо за обратную связь!
    Последнее обновление: 6 мая 2022

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

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