【问题标题】:Paypal checkout does not have IPN featurePaypal 结帐没有 IPN 功能
【发布时间】:2021-04-21 19:29:04
【问题描述】:

我正在查看 Sample code for PayPal Checkout 中所述的 PayPal Checkout。这种形式的 PayPal 支付页面只涉及 2 个 JavaScript 方法,分别是 createOrderonApprove

我期待一种指定 IPN 的方法,该方法可通过 PayPal 标准按钮轻松获得。

问题

PayPal Checkout 中是否提供 IPN 功能,如果没有,那么实现 IPN 之类的最佳方式是什么?

我正在考虑使用如下示例代码来模拟 IPN 功能。

onApprove: function(data, actions) {
                return actions.order.capture().then(function(details) {
                    // Show a success message to the buyer
                    //alert('Transaction completed by ' + details.payer.name.given_name + '!');

                    //IPN implementation as below
                    //Instead of showing a message to the buyer, redirect to a success page
                    //and pass query string variables to pass data from payment page top success page
                    window.location = "https://www.somesitexyzabc.com/success?s=1&d=abc";
                });

【问题讨论】:

    标签: javascript paypal


    【解决方案1】:

    IPN 已经很老了。 PayPal Checkout with Orders v2 不使用 IPN。没有任何目的。

    要在您的服务器上记录交易,请在您的服务器上进行捕获。

    您需要两条路线,一条用于“创建订单”,一条用于“捕获订单”,记录在此:https://developer.paypal.com/docs/business/checkout/server-side-api-calls/#server-side-api-calls

    将您的两条路线与以下批准代码配对:https://developer.paypal.com/demo/checkout/#/pattern/server

    在您的服务器中成功捕获后,在将 JSON 返回到 onApprove 函数之前,对您拥有的信息执行任何您需要执行的操作。

    【讨论】:

    • 谢谢。与 PayPal Standard 不同,在 PayPal Checkout 中,付款页面似乎在客户的网站上,而不是在 PayPal 这边。如果这是正确的,那么如果 onApprove 函数被执行,我们就知道支付是否成功。那正确吗?然后,我建议的方法也行得通。
    • onApprove 函数和actions.order.capture() 是客户端代码。使用服务器集成进行通知。
    • 在我在developer.paypal.com/demo/checkout/#/pattern/client 的原始示例代码中,在 OnApprove 函数中没有获取 url。但是在您提到的示例代码中,有一个 url。这很令人困惑,因为我不确定是否需要在 OnApprove 函数中获取 url?
    • 我认为您在回答中提到了使用服务器端代码的解决方案,但在我的问题中的示例代码中,仅使用了客户端代码。因此,看来我可以简单地使用客户端代码仅用于贝宝结帐,而不是使用服务器端代码来调用 PayPal API。对吗?
    • 事务完成后不要依赖客户端通知服务器。
    猜你喜欢
    • 2018-01-08
    • 2018-04-09
    • 1970-01-01
    • 2011-12-12
    • 1970-01-01
    • 2010-12-14
    • 2013-10-14
    • 2016-09-14
    • 2014-08-04
    相关资源
    最近更新 更多