Частые вопросы
- LiveChat
- Email (integration@xsolla.com)
- Ваш аккаунт-менеджер
- Специалист по интеграции в Basecamp
Интеграция
Как открыть платежный интерфейс внутри iframe?
Мы рекомендуем открывать платежный интерфейс в lightbox c помощью скрипта Pay Station Embed. При использовании данного способа вы получаете следующие возможности:
- Автоматическое определение размера платежного интерфейса и типа устройства (desktop или mobile)
- Автоматическая отправка событий от платежного интерфейса
- Смена оформления.
Если вы хотите открывать платежный интерфейс внутри iframe, необходимо:
- Реализовать определение типа устройства (desktop или mobile) и передачу значения в токене в параметре settings.ui.version.
- Реализовать механизм postMessage для получения событий от платежного интерфейса.
- Получить токен.
- Передать в токене размер платежного интерфейса:
Размер платежного интерфейса | Ширина iframe |
---|---|
large (используется по умолчанию) | 670–850 px |
medium | 590–740 px |
small | 510–630 px |
Для открытия платежного интерфейса внутри iframe используется ссылка https://secure.xsolla.com/paystation3/?access_token=ACCESS_TOKEN, где ACCESS_TOKEN — это токен платежного интерфейса.
Какие IP-адреса необходимо добавить в белый список для настройки оповещений?
Вы должны принимать и обрабатывать оповещения со следующих IP-адресов: 185.30.20.0/24, 185.30.21.0/24.
Как добавить к способам оплаты paysafecard?
Чтобы добавить новый способ оплаты, напишите нам на integration@xsolla.com.
У вас есть SDK под Node.JS/C#/Ruby/Java/ASP и т.п.?
Сейчас у нас есть SDK под PHP и Android. Но вы можете создать собственный SDK под любой язык/платформу, где можно отправлять HTTPS-запросы.
Почему PHP-библиотека не работает на нашем сайте?
Убедитесь, что вы установили все необходимые файлы и верно указали все относительные пути. Более подробные инструкции по установке есть в нашем GitHub-репозитории.
Проверка существования пользователя
Что такое User ID? Как нам валидировать пользователей?
User ID — это способ идентифицировать пользователя в игре. Вы можете хранить ID пользователей в базе данных. Если используется неверный User ID, вы должны сгенерировать исключение. Примеры пользовательской валидации можно найти в нашем GitHub-репозитории.
Какие данные надо возвращать после валидации? Например, что нужно вернуть, если валидация прошла успешна? И если нет?
При успешной валидации вы должны вернуть HTTP-код 200. В противном случае — код 400 с кодом ошибки INVALID_USER.
Настройки проекта
Нужно ли создавать отдельные проекты для каждой среды - 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.
Настройки проектов Buycraft
Где найти ID проекта/продавца и секретный/API-ключ для проектов Buycraft?
См. руководство.
Что указать как Название игры в разделе Информация о соглашении в настройках Buycraft?
Укажите название вашего сервера.
Настройки оповещений
Необходимо ли для оповещений использовать HTTPS?
Да — Иксолла API использует базовую HTTP-аутентификацию.
Почему ваше оповещение не пришло на 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 и банковский перевод.
Как мне перенести в Иксоллу данные пользователей (сохраненные платежные аккаунты, подписки и т.д.)?
Для переноса пользовательских данных обратитесь к аккаунт-менеджеру. Используйте PGP-шифрование, чтобы обеспечить их конфиденциальность.
Ошибки
При открытии платежного интерфейса выдается следующая ошибка: 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.