Частые вопросы

Если вы не нашли ответ здесь, мы с радостью поможем вам через другие каналы:

  • LiveChat
  • E-mail (integration@xsolla.com)
  • Ваш аккаунт-менеджер
  • Специалист по интеграции в Basecamp

Интеграция

В. Как открыть платежный интерфейс внутри iframe?

О. Мы рекомендуем открывать платежный интерфейс в lightbox c помощью скрипта Pay Station Embed. При использовании данного способа вы получаете следующие возможности:

  • Автоматическое определение размера платежного интерфейса и типа устройства (desktop или mobile)
  • Автоматическая отправка событий от платежного интерфейса
  • Смена оформления.

Если вы хотите открывать платежный интерфейс внутри iframe, необходимо:

  • Реализовать определение типа устройства (desktop или mobile) и передачу значения в токене в параметре settings.ui.version.
  • Реализовать механизм postMessage для получения событий от платежного интерфейса.
  • Получить токен.
  • Передать в токене размер платежного интерфейса:

Размер платежного интерфейса Ширина iframe
large (используется по умолчанию) 670px - 850px
medium 590px - 740px
small 510px - 630px

Для открытия платежного интерфейса внутри iframe используется ссылка https://secure.xsolla.com/paystation2/?access_token=ACCESS_TOKEN, где ACCESS_TOKEN — это токен платежного интерфейса.

В. В каких браузерах работают платежный интерфейс и Личный кабинет Иксолла?

О. Корректная работа платежного интерфейса и Личного кабинета гарантируется в следующих браузерах:

  • Google Chrome 49 и выше
  • Mozilla Firefox 45 и выше
  • Opera 36 и выше
  • Internet Explorer 11
  • Microsoft Edge 12 и выше
  • Safari 9 и выше
  • Android Browser 49 и выше

В. Какие IP-адреса необходимо добавить в белый список для настройки оповещений?

О. Вы должны принимать и обрабатывать оповещения со следующих IP-адресов: 185.30.20.0/24, 185.30.21.0/24.

В. Как интегрировать продукты Партнерская сеть/Магазин/Авторизация и другие новые или дополнительные продукты Иксоллы?

О. Чтобы интегрировать продукты Иксоллы, напишите нам на integration@xsolla.com, и мы обязательно поможем.

В. Как добавить к методам оплаты paysafecard?

О. Чтобы добавить новый метод оплаты, напишите нам на integration@xsolla.com.

В. У вас есть SDK под Node.JS/C#.NET/Ruby/Java/ASP и т.п.?

О. Сейчас у нас есть SDK под PHP и Android. Но вы можете создать собственный SDK под любой язык/платформу, где можно отправлять HTTPS-запросы.

В. Почему PHP-библиотека не работает на нашем сайте?

О. Убедитесь, что вы установили все необходимые файлы и верно указали все относительные пути. Более подробные инструкции по установке есть в нашем GitHub-репозитории.

Проверка существования пользователя

В. Что такое User ID? Как нам валидировать пользователей?

О. User ID — это способ идентифицировать пользователя в игре. Вы можете хранить ID пользователей в базе данных. Если используется неверный User ID, вы должны сгенерировать исключение. Примеры пользовательской валидации можно найти в нашем GitHub-репозитории.

В. Какие данные надо возвращать после валидации? Например, что нужно вернуть, если валидация прошла успешна? И если нет?

О. При успешной валидации вы должны вернуть HTTP-код 200. В противном случае — код 400 с кодом ошибки INVALID_USER.

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

В. Как запустить модули, которые я включил в Личном кабинете?

О. Перед запуском необходимо настроить и протестировать модули. Подробную инструкцию вы найдете в руководствах по интеграции. Если возникла проблема с получением оповещений (webhooks), проверьте, правильно ли установлен webhook сервер. Если проблему решить не удалось, отправьте запрос на адрес integration@xsolla.com.

В. Нужно ли создавать отдельные проекты для каждой среды - qa, staging, production?

О. Мы рекомендуем использовать для тестирования отдельные проекты, чтобы изменения не затрагивали production.

В. В чем разница между секретным ключом, ключом проекта и ключом API?

О. Секретный ключ и ключ проекта — это одно и то же. Он используется для формирования цифровой подписи, необходимой для проведения платежей. Мы конкатенируем JSON-тело запроса с этим ключом, а затем хешируем результат при помощи SHA-1. Ключ API един для всех проектов вашего аккаунта. Он используется для запросов к серверу Иксоллы. Ключ API должен храниться на вашем сервере и никогда — в ваших бинарных файлах или на фронтенде.

В. В чем разница между URL оповещений и URL возврата?

О. URL оповещений — это адрес вашего вебхук-сервера. URL возврата — это адрес, на который попадает пользователь после завершения платежа.

В. Где найти ID проекта/продавца/паблишера?

О. ID проекта — это число рядом с названием проекта в вашем Личном кабинете. Его можно определить по URL: https://publisher.xsolla.com/{merchant_id}/projects/{project_id}/. ID продавца и ID паблишера — это по сути одно и то же. Его также можно определить по URL: https://publisher.xsolla.com/{merchant_id}/

В. Где мне найти ключ API?

О. Чтобы создать ключ API, перейдите в Личный кабинет > Настройки компании > Ключ API.

В. Как добавить в Личный кабинет других сотрудников компании?

О. Добавить пользователей можно через Личный кабинет > Настройки компании > Пользователи.

В. Мы издаем игры для мобильных устройств. Что написать в поле Сайт в настройках проекта?

О. Укажите URL лендинга игры или вашей компании.

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

В. Где найти ID проекта/продавца и секретный/API-ключ для проектов Buycraft?

О. См. руководство.

В. Что указать как Название игры в разделе Информация о соглашении в настройках Buycraft?

О. Укажите название вашего сервера.

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

В. Необходимо ли для оповещений использовать HTTPS?

О. Да — API Иксоллы использует HTTP Basic Authentication.

В. Почему ваше оповещение не пришло на URL для оповещений?

О. Убедитесь, что вы передаете все необходимые файлы, и что ваш вебхук-сервер поддерживает необходимые виды вебхук-запросов.

В. Почему оповещения не приходят на мое мобильное приложение?

О. Вебхуки отправляются только на один URL-адрес — тот, что указан в настройках проекта. Будучи сервер-серверными, они не могут уходить сразу на несколько URL. Если вы хотите получать оповещения в вашей игре, сайте или мобильном приложении, вам нужно настроить рассыльщик на собственном сервере. Он будет пересылать данные между Иксоллой и игрой.

Кастомизация

В. Можно ли изменить оформление платежного интерфейса?

О. Вы можете изменить стандартную тему на тёмную, передав в токене параметр settings.ui.theme = default_dark. Тёмная тема позволяет установить фоновое изображение или изменить цвет фона (пример). Чтобы изменить другие настройки, обратитесь к аккаунт-менеджеру проекта.

В. Можно ли изменить оформление писем, отправляемых пользователю?

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

Тестирование

В. Могу ли я воспользоваться тестовой картой для проверки платежа?

О. Да, в тестовом окружении вы можете использовать одну из тестовых карт.

В. Возможно ли протестировать платеж через PayPal в тестовом окружении, чтобы убедиться, что он корректно работает?

О. В данный момент тестирование платежа PayPal в тестовом окружении не реализовано.

В. Как протестировать возврат платежа?

О. Возврат платежа можно выполнить с помощью метода API или через Личный кабинет в разделе Поддержка > Поиск транзакций.

В. Что такое Номер заявки в Иксолле и Номер заявки на вкладке Тестирование?

О. Номер заявки в Иксолле — ID транзакции на стороне Иксоллы. Номер заявки — это необязательный ID транзакции на стороне вашей игры. При тестировании можно указать любое значение.

В. Почему у нас не получается пройти тестирование для проекта Buycraft?

О. Партнеры по Buycraft будут получать ответ INVALID_SIGNATURE, если в аккаунте Buycraft введены неверные ключ API, ID продавца, ID проекта или секретный ключ.

Платежи

В. Как проверить валидность запроса на оплату, полученного в оповещении?

О. Проверьте, существует ли указанный ID пользователя в вашем проекте, и отправьте код 200 для подтверждения платежа.

В. Могу ли я проверить, какой платежный аккаунт использовался последним?

О. В данный момент такая проверка не реализована.

В. Возможно ли сразу перенаправить пользователя на определенный метод оплаты?

О. При открытии магазина вы можете передавать id способа оплаты в параметре settings.payment_method. В этом случае пользователь сразу перенаправляется на платежную форму выбранного способа оплаты. Список id способов оплаты можно получить в Личном кабинете в разделе Способы оплаты или с помощью метода Список способов оплаты.

В. Возможно ли автоматическое перенаправление на страницу успешной/ошибочной транзакции сразу после обработки платежа в зависимости от результата?

О. Да, вы можете перейти в настройки продукта Платежи в Личном кабинете и задать условия редиректа.

В. В нашем биллинге номеру заказа присваивается order_id. Можно ли использовать order_id вместо user_id при получении токена?

О. Вы можете передавать значение order_id в параметре external_id. Чтобы включить данную возможность, перейдите в настройки платежного интерфейса и установите переключатель External ID в положение Вкл.

В. Можно ли переопределять URL-адрес оповещений для каждой транзакции?

О. URL-адрес оповещений указывается в настройках Личного кабинета и определяется для всех транзакций.

В. Отправляете ли вы данные о неуспешных транзакциях?

О. Мы отправляем оповещение только в случае успешной покупки. Если вы получили уведомление о платеже, транзакция прошла успешно.

В. Какая платежная опция позволяет добавлять VAT к общей сумме платежа?

О. Настройки покрытия VAT выполняются на стороне Иксоллы. Если вы хотите удерживать VAT с пользователя, а не платить самостоятельно, как это настроено сейчас, обратитесь к аккаунт-менеджеру проекта для изменения настроек.

В. Что такое PID?

О. PID — идентификатор платежной системы в Иксолле.

В. Как я могу обновить баланс виртуальной валюты пользователя?

О. Вы можете использовать API метод Изменение баланса.

В. Внешний ID — это какой-то кастомный идентификатор нашей игры/платформы? Нужно ли создавать новый внешний ID для каждой транзакции?

О. Внешний ID — это идентификатор инвойса на стороне ваших систем. Каждому платежу соответствует уникальный external_id, поэтому вы должны генерировать его заново для каждого платежа пользователя.

В. Какое значение установить для команды setExternalPaymentId?

О. Укажите то же значение, что и для external_id, если он у вас есть.

В. Как установить purchase.description.value через PHP SDK?

О. Описание покупки используется в платежном интерфейсе и квитанциях. Вы можете установить значение в токене.

В. Что такое прямые аккаунты?

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

Иксолла выступает Поставщиком технических услуг и взимает сниженный процент Revenue share: 1.25% + $0.10. Вы будете иметь полноценный доступ ко всем решениям Иксоллы, но при этом обязуетесь самостоятельно:

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

Например, если вы уже сотрудничаете с PayPal и хотите проводить платежи напрямую, вы можете подключить прямой аккаунт. Платежный интерфейс при этом не изменится — изменится только процесс перевода выплат. После обработки платежа средства, поступившие от конечного пользователя, переводятся на ваш аккаунт PayPal. В данном случае выплаты производятся без участия Иксоллы.

В. Какие способы выплат поддерживаются для проектов Buycraft?

О. Buycraft-проекты могут получать деньги через PayPal и банковский перевод.

Купоны

В. В чем отличие между отдельными и акционными купонами?

О. Отдельные купоны можно использовать, чтобы давать пользователям бесплатные предметы. Акционные купоны позволяют предоставлять пользователям скидки и бонусы при покупке.

Подписки

В. Что такое product_id в Подписках?

О. Вы можете использовать этот параметр, если у пользователя несколько платных подписок на разные продукты. Тогда product_id поможет отличать их друг от друга.

Ошибки

В. При открытии платежного интерфейса выдается следующая ошибка: 0004-0008. Что это значит?

О. Это означает, что вы используете неверный URL в тестовом окружении. Если вы хотите совершить реальный платеж, используйте URL secure.xsolla.com. Если платеж тестовый, используйте URL sandbox-secure.xsolla.com. Подробная информация о возможных ошибках доступна в справочнике API.

В. PHP SDK выдает ошибку INVALID_CLIENT_IP. Что делать?

О. Для решения проблемы необходимо добавить обратный IP-адрес вашего прокси-сервера на webhook сервер.

В. Что означают ошибки 2205 и 2207 (user ID error)?

О. Требуется передать корректный ID пользователя. Убедитесь, что вы используете User ID из вашей базы данных.

В. Что означает ошибка 1000-0003?

О. Вам нужно включить соответствующий модуль для проекта. Если речь идет о модуле Чекаут, возможно, вы не указали параметр покупки.

В. Что означает ошибка 0002-0004?

О. Вам необходимо подписать соглашение с нами, чтобы начать получать выплаты. Пожалуйста, свяжитесь с аккаунт-менеджером или напишите на onboarding@xsolla.com.

В. Почему в вебхук-запросе нет заголовка Authorization?

О. Вам надо поправить файлы .htaccess или httpd.conf в Apache. Подробную инструкцию можно найти в документации SDK.

В. Мне кажется, я не могут получить строку токена из-за проблем с SSL. Обязательна ли SSL-проверка в вашем интерфейсе?

О. По умолчанию, мы включаем SSL-проверку сертификата и используем сертификаты, предоставленные операционной системой. Подробнее о решении проблем с SSL можно прочитать в документации SDK.