php - 在php中集成paypal payout rest API的过程是什么
问题描述
我正在研究 PayPal Payout API。我没有得到完整的支付方式的确切流程。一切正常,但仍然有很多错误。我和移动应用程序开发人员正在做什么。
移动 API 调用服务器的金额,以便服务器端集成了 PayPal SDK,我在其中调用 PayPal 并进行交易。
问题是,无论付款人电子邮件是否在 Paypal 中注册,它都会返回状态 PENDING 而没有任何交易 ID。
我已经在 PayPal 上设置了一个 IPN 监听器,它会在支付状态更新时拨打电话。但它返回 transaction_id 并且在支付时我没有得到交易 ID。
我不知道我需要用它做什么。请如果您不明白,您可以发表评论。
我正在使用简单的付款代码。
$headers = array(
'Content-Type:application/json',
'Authorization:Bearer '.$accsessToken,
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://api.sandbox.paypal.com/v1/payments/payouts?sync_mode=false");
// curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 1);
curl_setopt($ch, CURLOPT_NOSIGNAL, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
$result = curl_exec($ch);
$response = json_decode($result, 1);
$payoutBatchId = $response['batch_header']['payout_batch_id'];
$headers = array(
'Content-Type:application/json',
'Authorization:Bearer '.$accsessToken,
);
unset($ch);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://api.sandbox.paypal.com/v1/payments/payouts/".$payoutBatchId);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt( $ch, CURLOPT_CUSTOMREQUEST, 'GET' );
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
$response = json_decode($result, 1);
dd($response);
解决方案
我认为你应该使用PHP Paypal SDK。有一些简单的例子。
希望这有帮助。
推荐阅读
- keras - 获取由 TimeDistributed 层包裹的嵌套中间模型的输出
- python - 'this'是python中'self'的cpp等价物吗?
- javascript - 正在寻找一种使用 Google Apps 脚本或 DOCS API 为 google 文档中的段落添加边框的方法?
- javascript - 我如何从 Html FORM 接收数据到我的电子邮件?
- c# - Linux 上的 Visual Studio 2019
- python - wxPython MainLoop() 崩溃
- python - 如何安排python脚本在aws中以预定的时间间隔运行
- node.js - AWS 简单队列服务 (SQS) 可见性超时 - 设置最大重试次数?
- web-applications - 如何保持安装 PWA 的直接链接
- sql - Sql Server 选择查询:按表月份的 Sum 和 Last 输入