zyj / alipay
基于支付宝官方skd修改的composer版本
dev-master
2019-04-22 04:05 UTC
Requires
- php: >=5.5
This package is auto-updated.
Last update: 2025-06-22 18:00:44 UTC
README
基于官方sdk3.3.2版本修改的composer版本
环境要求
- php5.5+
- composer
安装方法
composer require zyj/alipay
使用方法
app支付
官方文档
1. 发起支付
$appId = '蚂蚁金服开发平台应用id'; $priKey = '商户私钥'; $pubKey = '支付宝公钥'; $notify_url = '异步回调地址'; $appPayModel = new \zyj\alipay\AppPay([ 'appId' => $appId, 'rsaPrivateKey' => $priKey, 'alipayRsaPublicKey' => $pubKey, 'notifyUrl' => $notify_url, 'isDev' => false //true 沙箱 false 正式 ]); //发起app支付 $result = $appPayModel->request([ //对一笔交易的具体描述信息 非必填 'body' => '测试订单', //商品的标题/交易标题/订单标题/订单关键字等。 必填 'subject' => '测试', // 商户平台唯一订单号 必填 'out_trade_no' => date('YmdHis') . mt_rand(1, 999999), // 该笔订单允许的最晚付款时间,逾期将关闭交易。取值范围:1m~15d。m-分钟,h-小时,d-天,1c-当天(1c-当天的情况下,无论交易何时创建,都在0点关闭)。 该参数数值不接受小数点, 如 1.5h,可转换为 90m。注:若为空,则默认为15d。 'timeout_express' => '30m', 'total_amount' => 0.01 ]); echo $result; exit;
2. 处理回调
$appPayModel = new \zyj\alipay\AppPay([ 'rsaPrivateKey' => $priKey ]); if ($appPayModel->notify()) { //验签成功 $trade_status = $_POST['trade_status']; // trade_status: //WAIT_BUYER_PAY 交易创建,等待买家付款 //TRADE_CLOSED 未付款交易超时关闭,或支付完成后全额退款 //TRADE_SUCCESS 交易支付成功 //TRADE_FINISHED 交易结束,不可退款 /* * 注意:状态TRADE_SUCCESS的通知触发条件是商户签约的产品支持退款功能的前提下,买家付款成功; * 交易状态TRADE_FINISHED的通知触发条件是商户签约的产品不支持退款功能的前提下,买家付款成功;或者,商户签约的产品支持退款功能的前提下,交易已经成功并且已经超过可退款期限。 */ if ($trade_status == 'TRADE_SUCCESS') { } echo 'success'; exit; } else { // 验证签名失败,做相应业务处理 }