Paypal结账没有IPN功能

Paypal checkout does not have IPN feature

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

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

问题

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 Checkout with Orders v2 不使用 IPN。没有目的。

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

您需要两条路线,一条用于 'Create Order',一条用于 'Capture Order',记录在此处: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 函数之前,对您拥有的信息执行任何您需要的操作。