检索和存储贝宝订阅

Posted

技术标签:

【中文标题】检索和存储贝宝订阅【英文标题】:Retrieve and Store paypal subscriptions 【发布时间】:2015-04-02 18:02:28 【问题描述】:

我正在使用贝宝订阅付款,当用户在注册后输入订阅时。

以下是向用户收费的贝宝代码:

<form id="myForm" action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top">
<input type="hidden" name="cmd" value="_xclick-subscriptions">
<input type="hidden" name="business" value="">
<input type="hidden" name="lc" value="CA">
<input type="hidden" name="item_name" value=currentUser.get('plan')>
<input type="hidden" name="no_note" value="1">
<input type="hidden" name="src" value="1">
<input type="hidden" name="a3" value="0.01">
<input type="hidden" name="p3" value="1">




<input type="hidden" name="t3" value="M">
<input type="hidden" name="return" value="">
value="">
<input type="hidden" name="currency_code" value="CAD">
<input type="hidden" name="bn" value="PP-SubscriptionsBF:btn_subscribeCC_LG.gif:NonHostedGuest">

</form>

现在我想为当前用户将已确认的付款(即金额、日期等)存储到 Parse 中,但不知道该怎么做。任何帮助将不胜感激。

任何帮助将不胜感激。

更新:success.php?tx=6BA48179L4889664N&amp;st=Pending&amp;amt=0%2e01&amp;cc=CAD&amp;cm=&amp;item_number=&amp;sig=Hfh95Y%2fv8XTcl9zZasPjTwswbzJ2CRgSxRX%2f5U%2fmtDxQQk1cCOpuUH4awkCCGSQsI%2fgQnNeg%2bKUa7a9p0UPwNHQgL%2bST1aonNptQBSXKCVqAlVGY9QMb%2bQJJk2QMxttgKxysFZnBaKxBxLl8E2vbtLNsDflWf%2fJfT2eCMnSlzSc%3d,我需要获取我尝试使用的金额、货币和 tx

<?php
//Getting payment details from paypal
$amount = $_GET[‘amt’];
$currency = $_GET[‘cc’];
$trx_id = $_GET[‘tx’];
$invoice = mt_rand();
//inserting the payment to table


echo "$trx_id";

?&gt; 但它不起作用

【问题讨论】:

您的问题有点令人困惑,因为“定期付款”实际上是类似但不同的 PayPal 产品的名称;您的代码 sn-p 表明您正在使用 PayPal 的订阅产品。此外,尚不清楚(至少对我而言)您是要在同意时存储订阅的详细信息,还是要在每次支付订阅时存储新记录。如果您能澄清一下,这可能会帮助了解 Parse(我不知道)的人更轻松地帮助您。 我应该澄清一下。我正在使用 PayPal 的订阅,并希望在其同意时存储订阅详细信息。 Parse 只是一个数据库存储,这不是我关心的。我关心的是如何检索用户的购买信息。我需要的只是数量=x,日期=x之类的变量,然后我可以通过解析存储它 好的,下面会在此基础上回答... 【参考方案1】:

PayPal 可以使用此处描述的 PDT/IPN 变量向您提供有关订阅的信息:

https://developer.paypal.com/docs/classic/ipn/integration-guide/IPNandPDTVariables/#id091EB0901HT

如果您从 PayPal 获取订阅详细信息,您应该使用 PDT 或 IPN 来确保回复给您的帖子是合法的。

但是,由于您必须首先拥有订阅详细信息才能将它们发送到 PayPal,因此您可能会发现自己以原始格式记录信息比从 PayPal 的变量中重建信息更容易/更可靠。

【讨论】:

感谢您的建议,这很有意义。我的整个困境都解决了设置 IPN 的问题。我有两个页面,显示订阅表单的支付页面和成功页面,在成功购买后重定向用户的页面以及我想要获取这些变量的位置。我阅读了该指南,但一些指导会很有用。 您是问如何在两个页面之间传输信息,或者如何设置IPN?如果是前者,您的选择是服务器端(例如数据库)或客户端(cookie)存储,或者现在最常见的是两者:信息在您的数据库中,由 cookie 中的会话 ID 键入。比这更多的“如何”将在很大程度上取决于您的 Web 框架,因为它们通常都会以某种方式为您包装起来。如果是后者,谷歌应该在最常见的语言/框架中找到 IPN 或 PDT 设置的示例;我建议你先找一个,然后看看它能让你走多远。 谢谢。我能够让 PDT 工作,其中生成了包含各种变量的 url。我现在的问题是显示它并尝试了一种解决方法。我在帖子的初始部分下包含了更新

以上是关于检索和存储贝宝订阅的主要内容,如果未能解决你的问题,请参考以下文章

Paypal 自动支付每月订阅

我可以存储贝宝信息,如贝宝的用户名和密码以及自动充值功能的信用卡详细信息。?

贝宝订阅集成和修改订阅问题

贝宝数据在存储之前是不是应该加密?

如何在贝宝定期付款和订阅之间切换?

PHP - 贝宝订阅