【发布时间】:2014-11-16 17:28:24
【问题描述】:
我在这里阅读了很多关于 PayPal 的问题,以及网上很多不同的页面,但我很困惑。我找到了一些不同类型的付款的例子,但很多都已经很老了,我不确定它们的相关性,因为我被告知最近发生了变化。不幸的是,开发人员/沙盒 PayPal 网站上似乎没有任何有用的示例或文档,或者我就是找不到它们!
我想知道是否有人可以向我指出一些好的示例、文档或教程,它们可以帮助我解决以下问题:
我是否认为如果我希望对 PayPal 交易进行任何后处理,即更新我的数据库中的交易(成功等),我需要使用 IPN/PDT 并且使用这些我需要向 PayPal 公开监听器吗?
如果这是真的,我对这么多开发人员可以使用这个系统感到困惑,因为我真的无法想象将我的开发/测试环境暴露给外部世界以进行测试和调试。我什至在 asp.net 网站上观看了一个视频,该视频就是这样做的 http://www.asp.net/mvc/videos/mvc-1/aspnet-mvc-storefront/aspnet-mvc-storefront-part-22-restructuring-rerouting-and-paypal 这不是我在工作环境中真正可以考虑的事情。
当我指定 IPN 的 url 时,我还在努力寻找任何文档或示例来说明实际返回给我的内容。目前我假设它类似于myurl.com/?item=blah&item1=blah&item2=foo 等,但在我能找到的任何地方都没有指定。返回的项目也没有指定。目前我假设我可以将这些项目作为表单数据访问,但没有这样的示例(除了上面视频中的 MVC1 示例)。
我也认为我需要使用 IPN,因为如果用户使用信用卡然后没有点击返回卖家网站按钮,PDT 甚至可能无法返回。这是真的吗?
我想要做的就是在我的网页上放置一个按钮,这将允许用户支付年度订阅费用。我想将一个唯一的交易 ID 传递给 PayPal,他们将返回给我,说明成功或失败。然后我将更新我的数据库,以便用户收到他们的订阅。
当我为 SagePay(我们目前的提供商 - 我们只是为了能够在没有不同货币银行账户的情况下进行国际支付)做这件事时,我曾认为这样做已经够糟糕了,但 PayPal 似乎更糟糕.对于 SagePay,我只需将提交的 URL 从测试更改为实时。很简单,他们给我发回了一个加密的回复,实际上有关于回复内容的文档。
我真的希望我只是在这里搞错了,并且有一种明智的方法可以将 PayPal 集成到我的网站中。目前,我似乎必须在我当前的实时服务上设置一个 PayPal 可以访问的 URL,然后调试实时服务器以准确查看我收到的内容并调试我的代码。这似乎非常错误。
非常感谢您的帮助!
【问题讨论】:
标签: c# asp.net-mvc-4 paypal paypal-ipn