我在我的网站上设置了一个信用系统,用户A可以从用户B购买文件,让我们说1个信用卡,用户B的帐户可以记入贷方,比如1美元。然后,用户B可以“兑现”并将他们从我(网站的)PayPal账户中获得的钱存入他们的PayPal账户(我们假设他们的电子邮件地址目前有效)。当用户A购买信用卡时,他们将被带到PayPal,在那里他们可以登录并完成购买,为此我在我的网站上设置了一个IPN监听器,用于将信用信息存储到我的网站的数据库中。但是,我找不到向PayPal发送“现金支出”信息(即用户的电子邮件和支付金额)的机制。详细说明:我了解PayPal在有人向我购买时会发送IPN,但是当用户点击“兑现”按钮时,如何从我的网站发布到PayPal?我已经看到提到Mass Pay,但似乎无法找到任何代码示例。我错过了什么,或者是否有不同(更好)的方法来做到这一点?谢谢!
答案 0 :(得分:3)
您是正确的,必须使用mass pay,并且有NVP和SOAP的文档。 Paypal的code sample页面还包含PHP NVP和SOAP个例子。
更好的方法?我不认为有PayPal。除了您为接受资金而支付的任何费用外,您还需要支付每次付款2%的额外费用(最高限额为1美元)。
从NVP示例代码中,粗略了解一个简单的URL编码帖子:
foreach($receiversArray as $i => $receiverData) {
$receiverEmail = urlencode($receiverData['receiverEmail']);
$amount = urlencode($receiverData['amount']);
$uniqueID = urlencode($receiverData['uniqueID']);
$note = urlencode($receiverData['note']);
$nvpStr .= "&L_EMAIL$i=$receiverEmail&L_Amt$i=$amount&L_UNIQUEID$i=$uniqueID&L_NOTE$i=$note";
}
由于您已经使用了IPN,来自MassPay API Doc:
如果您的帐户启用了即时付款通知(IPN),则PayPal会在批量付款交易处理期间为每笔付款发送两个IPN。 IPN将发布到您的帐户个人资料中指定的通知网址。