我正在尝试使用 C# 在我的网站上的 asp.net 中实现 PayPals IPN。我正在使用此处找到的 PayPal 提供的示例代码:https ://cms.paypal.com/cms_content/GB/en_GB/files/developer/IPN_ASP_NET_C.txt
我已使用我网站上的 ipn 的 URL 在我的帐户上启用了 IPN。如您在上面的链接中所见,代码中使用的 URL 是用于 paypal 测试的 sandox url。
我正在使用 IPN 模拟器,它给了我“IPN 发送成功响应”,但在我的网站上它每次都显示无效。
我还尝试在标签中显示 strRequest 字符串,它向我显示的只是“&cmd=_notify-validate”,不带引号。我认为这是为了将该部分添加到从 PayPal 返回的其余数据中。
这是我的按钮:
这是我正在使用的按钮
<script src="paypal-button.min.js?merchant=myemail"
data-button="buynow"
data-name="name"
data-quantity="1"
data-amount="00.50"
data-currency="GBP"
data-shipping="0"
data-tax="0"
data-env="sandbox"
data-return="http://site.net/thankyou.aspx"
></script>
出了什么问题?
更新:
所以..回顾一下。我有 2 个沙盒帐户。一个企业,另一个个人。我在企业帐户上启用了 ipn。在我的网站上,我有上面显示的按钮。ipn 页面的代码与来自 paypal 的 asp.net 中为 IPN 提供的示例代码完全相同。我得到了网站,单击立即购买按钮并使用个人帐户到沙盒企业帐户进行购买。付款显示为已完成,并在企业帐户的 ipn 历史记录中显示为使用代码 200 发送,但是当我检查我在 ipn 页面上输入的标签时,它显示单词无效。
谢谢!