如何配置重定向

概览

要在用户完成支付后将其重定向到其他页面,可在发布商帐户中或通过API进行配置。对于不同支付状态(成功或取消支付),可配置以下重定向:

  • 自动 — 在指定的延迟时间后重定向。
  • 手动 — 用户关闭支付UI或点击跳转按钮后发生重定向。

您可以同时配置自动和手动重定向。用户可以选择点击跳转按钮来返回应用程序,否则将在设置的延迟时间结束后自动重定向。

注意
限制:
  • 通过API传递的重定向配置的优先级高于发布商帐户中的配置。
  • 自动重定向配置的优先级高于手动重定向的配置。例如,为成功支付同时配置了具有0秒延迟的手动重定向和自动重定向,届时将发生自动重定向。
以下GET参数自动添加到用户被重定向到的URL中:
  • user_id — 用户ID。
  • foreigninvoiceexternal_id参数中传递的交易ID。
  • invoice_id — 交易ID。
  • status — 交易状态。可为以下值:
交易状态描述
done支付成功完成。
invoice生成了付款发票。
delivering支付正在艾克索拉侧进行处理。
troubled处理付款或退款过程中发生了错误。
full_change付款用艾克索拉余额进行。
用户被重定向到的URL示例:{Return URL}?user_id=[value]&foreignInvoice=[value]&invoice_id=[value]&status=done

配置自动重定向

您可以通过以下方式配置自动重定向:

  • 通过发布商帐户
  • 通过API
  • 在发布商帐户中配置自动重定向

    1. 发布商帐户中打开您的项目,然后前往支付中心 > 设置 > 重定向策略
    1. 返回URL字段中,输入用户付款后将其重定向到的URL地址或路径(深度链接)。为提高用户在游戏移动应用中打开支付UI的体验,建议指定深度链接作为返回URL。
    2. 在下拉列表中,选择自动重定向条件
      • 无 — 不重定向
      • 成功支付 — 支付成功后发生重定向。
      • 成功或取消了支付 — 支付成功或取消支付后发生重定向。
      • 任何支付 — 任何支付状态都发生重定向。
    3. 延迟字段,输入以秒为单位的重定向超时时间。默认情况下,重定向在被激活后0秒发生。
    4. 如果您希望只配置自动重定向且不添加跳转按钮,请在手动重定向条件下拉列表中选择无 — 不重定向
    5. 单击保存

    通过API配置自动重定向

    要配置重定向,请在创建令牌API调用中传入以下数据:

    • settings.return_url — 用户付款后将其重定向到的URL地址或路径(深度链接)。为提高用户在游戏移动应用中打开支付UI的体验,建议指定深度链接作为返回URL。
    • settings.redirect_policy.redirect_conditions — 重定向条件:
      • none — 不发生重定向。
      • successful — 支付成功后发生重定向。
      • successful_or_canceled — 支付成功或取消支付后发生重定向。
      • any — 任何支付状态都发生重定向。
    • settings.redirect_policy.delay — 激活重定向到settings.return_url参数中传递的URL后的超时时间,以秒为单位。默认情况下,重定向在被激活后0秒发生。

    配置手动重定向

    您可以通过以下方式配置手动重定向:

    注意
    通过API传入的重定向配置优先级高于发布商帐户中的设置。

    在发布商帐户中配置手动重定向

    1. 发布商帐户中打开您的项目,然后前往支付中心 > 设置 > 重定向策略
    1. 返回URL字段中,输入用户付款后将其重定向到的URL地址或路径(深度链接)。为提高用户在游戏移动应用中打开支付UI的体验,建议指定深度链接作为返回URL。
    2. 如只希望配置手动重定向,请在自动重定向条件下拉列表中,选择无 — 不重定向
    3. 延迟字段留空。
    4. 手动重定向条件下拉列表中,选择显示跳转按钮的支付状态:
      • 无 — 不重定向
      • 成功支付 — 支付成功后显示重定向按钮。
      • 成功或取消了支付 — 支付成功或取消支付后发生重定向。
      • 任何支付 — 任何支付状态都发生重定向。
    5. 重定向按钮文字字段,输入将用户重定向到返回URL的按钮文字。
    6. 单击保存
    注意

    默认情况下,重定向按钮文字是返回游戏。该文字已翻译为所有支付中心语言。

    如果您的项目项目支持多个语言,您可以在相应字段中为每个语言输入重定向按钮文字。

    用户关闭支付UI后,他们也将被重定向到指定的返回URL。

    通过API配置手动重定向

    要配置重定向,请在创建令牌API调用中传入以下数据:

    • settings.return_url — 用户付款后将其重定向到的URL地址或路径(深度链接)。为提高用户在游戏移动应用中打开支付UI的体验,建议指定深度链接作为返回URL。
    • settings.redirect_policy.manual_redirection_action — 由用户点击关闭或返回按钮触发的支付UI行为:
      • redirect (默认)— 将用户重定向到返回URL。
      • postmessage — 点击关闭图标发起close-widget事件的发送,点击返回按钮发起return事件的发送。该情况下,用户不会被重定向到返回URL。您需要为关闭支付UI配置事件处理或重定向。此设置仅在使用API时可用。
    • settings.redirect_policy.redirect_button_caption — 将用户重定向到返回URL的按钮文字。
    • settings.redirect_policy.status_for_manual_redirection — 显示跳转按钮的支付状态:
      • none — 不发生重定向。
      • successful — 支付成功后发生重定向。
      • successful_or_canceled — 支付成功或取消支付后发生重定向。
      • any — 任何支付状态都发生重定向。

    注意
    如果支付UI在iframe中打开,且settings.ui.desktop.header.close_button参数设置为true,则用户点击关闭图标时只发送postmessage事件。这样您可以处理该事件并关闭支付UI,而用户可以停留在发起支付的页面。

    重定向配置示例

    在发布商帐户中,您配置了具有3秒延迟的自动重定向。该行为同时应用于支付UI的移动和桌面版本。发布商中的配置类似如下:

    如需要更新游戏移动应用中支付UI的打开设置(如增加跳转按钮及指定一个深度链接作为返回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
                      }
                  ]
              }
          }
      }
      
      本文对您的有帮助吗?
      谢谢!
      我们还有其他可改进之处吗? 留言
      非常抱歉
      请说明为何本文没有帮助到您。 留言
      感谢您的反馈!
      我们会查看您的留言并运用它改进用户体验。
      为此页面评分
      为此页面评分
      我们还有其他可改进之处吗?

      不想回答

      感谢您的反馈!
      上次更新时间: 2024年3月26日

      发现了错别字或其他内容错误? 请选择文本,然后按Ctrl+Enter。

      报告问题
      我们非常重视内容质量。您的反馈将帮助我们做得更好。
      请留下邮箱以便我们后续跟进
      感谢您的反馈!