加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – PayPal – 获取经常性资料的交易详情

发布时间:2020-12-13 16:27:52 所属栏目:PHP教程 来源:网络整理
导读:在进行TransactionSearch请求时,我收到与交易相关的事务的TRANSACTIONID字段的交易列表,对应于定期付款,例如. “I-BRPN2RUD8W0G”(当前是假的) 对于其余的事务 – 我通常使用17个单字节字母数字字符串.这意味着,对于定期付款,PayPal返回ProfileID,但不返回Tr
在进行TransactionSearch请求时,我收到与交易相关的事务的TRANSACTIONID字段的交易列表,对应于定期付款,例如. “I-BRPN2RUD8W0G”(当前是假的)

对于其余的事务 – 我通常使用17个单字节字母数字字符串.这意味着,对于定期付款,PayPal返回ProfileID,但不返回TransactionID.

因此,当我通过传递到PayPal的交易ID请求GetTransactionDetails时,我会收到普通付款和错误的有效的详细信息,并且对于经常性付款,我收到了“交易ID无效”的信息.

您将需要根据Sanjiv的建议设置IPN.您可以按照 IPN Variables获取字段.如果退款,您还需要使用parent_txn_id

如果你是新的,发现很难,可以使用IPN listener class,然后集成下面的代码

$listener = new IpnListener();

try {
    $verified = $listener->processIpn();
} catch (Exception $e) {
    return Log::error($e->getMessage());
}

if ($verified) {

$data = $_POST;
$user_id = json_decode($data['custom'])->user_id;

$subscription = ($data['mc_gross_1'] == '10') ? 2 : 1;

$txn = array(
    'txn_id'       => $data['txn_id'],'user_id'      => $user_id,'paypal_id'    => $data['subscr_id'],'subscription' => $subscription,'expires'      => date('Y-m-d H:i:s',strtotime('+1 Month')),);

Payment::create($txn);

} else {
    Log::error('Transaction not verified');
}

将此文件代码保存在文件中,让ipn.php和现在为您的paypal帐户分配此文件的路径.

PS:确保您的IPN文件是公开可访问的URL.不要使用本地或受限的服务器.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读