下载最新的支付宝demo https://docs.open.alipay.com/203/105910
1. 手机版支付接口 目录
控制器调用支付接口
Vendor('alipay.wappay.service.AlipayTradeService');
Vendor('alipay.wappay.buildermodel.AlipayTradeWapPayContentBuilder');
// //商户订单号,商户网站订单系统中唯一订单号,必填
// //$out_trade_no = $_POST['WIDout_trade_no'];
// $out_trade_no = '27201'.date('YmdHis',time());
// $total_amount=0.01;
// //商品描述,可空
// $body = $_POST['WIDbody'];
//超时时间
$timeout_express="1m";
$payRequestBuilder = new \AlipayTradeWapPayContentBuilder();
$config=cons();
$body=$out_trade_no=$tradeno;
$subject='账号充值';
$out_trade_no=$out_trade_no=$tradeno;
$total_amount=0.01;
$payRequestBuilder->setBody($body);
$payRequestBuilder->setSubject($subject);
$payRequestBuilder->setOutTradeNo($out_trade_no);
$payRequestBuilder->setTotalAmount($total_amount);
$payRequestBuilder->setTimeExpress($timeout_express);
$payResponse = new \AlipayTradeService($config);
$result=$payResponse->wapPay($payRequestBuilder,$config['return_url'],$config['notify_url']);
return ;
//对 H5支付进行补充
文件 目录 是 MD5方式支付接口 上面的 rsa 这个比较简单 参数 只要 商户 pid 和 MD5 秘钥就行了
文件下载地址 https://pan.baidu.com/s/1Fzn4vrjMLjdUHJsFCH5FYw
下载就行了
主要核心文件就是 lib 其实 别的 自己整合就好了
代码如下
/↓↓↓↓↓↓↓↓↓↓请在这里配置您的基本信息↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ //合作身份者ID,签约账号,以2088开头由16位纯数字组成的字符串,查看地址:https://b.alipay.com/order/pidAndKey.htm $alipay_config['partner'] = ''; //收款支付宝账号,以2088开头由16位纯数字组成的字符串,一般情况下收款账号就是签约账号 $alipay_config['seller_id'] = $alipay_config['partner']; // MD5密钥,安全检验码,由数字和字母组成的32位字符串,查看地址:https://b.alipay.com/order/pidAndKey.htm $alipay_config['key'] = ''; // 服务器异步通知页面路径 需http://格式的完整路径,不能加?id=123这类自定义参数,必须外网可以正常访问 $alipay_config['notify_url'] = "http://".$_SERVER['SERVER_NAME']."/Help/"; // 页面跳转同步通知页面路径 需http://格式的完整路径,不能加?id=123这类自定义参数,必须外网可以正常访问 $alipay_config['return_url'] ="http://".$_SERVER['SERVER_NAME']; //签名方式 $alipay_config['sign_type'] = strtoupper('MD5'); //字符编码格式 目前支持utf-8 $alipay_config['input_charset']= strtolower('utf-8'); //ca证书路径地址,用于curl中ssl校验 //请保证cacert.pem文件在当前文件夹目录中 $alipay_config['cacert'] = getcwd().'\\cacert.pem'; //访问模式,根据自己的服务器是否支持ssl访问,若支持请选择https;若不支持请选择http $alipay_config['transport'] = 'http'; // 支付类型 ,无需修改 $alipay_config['payment_type'] = "1"; // 产品类型,无需修改 $alipay_config['service'] = "alipay.wap.create.direct.pay.by.user"; import('ORG.Pay.lib.alipay_submit'); //商户订单号,商户网站订单系统中唯一订单号,必填 // $out_trade_no = $_POST['WIDout_trade_no']; //订单名称,必填 //$subject = $_POST['WIDsubject']; //付款金额,必填 // $total_fee = $_POST['WIDtotal_fee']; //收银台页面上,商品展示的超链接,必填 $show_url = "http://".$_SERVER['SERVER_NAME']; //商品描述,可空 $body = '支付'; // print_r($alipay_config);die; //构造要请求的参数数组,无需改动 $parameter = array( "service" => $alipay_config['service'], "partner" => $alipay_config['partner'], "seller_id" => $alipay_config['seller_id'], "payment_type" => $alipay_config['payment_type'], "notify_url" => $alipay_config['notify_url'], "return_url" => $alipay_config['return_url'], "_input_charset" => trim(strtolower($alipay_config['input_charset'])), "out_trade_no" => $ordernum, "subject" => '充值', "total_fee" => $money, "show_url" => $show_url, "app_pay" => "Y",//启用此参数能唤起钱包APP支付宝 "body" => $body, //其他业务参数根据在线开发文档,添加参数.文档地址:https://doc.open.alipay.com/doc2/detail.htm?spm=a219a.7629140.0.0.2Z6TSk&treeId=60&articleId=103693&docType=1 //如"参数名" => "参数值" 注:上一个参数末尾需要“,”逗号。 ); // print_r($parameter);die; //建立请求 $alipaySubmit = new AlipaySubmit($alipay_config); $html_text = $alipaySubmit->buildRequestForm($parameter,"get", "确认"); echo $html_text;
2.电脑版支付接口demo
demo 目录
电脑版的主要调用的是pagepay文件方法
控制器 这样加载
Vendor('alipay.pagepay.service.AlipayTradeService');
Vendor('alipay.pagepay.buildermodel.AlipayTradePagePayContentBuilder');
// //商户订单号,商户网站订单系统中唯一订单号,必填
// //$out_trade_no = $_POST['WIDout_trade_no'];
// $out_trade_no = '27201'.date('YmdHis',time());
// $total_amount=0.01;
// //商品描述,可空
// $body = $_POST['WIDbody'];
//超时时间
// $timeout_express="1m";
$payRequestBuilder = new \AlipayTradePagePayContentBuilder();
$config=cons();
$body=$out_trade_no=$tradeno;
$subject='账号充值';
$out_trade_no=$out_trade_no=$tradeno;
$total_amount=0.01;
$payRequestBuilder->setBody($body);
$payRequestBuilder->setSubject($subject);
$payRequestBuilder->setOutTradeNo($out_trade_no);
$payRequestBuilder->setTotalAmount($total_amount);
// $payRequestBuilder->setTimeExpress($timeout_express);
$payResponse = new \AlipayTradeService($config);
$result=$payResponse->pagePay($payRequestBuilder,$config['return_url'],$config['notify_url']);
return ;
和手机版 很相似的, 然后配置项在 common function.php 添加 这个方法
function cons(){
}//填写配置