【问题标题】:PayPal subscriptions PDT / IPN - PLEASE贝宝订阅 PDT / IPN - 请
【发布时间】:2012-05-16 19:43:55
【问题描述】:

我很难理解这个贝宝支付的东西......

如何确认用户已成功注册我的订阅?

我对 IPN 的了解为 0,但例如:如果用户使用 example@e.com 注册我的网站,但使用 paypal 帐户 sample@s.com 付款,那么我如何匹配用户。

我读到 PDT 不会为经常性(订阅)付款发送交易 ID (tx),这是真的吗?

只是需要帮助...诚实和简单:)

谢谢。

【问题讨论】:

    标签: php paypal paypal-ipn payment-processing


    【解决方案1】:

    是的,有时很难理解 Paypal 及其所有文档,但对于任何类型的订阅,我都会推荐 Paypal IPN。您在您的 paypal 帐户中设置 IPN URL,例如:http://www.domain.com/ipn.php。然后在 paypal 帐户中创建一个订阅按钮,您可以在其中设置价格、定期价格等。

    您可以在此处阅读有关 Paypal IPN 的更多信息: https://www.paypal.com/ipn

    在创建 Paypal 按钮时,您还可以添加一些自定义字段,这些字段可以帮助您确定真正付款的客户。因此,例如,您有一个用户数据库,并且用户的用户 ID=100、用户名=昵称和注册电子邮件=xxx@gmail.com。现在您可以决定将 userid=100 添加为自定义字段并将其添加到 paypal 按钮。例如 CUSTOM=100。

    ipn.php 在这种情况下是一个处理所有逻辑的脚本。当用户付款时,Paypal 将任何状态发送到http://www.domain.com/ipn.php(您在您的 paypal 帐户中将其设置为 IPN URL)。所以在这种情况下 ipn.php 需要检查支付是否完成并且状态是否正常。然后检索一个 CUSTOM 字段 ($_POST['custom']),在本例中为 100(用户 ID)。然后用用户更新您的数据库,并以某种方式标记该用户当然在状态为 Completed 时已付款。

    希望这会有所帮助。但在这种情况下,用户从哪个 paypal 帐户付款以及哪个在您的数据库中注册并不重要。您所需要的只是以某种方式将其链接在一起。在这种情况下,使用 userid 或类似的东西。

    【讨论】:

    • 如果使用沙盒进行测试,返回URL,我们应该使用帐户?谢谢
    • 是的,那是另一个痛苦 :) 您使用您的真实电子邮件地址 (developer.paypal.com) 注册了一个新的沙盒帐户。之后,您使用您的电子邮件和密码登录到 paypal SANDBOX 帐户,然后您可以在那里创建不同的 TEST 帐户。例如,您可以创建一个企业帐户和 1 个或多个个人帐户。请记住,这只是 TEST 帐户,但确实可以用作真实帐户。登录到贝宝沙箱后,单击新创建的企业帐户并像在真实贝宝帐户中一样设置 IPN URL。您还可以在那里生成付款按钮。
    • 然后创建至少一个 TEST 用户的帐户,以便您可以尝试付款是否真的有效。测试时,您只需将按钮的 HTML 源代码从 business=YOUR_REAL_EMAIL_or_YOUR_REAL_BUSINESS_CODE 更改为您的企业 TEST 帐户的电子邮件地址或业务代码(来自贝宝沙箱)。同样在您的 IPN 文件(ipn.php - 您将其设置为 IPN URL)中,您需要更改将数据发布回贝宝的 URL。因此,您使用沙盒 url 而不是真正的 Paypal URL。在此处查看 PHP 示例:cms.paypal.com/cms_content/US/en_US/files/developer/…
    • 或者在这里查看其他示例:cms.paypal.com/us/cgi-bin/… 抱歉英语不是我的母语,但我希望现在更清楚?还要确保在测试您的支付程序时,您需要登录到您的沙盒帐户,当然,为了测试支付,您使用您可以在您的贝宝沙盒帐户中创建的个人帐户之一。我知道这很复杂,但并不是我的错,这就是贝宝的真正运作方式。我只是想让你更容易:)
    【解决方案2】:

    如果您想实施 Paypal IPN,而您的客户根据我的经验不使用相同的电子邮件,您可以使用表单来验证用户身份

    • 用户使用 xxx@example.org 登录您的网站
    • 用户点击您的商品并通过 yyy@example.org 付款
    • 在他付款后,您可以将他重定向到他们可以将 Paypal 帐户与网站帐户合并的表单
    • 用户每次付款时,他提供的信息都会涵盖您的 IPN
    • 您应该保存他的付款信息以备后用。

    【讨论】:

      猜你喜欢
      • 2012-04-26
      • 2013-03-06
      • 2022-11-30
      • 2019-08-04
      • 2016-04-03
      • 2011-07-17
      • 2016-07-08
      相关资源
      最近更新 更多