【问题标题】:Paypal Form Payment correct workflowPaypal 表单付款正确的工作流程
【发布时间】:2015-10-20 12:03:34
【问题描述】:

我需要将付款与 PayPal 集成,我正在使用表单集成

<form action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="post">
  <input type="hidden" name="cmd" value="_cart">
  <input type="hidden" name="upload" value="1">
  ...
  <input type="hidden" name="return" value="http://example.com/Thankyou.html">
  <input type="hidden" name="notify_url" value="http://example.com/IPN">
  <input type="image" name="submit" border="0" src="/img/logos_icons/paypal-btn.png" alt="PayPal - The safer, easier way to pay online">
</form>

在这一点之后,我有点困惑:当用户点击购买按钮时,会重定向到 PayPal 网站,而当交易完成时,会重定向到“retun”链接(感谢页面)。同时 PayPal 向“notify_url”发送通知(IPN)。

这是正确的工作流程吗? 如果是,在通知方法中我应该预订购买的产品,但我如何了解与当前通知相关联的原始交易?

【问题讨论】:

    标签: asp.net paypal


    【解决方案1】:

    您的流程是正确的,但根据交易的性质或您尝试提供的用户体验,您可能会在两个地方进行“预订购买的产品”的履行活动:由用户处理的页面返回(如果他们确实及时返回并且您希望立即完成订单,例如,以便他们可以导航到订阅的页面)并通过 IPN 捕获用户付款但没有立即返回您的网站的情况。

    通常,您在按钮的发票字段中向 PayPal 发送您选择的唯一标识符;该标识符与您需要的任何上下文(购买详细信息/购物车、用户帐户等)相关联。

    【讨论】:

    • 谢谢伙计,我找到了这个 IPN 实施示例mvcsamples.svn.codeplex.com/svn/trunk/Kona.Web/Controllers/…,但它再次向贝宝发送请求(在 IPN 操作中),就像确认一样......所以它是正确的流程吗?你知道为什么我们需要寄回贝宝吗?
    • @DevT 发回 PayPal 是为了验证您的服务器收到的 IPN 消息实际上是由 PayPal 发送的。发回消息后,如果 IPN 消息有效且与 PayPal 发送的消息匹配,PayPal 将回复 VERIFIED。否则,它将回复INVALIDSee here 了解有关该过程的更多信息。
    • @JasonZ 谢谢你的澄清
    猜你喜欢
    • 2023-04-02
    • 2016-07-16
    • 2012-02-18
    • 2012-09-19
    • 2021-02-04
    • 2012-06-21
    • 2010-12-05
    • 2011-10-10
    • 2013-06-10
    相关资源
    最近更新 更多