银联支付
银联支付目前支持 2 种支付方法,对应的支付 method 如下:
method | 说明 | 参数 | 返回值 |
---|---|---|---|
web | 电脑在线网关支付 | array $order | Collection |
wap | 手机网页支付 | array $order | Collection |
# 银联支付配置
$unionConfig = [
'mchid' => '', // 商户号
'sign_pwd' => '', //商户私钥证书密码
'sign_path' => './cert/acp_test_sign.pfx', //商户私钥证书(签名使用)5.1.0
// 'sign_path' => './cert/700000000000001_acp.pfx', //签名证书路径5.0.0
'verify_path' => './cert/verify_sign_acp.cer', //银联公钥证书(商户验签使用)
'acp_root' => './cert/acp_test_root.cer', //根证书
'acp_middle' => './cert/acp_test_middle.cer', //中级证书
'notify_url' => '', // 异步接收支付状态
'return_url' => '', // 同步接收支付状态
'is_sandbox' => true, // 是否使用沙箱调试,true使用沙箱,false不使用,默认false不使用
];
提示
注意配置信息相关备注
除必传参数外,其他可选参数如下
method | 参数名 | 类型 | 描述 |
---|---|---|---|
time_expire | 交易结束时间 | string[1,64] | 订单失效时间,传入类型(订单失效剩余秒数 2022-02-22 14:22:22 2022年02月22日 14:22:22 有效时间戳) |
reqReserved | 请求方保留域 | string[1,1024] | 商户自定义保留域,交易应答时会原样返回 |
电脑在线网关支付
请求示例
$pay = new \fengkui\Pay\Unionpay($unionConfig);
// 订单基本信息
$order = [
'body' => 'subject-测试', // 商品描述
'order_sn' => time(), // 商户订单号
'total_amount' => 1, // 订单金额,以分为单位
];
$result = $pay->web($order); // 直接跳转链接
echo $result;
订单配置参数
所有订单配置参数和官方无异,相关参数与返回请查看「请求参数」。
返回示例
<form id='pay_form' name='pay_form' action='https://gateway.test.95516.com/gateway/api/frontTransReq.do' method='POST'><input type='hidden' name='signMethod' value='01'/><input type='hidden' name='version' value='5.1.0'/><input type='hidden' name='encoding' value='UTF-8'/><input type='hidden' name='merId' value='777290058207330'/><input type='hidden' name='accessType' value='0'/><input type='hidden' name='currencyCode' value='156'/><input type='hidden' name='certId' value='69903319369'/><input type='hidden' name='txnTime' value='20240614081945'/><input type='hidden' name='bizType' value='000201'/><input type='hidden' name='txnType' value='01'/><input type='hidden' name='txnSubType' value='01'/><input type='hidden' name='channelType' value='07'/><input type='hidden' name='orderDesc' value='subject-测试'/><input type='hidden' name='orderId' value='1718353185'/><input type='hidden' name='txnAmt' value='1'/><input type='hidden' name='signature' value='mekBhdS7HAiI+Cv6LJ2NFYsZNDuoy1wDq40pKoH5HxL0sogCmAlphXxgTeHF8gLm49iNoowhnNTZJ4DXsmqHQhFyjOVMsarYXtilmoUnTPEPdfmzoVWjHrsG+C3mesQddYHJe6pc+aeJdbgwHkf3qb7kU4DIvTZRbuYmwo8h92Vl4+uvSIRMwWldPzcCvBEKCXKahYyXwhve2yOwM/3YEzJlWHewtiTCFeplI8P2LDN2kaPOImIBgJiBoZU0WpSbWcnxX+88BjZcxXnqaj25LWmagrKwDwSq5c5m0+lSANpshHoLFc7Q7p4aoGTcAGW+1rJ7oUQxsG5RzaRr84Jw=='/><input type='submit' value='ok' style='display:none;''></form><script>document.forms['pay_form'].submit();</script>
手机网页支付
请求示例
$pay = new \fengkui\Pay\Unionpay($unionConfig);
$order = [
'body' => 'subject-测试', // 商品描述
'order_sn' => time(), // 商户订单号
'total_amount' => 1, // 订单金额,以分为单位
];
$result = $pay->wap($order); // 直接跳转
echo $result;
订单配置参数
所有订单配置参数和官方无异,相关参数与返回请查看「请求参数」。
返回示例
<form id='pay_form' name='pay_form' action='https://gateway.test.95516.com/gateway/api/frontTransReq.do' method='POST'><input type='hidden' name='signMethod' value='01'/><input type='hidden' name='version' value='5.1.0'/><input type='hidden' name='encoding' value='UTF-8'/><input type='hidden' name='merId' value='777290058207330'/><input type='hidden' name='accessType' value='0'/><input type='hidden' name='currencyCode' value='156'/><input type='hidden' name='certId' value='69903319369'/><input type='hidden' name='txnTime' value='20240614081945'/><input type='hidden' name='bizType' value='000201'/><input type='hidden' name='txnType' value='01'/><input type='hidden' name='txnSubType' value='01'/><input type='hidden' name='channelType' value='07'/><input type='hidden' name='orderDesc' value='subject-测试'/><input type='hidden' name='orderId' value='1718353185'/><input type='hidden' name='txnAmt' value='1'/><input type='hidden' name='signature' value='mekBhdS7HAiI+Cv6LJ2NFYsZNDuoy1wDq40pKoH5HxL0sogCmAlphXxgTeHF8gLm49iNoowhnNTZJ4DXsmqHQhFyjOVMsarYXtilmoUnTPEPdfmzoVWjHrsG+C3mesQddYHJe6pc+aeJdbgwHkf3qb7kU4DIvTZRbuYlmwo8h92Vl+uvSIRMwWldPzcCvBEKCXKahYyXwhve2yOwM/3YEzJlWHewtiTCFeplI8P2LDN2kaPOImIBgJiBoZU0WpSbWcnxX+88BjZcxXnqaj25LWmagrKwDwSq5c5m0+lSANpshHoLFc7Q7p4aoGTcAGW+1rJ7oUQxsG5RzaRr84Jw=='/><input type='submit' value='ok' style='display:none;''></form><script>document.forms['pay_form'].submit();</script>