10

如何验证贝宝捐赠?

在用户面板中,我有一个捐赠按钮。一旦有人真正捐款,我想对他做点什么。但我不知道如何检查用户是否实际捐赠或只是单击了捐赠按钮。

4

3 回答 3

6

查看 Paypal 的IPN (即时付款通知)

当有人向您的 Paypal 帐户付款或捐款时,Paypal 将向您的网络服务器发送一条包含所有付款详细信息的邮件。然后,您可以将消息发送回 Paypal,以确保付款是真实的...

甚至在 paypal 的网站上也有一些代码示例。包括一个用于 PHP 的。

请注意,您必须先启用 IPN 并在您的 paypal 帐户中定义回调 URL,然后才能开始使用 IPN。

于 2010-01-02T20:43:43.583 回答
0

在同一手册中。然而,这可能有点困难,因为您需要一个接收付款信息的 PHP 脚本。

返回 URL – 如果人们单击 PayPal 付款确认页面上的返回链接或按钮,则让他们返回您网站上的页面。

要了解更多信息,请参阅第 2 页的第 2 步 - 指定捐赠按钮的高级功能或用于显示 PayPal 结帐页面的 HTML 变量。

自动返回 - 让 PayPal 自动将人们返回到您网站上的页面。 重要提示:PayPal 建议您在开启自动退货时开启支付数据传输。启用自动退货后,PayPal 会将人们从不显示查看可打印收据链接的备用 PayPal 付款确认页面重定向到您的网站,因此人们无法打印 PayPal 付款收据。付款数据传输提供了让人们从您的网站打印收据所需的交易信息。

要了解更多信息,请参阅自动返回。

付款数据传输 - 当您使用退货 URL 或自动退货将人们送回您的网站时,PayPal 会包含有关已完成交易的信息。使用支付数据传输提供的信息在您的网站上显示“谢谢,打印收据”页面。

要了解更多信息,请参阅 Developer Central 上的支付数据传输页面。

于 2010-01-02T18:27:03.890 回答
0

有两种方法可以检查捐赠者的捐赠情况:

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。

于 2015-08-29T06:11:06.960 回答