Pay Station / Как настроить редиректы
  На главную

Pay Station

Как настроить редиректы

Общие положения

Чтобы перенаправить пользователя на другую страницу после совершения оплаты, вы можете настроить редиректы в Личном кабинете или через API. Для разных статусов платежа (успешный или отмененный платеж) могут быть настроены следующие редиректы:

  • автоматические — перенаправление через заданный промежуток времени;
  • ручные — перенаправление пользователя после нажатия кнопки редиректа.

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

Внимание
Ограничения:
  • Настройки редиректов через API имеют приоритет над настройками в Личном кабинете.
  • Настройки автоматических редиректов имеют приоритет над настройками ручных редиректов. Например, если для успешного платежа настроен как ручной редирект, так и автоматический редирект с задержкой 0 секунд, после совершения оплаты произойдет автоматический редирект.
К ссылке для редиректа автоматически добавляются следующие GET-параметры:
  • user_id — ID пользователя.
  • foreigninvoice — ID транзакции в игре, который передается в параметре external_id
  • invoice_id — ID транзакции.
  • status — статус транзакции. Может принимать следующие значения:
Статус транзакцииОписание
doneПлатеж совершен успешно.
invoiceСформирован чек об оплате.
deliveringПлатеж находится в обработке на стороне Xsolla.
troubledВозникла ошибка при обработке или возврате платежа.
full_changeПлатеж совершен с помощью Xsolla-баланса.

Пример URL-адреса, на который перенаправляется пользователь: {Return URL}?user_id=[value]&foreignInvoice=[value]&invoice_id=[value]&status=done

Если пользователь закрывает вкладку платежного интерфейса до совершения платежа, он перенаправляется на указанный URL-адрес редиректа, который выглядит следующим образом: {Return URL}?user_id=[value]&invoice_id=. Если платежный интерфейс открывается с помощью скрипта Pay Station Embed, при закрытии платежного интерфейса, закрывается виджет и пользователь возвращается в игру.

Настройка автоматических редиректов

Вы можете настроить автоматические редиректы:

  • в Личном кабинете;
  • через API.
  • Настройка автоматических редиректов в Личном кабинете

    1. Откройте проект в Личном кабинете и перейдите в раздел Pay Station > Настройки > Политика редиректа.
    1. В поле Return URL введите URL-адрес страницы или путь в приложении (диплинк), на который пользователь должен переходить после совершения платежа. Для улучшения пользовательского опыта при открытии платежного интерфейса в мобильном приложении игры мы рекомендуем указывать диплинки в качестве return URL.
    2. Выберите значение в раскрывающемся списке Условия для автоматического редиректа:
      • Нет — редирект не выполняется;
      • Успешный платеж — редирект при успешном платеже;
      • Успешный или отмененный платеж — редирект при успешном или отмененном платеже;
      • Любой платеж — редирект при любых статусах платежа.
    3. В поле Задержка введите количество секунд, через которое должен выполняться редирект. По умолчанию автоматический редирект осуществляется с задержкой 0 секунд.
    4. Если вы хотите настроить только автоматический редирект, без отображения кнопки редиректа, в раскрывающемся списке Условия для ручного редиректа выберите Нет — редирект не происходит.
    5. Нажмите Сохранить.

    Настройка автоматических редиректов через API

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

    Чтобы настроить редиректы, передайте в методе API Создание токена следующие данные:

    • В параметре settings.return_url — URL-адрес страницы или путь в приложении (диплинк), на который пользователь должен переходить после совершения платежа. Для улучшения пользовательского опыта при открытии платежного интерфейса в мобильном приложении игры мы рекомендуем указывать диплинки в качестве return URL.
    • В параметре settings.redirect_policy.redirect_conditions — условия редиректа:
      • none — редирект не выполняется;
      • successful — редирект при успешном платеже;
      • successful_or_canceled — редирект при успешном или отмененном платеже;
      • any — редирект при любых статусах платежа.
    • В параметре settings.redirect_policy.delay — количество секунд, через которое должен выполняться редирект на URL-адрес, переданный в параметре settings.return_url. По умолчанию автоматический редирект осуществляется с задержкой 0 секунд.

    Настройка ручных редиректов

    Вы можете настроить ручные редиректы:

    Внимание
    Настройки редиректов через API имеют приоритет над настройками в Личном кабинете.

    Настройка ручных редиректов в Личном кабинете

    1. Откройте проект в Личном кабинете и перейдите в раздел Pay Station > Настройки > Политика редиректа.
    1. В поле Return URL введите URL-адрес страницы или путь в приложении (диплинк), на который пользователь должен переходить после совершения платежа. Для улучшения пользовательского опыта при открытии платежного интерфейса в мобильном приложении игры мы рекомендуем указывать диплинки в качестве return URL.
    2. Если вы хотите настроить только ручной редирект, в раскрывающемся списке Условия для автоматического редиректа выберите Нет — редирект не происходит.
    3. Оставьте пустым поле Задержка.
    4. В раскрывающемся списке Условия для ручного редиректа выберите статус платежа, при котором на странице статуса должна появляться кнопка редиректа:
      • Нет — редирект не выполняется;
      • Успешный платеж — редирект при успешном платеже;
      • Успешный или отмененный платеж — редирект при успешном или отмененном платеже;
      • Любой платеж — редирект при любых статусах платежа.
    5. В поле Надпись на кнопке редиректа введите текст кнопки редиректа, при нажатии на которую пользователь перенаправляется на return URL.
    6. Нажмите Сохранить.
    Внимание

    По умолчанию текст на кнопке редиректа — Back to the game. Эта надпись локализована на все языки платежного интерфейса.

    Если проект поддерживает несколько языков, вы можете указать текст кнопки для каждого языка в соответствующих полях.

    Когда пользователь закрывает платежный интерфейс, он переходит на указанный return URL.

    Настройка ручных редиректов через API

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

    Чтобы настроить редиректы, передайте в методе API Создание токена следующие данные:

    • В параметре settings.return_url — URL-адрес страницы или путь в приложении (диплинк), на который пользователь должен переходить после совершения платежа. Для улучшения пользовательского опыта при открытии платежного интерфейса в мобильном приложении игры мы рекомендуем указывать диплинки в качестве return URL.
    • В параметре settings.redirect_policy.manual_redirection_action — действие, которое совершается, когда пользователь закрывает окно платежного интерфейса или нажимает кнопку редиректа:
      • redirect (по умолчанию) — пользователь перенаправляется на return URL.
      • postmessage — при закрытии окна платежного интерфейса отправляется событие close-widget, при нажатии кнопки — событие return. В данном случае пользователь не перенаправляется на return URL. Вам необходимо настроить обработку событий для закрытия платежного интерфейса или редиректа. Эта настройка доступна только при использовании API.
    • В параметре settings.redirect_policy.redirect_button_caption — текст кнопки, при нажатии на которую пользователь перенаправляется на return URL.
    • В параметре settings.redirect_policy.status_for_manual_redirection — статус платежа, при котором появляется кнопка для возврата на return URL:
      • none — редирект не выполняется;
      • successful — редирект при успешном платеже;
      • successful_or_canceled — редирект при успешном или отмененном платеже;
      • any — редирект при любых статусах платежа.

    Внимание
    Если платежный интерфейс в мобильной версии открывается в iframe и в параметре settings.ui.desktop.header.close_button передано значение true, при закрытии платежного интерфейса отправляется только postmessage. Это позволяет вам обработать событие и закрыть платежный интерфейс, а пользователю — остаться на странице, с которой был инициирован платеж.

    Пример настройки редиректов

    В Личном кабинете вы настроили автоматические редиректы с задержкой 3 секунды. Такое поведение распространяется как на мобильную, так и настольную версию платежного интерфейса. Настройки редиректов в Личном кабинете в результате будут выглядеть следующим образом:

    Если вам потребовалось изменить настройки для открытия платежного интерфейса внутри мобильного приложения игры, то есть добавить кнопку возвращения в игру и в качестве return URL указать диплинк, вам необходимо переопределить настройки редиректов в токене:

    ПараметрЗначение
    settings.return_urlДиплинк, который перенаправляет пользователя в приложение игры.
    settings.redirect_policy.redirect_conditionsany
    settings.redirect_policy.manual_redirection_actionredirect
    settings.redirect_policy.redirect_button_captionТекст для кнопки возвращения в игру.
    Запрос на получение токена будет выглядеть следующим образом:
    Copy
    Full screen
    Small screen
      {
          "user": {
              "country": {
                  "value": "US"
              },
              "id": {
                  "value": "1234abCd"
              },
              "name": {
                  "value": "John Smith"
              }
          },
          "settings": {
              "currency": "USD",
              "project_id": 123456,
              "language": "en",
              "return_url": "myapp://payment/successful",
              "ui": {
                  "desktop": {
                      "header": {
                          "visible_logo": true
                      }
                  }
              },
              "redirect_policy": {
                  "redirect_conditions": "any",
                  "redirect_button_caption": "Back to Store",
                  "manual_redirection_action": "redirect",
                  "status_for_manual_redirection": "any"
              },
              "external_id": "1a2b3c"
          },
          "custom_parameters": {
              "timestamp": 1234512345123,
              "sku": "testSKU",
              "amount": "10"
          },
          "purchase": {
              "virtual_items": {
                  "items": [
                      {
                          "sku": "testSKU",
                          "amount": 1
                      }
                  ]
              }
          }
      }
      
      Была ли статья полезна?
      Спасибо!
      Что может сделать страницу еще лучше? Сообщение
      Жаль, что так произошло
      Расскажите, почему статья не была полезна. Сообщение
      Спасибо за обратную связь!
      Ваши мысли и идеи помогут нам улучшить ваш пользовательский опыт.
      Последнее обновление: 6 сентября 2024

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

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