700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > php 获取支付宝账号密码 php支付宝单笔转账到支付宝账户 用户提现业务-Go语言中文社区...

php 获取支付宝账号密码 php支付宝单笔转账到支付宝账户 用户提现业务-Go语言中文社区...

时间:2021-04-29 18:05:38

相关推荐

php 获取支付宝账号密码 php支付宝单笔转账到支付宝账户 用户提现业务-Go语言中文社区...

/**

* 支付宝类

* Created by PhpStorm.

* User: smt

*/

namespace Alipay;

require_once 'alipay-sdk-PHP-3.4.2/AopSdk.php';

class Alipay

{

// 商户配置信息

public static function getAlipayAppConfig()

{

return config('alipay_app');

}

/**

* 单笔转账接口

* @param $order_number 订单号

* @param $pay_user_id 收款方user_id

* @param $amount 转账金额,单位为元,精确到小数点后两位

* @param $remark 备注

*/

public static function alipayTransfer($order_number, $pay_user_id, $amount, $remark = '提现')

{

// 我这里打印结果:项目根目录/public/cert/

$isdir = getCertRootPath();//证书位置;绝对路径

$alipay_conf = self::getAlipayAppConfig();

$aop = new AopCertClient();

$aop->gatewayUrl = '/gateway.do';

$aop->appId = $alipay_conf['app_id'];

$aop->rsaPrivateKey = $alipay_conf['rsa_private_key']; // 开发者私钥

$aop->alipayrsaPublicKey = $aop->getPublicKey($isdir . 'alipayCertPublicKey_RSA2.crt');//调用getPublicKey从支付宝公钥证书中提取公钥

$aop->apiVersion = '1.0';

$aop->signType = 'RSA2';

$aop->postCharset = 'utf-8';

$aop->format = 'json';

$aop->isCheckAlipayPublicCert = true;//是否校验自动下载的支付宝公钥证书,如果开启校验要保证支付宝根证书在有效期内

$aop->appCertSN = $aop->getCertSN($isdir . 'alipayappCertPublicKey_001153673295.crt');//调用getCertSN获取证书序列号

$aop->alipayRootCertSN = $aop->getRootCertSN($isdir . 'alipayRootCert.crt');//调用getRootCertSN获取支付宝根证书序列号

$request = new AlipayFundTransToaccountTransferRequest ();

$request->setBizContent("{" .

""out_biz_no":"" . $order_number . ""," .

""payee_type":"ALIPAY_USERID"," .

""trade_no":"" . $order_number . ""," .

""payee_account":"" . $pay_user_id . ""," .

""payee_real_name":""," .

""amount":"" . $amount . ""," .

""remark":"" . $remark . """ .

"}");

$result = $aop->execute($request);

$responseNode = str_replace(".", "_", $request->getApiMethodName()) . "_response";

$resultCode = $result->$responseNode->code;

if (!empty($resultCode) && $resultCode == 10000) {

// 成功,返回业务需要的信息

$data = [

'code' => $result->$responseNode->code,

'msg' => $result->$responseNode->msg,

// 支付宝转账订单号

'order_id' => $result->$responseNode->order_id,

// 商户订单号

'out_biz_no' => $result->$responseNode->out_biz_no,

// 支付时间

'pay_date' => $result->$responseNode->pay_date

];

return $data;

} else {

// 失败记录错误查日志

logs($result, 'alipay_transfer_error');

return false;

}

}

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。