Paypal 快速结帐按钮 IPN

Posted

技术标签:

【中文标题】Paypal 快速结帐按钮 IPN【英文标题】:Paypal express checkout button IPN 【发布时间】:2018-04-09 09:50:11 【问题描述】:

我的网页上有一个快速结帐按钮,看起来像这样:

<body>
<div id="paypal-button"></div>

<script src="https://www.paypalobjects.com/api/checkout.js"></script>

<script>
    paypal.Button.render(

        env: 'sandbox', // Or 'sandbox'

        client: 
            sandbox:    '<censored>',
            production: 'xxxxxxxxx'
        ,

        commit: true, // Show a 'Pay Now' button

        payment: function(data, actions) 
            return actions.payment.create(
                payment: 
                    transactions: [
                        
                            amount:  total: '1.00', currency: 'USD' 
                        
                    ]
                
            );
        ,

        onAuthorize: function(data, actions) 
            return actions.payment.execute().then(function(payment) 
                console.log(data);
            );
        

    , '#paypal-button');
</script>

我的 Rails 后端也有一个 IPN 处理程序,我用 IPN 模拟器在https://developer.paypal.com/developer/ipnSimulator/ 进行了测试,并选择了快速结帐,它工作正常。我唯一想不通的是如何设置贝宝将 IPN 发送到我的服务器。我尝试设置一个 paypal 商业帐户并在那里输入 IPN 的 url,但我在服务器和 IPN 历史网站上都没有收到任何内容。

【问题讨论】:

【参考方案1】:

我看到按钮代码是用于沙盒的。 Sandbox 是一个测试环境,您应该在您的 Sandbox 帐户中设置 IPN 以接收 IPN 通知。 您可以在这个网址登录沙盒账户:www.sandbox.paypal.com

如果您使用的是真实帐户,则需要将“env”和“client”更改为生产。

【讨论】:

以上是关于Paypal 快速结帐按钮 IPN的主要内容,如果未能解决你的问题,请参考以下文章

缺少 PAYPAL IPN 自定义字段

首先,结帐还是 IPN 发送?

Paypal 多个 IPN 同一商家设置快速结帐

您是不是需要使用 IPN 和快速结帐来确认 PayPal 付款?

使用 activemerchant 和 ipn 的 Paypal 快速结帐

Paypal 快速结帐按钮