Javascript 贝宝结账没有IPN功能

Javascript 贝宝结账没有IPN功能,javascript,paypal,Javascript,Paypal,我正在查看PayPal结账,如中所述。这种形式的PayPal支付页面只涉及两种JavaScript方法,即createOrder和onApprove 我期待着一种指定IPN的方法,它可以很容易地使用贝宝标准按钮 问题 IPN功能在PayPal Checkout中可用吗?如果没有,那么实现IPN的最佳方式是什么 我正在考虑使用下面的示例代码来模拟IPN特性功能 onApprove: function(data, actions) { return actions.o

我正在查看PayPal结账,如中所述。这种形式的PayPal支付页面只涉及两种JavaScript方法,即createOrder和onApprove

我期待着一种指定IPN的方法,它可以很容易地使用贝宝标准按钮

问题

IPN功能在PayPal Checkout中可用吗?如果没有,那么实现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";
                });

IPN非常古老。PayPal订单结账v2不使用IPN。这是没有目的的

要在服务器上记录事务,请在服务器上执行捕获

您需要两条路线,一条用于“创建订单”,另一条用于“捕获订单”,记录如下:

将两条路线与以下批准代码配对:


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

谢谢。与PayPal标准不同的是,在PayPal结账中,付款页面位于客户的网站上,而不是PayPal端。如果这是正确的,那么我们就知道如果执行了onApprove函数,支付是否成功。是这样吗?然后,我建议的方法也会起作用。onApprove函数和
actions.order.capture()
是客户端代码。使用服务器集成进行通知。在上的原始示例代码中,在Approve函数中没有获取url。但是在您提到的示例代码中,有一个url。这是令人困惑的,因为我不确定是否需要在Approve函数中获取url?我想在您的回答中,您提到了使用服务器端代码的解决方案,但在我的问题中的示例代码中,仅使用了客户端代码。因此,我似乎可以只使用客户端代码进行paypal结账,而不使用服务器端代码来调用paypal API。是否正确?不要依赖客户端在事务完成后通知服务器。