Paypal快速结账按钮IPN

时间:2017-10-27 18:01:13

标签: javascript paypal http-post paypal-ipn express-checkout

我的网页上有一个快速结账按钮,看起来很像:

<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处理程序,我在https://developer.paypal.com/developer/ipnSimulator/使用IPN模拟器测试并选择了快速结账,它运行正常。我唯一想知道的是如何设置paypal将IPN发送到我的服务器。我尝试设置一个paypal商业帐户并在那里输入IPN的URL,但我没有在服务器上或在IPNs历史网站上收到任何信息。

1 个答案:

答案 0 :(得分:0)

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

如果您使用真实帐户,则需要更改&#34; env&#34;和&#34;客户&#34;生产。