如何为 PayPal Express Checkout 配置 IPN?
Posted
技术标签:
【中文标题】如何为 PayPal Express Checkout 配置 IPN?【英文标题】:How to config IPN for PayPal Express Checkout? 【发布时间】:2017-10-20 05:31:38 【问题描述】:我想使用 PayPal Express Checkout,并使用 PayPal 的官方客户端示例。
https://developer.paypal.com/demo/checkout/#/pattern/client
<script src="https://www.paypalobjects.com/api/checkout.js"></script>
<div id="paypal-button-container"></div>
<script>
// Render the PayPal button
paypal.Button.render(
x
// Set your environment
env: 'sandbox', // sandbox | production
// PayPal Client IDs - replace with your own
// Create a PayPal app: https://developer.paypal.com/developer/applications/create
client:
sandbox: 'AZDxjDScFpQtjWTOUtWKbyN_bDt4OgqaF4eYXlewfBP4-8aqX3PiV8e1GWU6liB2CUXlkA59kJXE7M6R',
production: '<insert production client id>'
,
// Set to 'Pay Now'
commit: true,
// Wait for the PayPal button to be clicked
payment: function(actions)
// Make a client-side call to the REST api to create the payment
return actions.payment.create(
transactions: [
amount: total: '0.01', currency: 'USD'
]
);
,
// Wait for the payment to be authorized by the customer
onAuthorize: function(data, actions)
// Execute the payment
return actions.payment.execute().then(function()
window.alert('Payment Complete!');
);
, '#paypal-button-container');
</script>
我的问题是,如何通过notifiy_url获取付款确认和客户的数据?
我假设 onAuthorize 功能是不够的。 如果有人能澄清一下,我将不胜感激。
感谢您的帮助!
【问题讨论】:
【参考方案1】:使用 REST API,您需要使用 Webhooks,而不是 IPN。 IPN 适用于经典 API。
【讨论】:
快递结账不会触发 IPN 吗? 经典 API 上的快速结账会触发 IPN。 REST API 上的 Express Checkout 会触发 webhook。 那么使用 javascript 实现的 Express checkout 不会触发 IPN? 发现我可以创建一个配置了 IPN 的沙盒商家帐户。我可以确认,JS 快速结帐仍然会发生 IPN。 Webhook 是可选的(呸)。以上是关于如何为 PayPal Express Checkout 配置 IPN?的主要内容,如果未能解决你的问题,请参考以下文章