有没有实时的paypal ipn服务

时间:2015-01-26 20:36:04

标签: paypal paypal-ipn asp.net-web-api

PayPal已明确声明,在用户结账过程中不应依赖其IPN服务。我相信这里的想法是IPN应该是一种跟踪机制,以保持我们的后端数据与PayPal的数据同步。我想要做的是使用快速结账,但强制执行" IPN"在完成任何事情之前,打我的服务器,让我的服务器做出适当的响应。

然后我可以确保我只在用户付费后向用户提供内容,并且如果用户确实为一段内容付费,则他们不必刷新或等待IPN进入。使用返回URL和查询字符串执行此操作的问题之一是,我在firefox手机上有一个单页网站。手机从我们的API网络服务获取数据。所以无论返回网址如何,我都需要点击此端点。

我知道PayPal高级开发人员有更多功能,需要付费。如果是这样的话我很好,但我只是想先知道我的选择。

1 个答案:

答案 0 :(得分:1)

顾名思义,IPN是即时的。在极少数情况下,它可能会稍微延迟,但这种情况并不经常发生,特别是在实时服务器上。

您可以构建您的IPN侦听器,以便在更新数据库,生成自定义电子邮件通知,点击第三方Web服务等方面做任何您需要的事情,并且这些操作将实时触发。

您只需要在PayPal IPN设置中创建和配置您的侦听器,或者您也可以在Express Checkout API调用的NotifyURL参数中传递IPN URL。

如果您正在使用WordPress,您可能会对我的PayPal IPN for WordPress插件感兴趣。它可以让您快速启动并运行IPN,然后您可以根据不同的IPN类型或付款状态挂钩插件以触发您自己的功能。

评论的额外信息

如前所述,IPN是一种交易后的事情。但是,您可以做的是在结帐系统上设置Auth和Capture。当订单通过时,您将其作为授权运行,并且当您准备好"最终确定"你会运行捕获。

您将获得授权和捕获的IPN。因此,如果适合您,您可以做的一件事就是将订单作为授权运行,然后在您的IPN脚本中继续运行捕获。这样你可以做你想做的任何检查,只有在它们通过时才能捕获。

在通过案件时,捕获将发生在几乎"订单发生时立即。在它没有通过的情况下,你可以使Auth无效或让它处于待定状态。

相关问题