如何验证贝宝捐赠?
在用户面板中,我有一个捐赠按钮。一旦有人真正捐款,我想对他做点什么。但我不知道如何检查用户是否实际捐赠或只是单击了捐赠按钮。
它在同一手册中。然而,这可能有点困难,因为您需要一个接收付款信息的 PHP 脚本。
返回 URL – 如果人们单击 PayPal 付款确认页面上的返回链接或按钮,则让他们返回您网站上的页面。
要了解更多信息,请参阅第 2 页的第 2 步 - 指定捐赠按钮的高级功能或用于显示 PayPal 结帐页面的 HTML 变量。
自动返回 - 让 PayPal 自动将人们返回到您网站上的页面。 重要提示:PayPal 建议您在开启自动退货时开启支付数据传输。启用自动退货后,PayPal 会将人们从不显示查看可打印收据链接的备用 PayPal 付款确认页面重定向到您的网站,因此人们无法打印 PayPal 付款收据。付款数据传输提供了让人们从您的网站打印收据所需的交易信息。
要了解更多信息,请参阅自动返回。
付款数据传输 - 当您使用退货 URL 或自动退货将人们送回您的网站时,PayPal 会包含有关已完成交易的信息。使用支付数据传输提供的信息在您的网站上显示“谢谢,打印收据”页面。
要了解更多信息,请参阅 Developer Central 上的支付数据传输页面。
有两种方法可以检查捐赠者的捐赠情况:
1)使用“notify_url”参数(安全)
2)使用“return”参数(不安全)
代码示例:
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<!-- Identify your business so that you can collect the payments. -->
<input type="hidden" name="business"
value="donations@kcparkfriends.org">
<input type="hidden" name="bn" value="mbjtechnolabs_SP">
<!-- Specify a Donate button. -->
<input type="hidden" name="cmd" value="_donations">
<!-- Specify details about the contribution -->
<input type="hidden" name="item_name" value="Friends of the Park">
<input type="hidden" name="item_number" value="Fall Cleanup Campaign">
<input type="hidden" name="amount" value="25.00">
<input type="hidden" name="currency_code" value="USD">
<!-- Display the payment button. -->
<input type="image" name="submit" border="0"
src="https://www.paypalobjects.com/en_US/i/btn/btn_donate_LG.gif"
alt="PayPal - The safer, easier way to pay online">
<img alt="" border="0" width="1" height="1"
src="https://www.paypalobjects.com/en_US/i/scr/pixel.gif" >
</form>
当有人捐赠捐赠者自动重定向到返回网址但此选项不安全,因为可能有人直接打开此网址。
了解捐赠者捐赠的最佳方式选择贝宝 notify_url 参数。
PayPal 将发送 post 请求到 notify_url。