paypal支付接口开发--token获取,订单详情获取,交易信息获取

admin1年前php516

代码下载

完整代码下载

<?php 
//获取token
function get_token($clientId,$secret)
{
    

$uri = 'https://api.sandbox.paypal.com/v1/oauth2/token';
//for live production use $uri = 'https://api.paypal.com/v1/oauth2/token';
 

 
$ch = curl_init();
 
curl_setopt($ch, CURLOPT_URL, $uri);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSLVERSION , 6); //NEW ADDITION
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($ch, CURLOPT_USERPWD, $clientId.":".$secret);
curl_setopt($ch, CURLOPT_POSTFIELDS, "grant_type=client_credentials");
 
$result = curl_exec($ch);
$access_token = '';
if(empty($result))die("Error: No response.");
else
{
    $json = json_decode($result);
    $access_token = $json->access_token;
}
return $access_token;
curl_close($ch);

}
$clientId = '*********************';
$secret = '*********************';

//输出token
echo  get_token($clientId,$secret);
$access_token =get_token($clientId,$secret);

//获取交易流程

$url = "https://api.sandbox.paypal.com/v2/payments/captures/订单号";
$accessToken=$access_token;
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_POST, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, array(
    'Authorization: Bearer ' . $accessToken,
    'Accept: application/json',
    'Content-Type: application/json'
));
$response = curl_exec($curl);




//获取订单详情

$url = "https://api.sandbox.paypal.com/v2/checkout/orders/订单号";
$accessToken=$access_token;
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_POST, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, array(
    'Authorization: Bearer ' . $accessToken,
    'Accept: application/json',
    'Content-Type: application/json'
));
$response = curl_exec($curl);
 
print_r($response);








 ?>


相关文章

把字符按照逗号分割成数组

 <?php $cars=$_POST['shuju'];$cars=explode(',', $cars);print_r($cars)&n...

php提示Notice: Undefined index解决方法与php未定义的变量提示错误的解决方法

在php.ini配置文件里设置把error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT修改成error_reporting = E_AL...

php post undefined index,PHP 中提示undefined index的解决方案

声明为空isset($_POST['user_email']),或者,empty($_POST['user_email'])在php.ini中设置error_repor...

php过滤emod与特殊字符

<?php  function xml_entities($string) { //过滤emod $ts_zifu= json_encode($st...

php.ini 7.3设置

date.timezone = PRCdisplay_errors = On网络保存图片,以及微信获取手机号码: windows下的PHP,只需要到php.ini中把前面的&nb...

PHP保存数组到数据库

数组是 PHP 开发中使用最多的数据类型之一,对于结构化的数据尤为重要。很多时候我们需要把数组保存到数据库中,实现对结构化数据的直接存储和读取。其中一个案例就是,对于 Form 提交的多选 check...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。