【问题标题】:Paypal return linkPaypal退货链接
【发布时间】:2012-12-08 22:23:26
【问题描述】:

我有使用贝宝付款的网站。我使用 IPN 处理付款

我希望访问者在支付宝付款后返回特定页面

我放在篮子里

<input type="hidden" name="return" value="http://site.com/basket/thank-you?param=value">

Pair param=value 在某些情况下可能是特定的

但在付款后访问者只能看到贝宝“感谢您的订单”页面 :( 访问者可以在此页面上使用返回链接,但他们不会这样做:)

我知道可以在 PayPal 商家账户中设置自动退货-->个人资料-->销售偏好-->网站支付偏好-->网站支付自动退货

但我应该只设置一个网址。所以我必须使用 cookie 或 session 来捕捉用户的语言。 为什么会这样?为什么返回链接隐藏字段不起作用?是否可以在没有 PDT 的情况下获得退货功能?

【问题讨论】:

    标签: paypal paypal-ipn


    【解决方案1】:

    像您一样使用 Payments Standard 时,即使启用了自动退货,也无法保证用户能够退回您的退货。例如,他们可以在自动返回发生之前简单地关闭浏览器。这根本不是很可靠。

    如果您想确保用户回到您的应用流程,那么您可以使用Express Checkout。这涉及到 3 个 API 调用,SetExpressCheckoutGetExpressCheckoutDetailsDoExpressCheckoutPayment

    在登录、查看并同意付款后,用户将被发送回您在 SetExpressCheckout 中指定的 ReturnURL。此时,您可以调用 GetExpressCheckoutDetails 获取付款人详细信息(可选),然后使用 DoExpressCheckoutPayment 完成所有操作。

    我还建议将数据保存到您的数据库或使用会话变量而不是 URL 参数,因为 Express Checkout 发生在您自己的服务器而不是 PayPal 的服务器上,因此很容易访问。

    【讨论】:

      【解决方案2】:

      Website Payment Preferences 上的Auto Return for Website Payments 设置为ON 并不意味着您的应用程序将始终使用其上的返回URL。您仍然可以通过指定 return 字段来覆盖它,就像您在上面所做的那样:

      <input type="hidden" name="return" value="http://site.com/basket/thank-you?param=value">
      

      不同的是,访问者将被直接重定向到返回 URL(通常等待大约 10 秒),而不会将他们带入“感谢您的订单”页面。

      【讨论】:

        【解决方案3】:

        最有趣的事情是我只在沙盒中提交的退货有问题。在真实的贝宝帐户上,即使关闭了自动返回选项,我也会在感谢页面上返回访问者。

        【讨论】:

          猜你喜欢
          • 2014-06-29
          • 2012-04-12
          • 2017-10-17
          • 2015-06-07
          • 2014-11-28
          • 2010-10-29
          • 2011-08-29
          • 2013-03-14
          相关资源
          最近更新 更多