支付宝证书模式支付接口
//支付宝手机网站支付function ali_payweb() {$params = $this->request->param();require_once Env::get('ROOT_PATH')."vendor/ali/aop/AopCertClient.php";require_once Env::get('ROOT_PATH')."vendor/ali/aop/request/AlipayTradeWapPayRequest.php";$aop = new \AopCertClient();$appCertPath = getcwd() ."appCertPublicKey_.crt";//"应用证书路径(要确保证书文件可读),例如:/home/admin/cert/appCertPublicKey.crt";$alipayCertPath = getcwd() ."alipayCertPublicKey_RSA2_.crt";//"支付宝公钥证书路径(要确保证书文件可读),例如:/home/admin/cert/alipayCertPublicKey_RSA2.crt";$rootCertPath = getcwd() ."alipayRootCert_.crt";//"支付宝根证书路径(要确保证书文件可读),例如:/home/admin/cert/alipayRootCert.crt";$aop->gatewayUrl = 'https://openapi.alipay.com/gateway.do';$aop->appId = '';$aop->method = 'alipay.trade.wap.pay';$aop->rsaPrivateKey = '';$aop->alipayrsaPublicKey = $aop->getPublicKey($alipayCertPath);//调用getPublicKey从支付宝公钥证书中提取公钥$aop->return_url = 'www.baidu.com';$aop->notify_url = 'www.baidu.com';$aop->apiVersion = '1.0'; $aop->signType = 'RSA2';$aop->postCharset='utf-8';$aop->format='json';$aop->isCheckAlipayPublicCert = true;//是否校验自动下载的支付宝公钥证书,如果开启校验要保证支付宝根证书在有效期内$aop->appCertSN = $aop->getCertSN($appCertPath);//调用getCertSN获取证书序列号$aop->alipayRootCertSN = $aop->getRootCertSN($rootCertPath);//调用getRootCertSN获取支付宝根证书序列号 $request = new \AlipayTradeWapPayRequest();$out_trade_no = '202108170101'.rand(10,99);$total_amount = 0.01;$subject = '测试商品';$product_code ='QUICK_WAP_WAY';$time_expire = '2022-08-01 22:00:00';$request->setNotifyUrl('');$request->setReturnUrl('');$request->setBizContent("{" ." \"out_trade_no\":\"$out_trade_no\"," ." \"total_amount\":$total_amount," .//" \"product_code\":\"QUICK_WAP_WAY\"," . " \"time_expire\":\"$time_expire\"," ." \"subject\":\"$subject\"" ."}");$result = $aop->pageExecute($request);echo $result;}
//支付宝当面付-付款码支付
function alipay_card(){$params = $this->request->param();if(empty($params['auth_code'])){die('缺少参数');}$rsaPrivateKey = $alipayrsaPublicKey = '11';$auth_code = $params['auth_code'];$out_trade_no = '202108170101'.rand(10,99);$total_amount = 0.01;$subject = '测试商品';$product_code ='QUICK_WAP_WAY';require_once Env::get('ROOT_PATH')."vendor/ali/aop/AopCertClient.php";require_once Env::get('ROOT_PATH')."vendor/ali/aop/request/AlipayTradePayRequest.php";$aop = new \AopCertClient();$appCertPath = getcwd() ."appCertPublicKey_.crt";//"应用证书路径(要确保证书文件可读),例如:/home/admin/cert/appCertPublicKey.crt";$alipayCertPath = getcwd() ."alipayCertPublicKey_RSA2_.crt";//"支付宝公钥证书路径(要确保证书文件可读),例如:/home/admin/cert/alipayCertPublicKey_RSA2.crt";$rootCertPath = getcwd() ."alipayRootCert_.crt";//"支付宝根证书路径(要确保证书文件可读),例如:/home/admin/cert/alipayRootCert.crt";$aop->gatewayUrl = 'https://openapi.alipay.com/gateway.do';$aop->appId = '';$aop->method = 'alipay.trade.wap.pay';$aop->rsaPrivateKey = '';$aop->alipayrsaPublicKey = $aop->getPublicKey($alipayCertPath);//调用getPublicKey从支付宝公钥证书中提取公钥$aop->apiVersion = '1.0';$aop->signType = 'RSA2';$aop->postCharset='utf-8';$aop->format='json';$aop->isCheckAlipayPublicCert = true;//是否校验自动下载的支付宝公钥证书,如果开启校验要保证支付宝根证书在有效期内$aop->appCertSN = $aop->getCertSN($appCertPath);//调用getCertSN获取证书序列号$aop->alipayRootCertSN = $aop->getRootCertSN($rootCertPath);//调用getRootCertSN获取支付宝根证书序列号$request = new \AlipayTradePayRequest();$request->setBizContent("{" ." \"out_trade_no\":\"$out_trade_no\"," ." \"total_amount\":$total_amount," ." \"scene\":\"bar_code\"," . " \"auth_code\":\"$auth_code\"," . " \"subject\":\"$subject\"" ."}");$result = $aop->execute($request);dump($result);$responseNode = str_replace(".", "_", $request->getApiMethodName()) . "_response";$resultCode = $result->$responseNode->code;dump($resultCode);if(!empty($resultCode)&&$resultCode == 10000){echo "成功";} else {echo "失败";}}
//支付宝提现-转账到支付宝账户function ali_transfer() {$params = $this->request->param();if(empty($params['mobile'])){return json_encode(array('code'=>201,'msg'=>'缺少mobile参数'));}if(empty($params['name'])){return json_encode(array('code'=>201,'msg'=>'缺少name参数'));}$mobile = $params['mobile'];$name = $params['name'];$pay = new Pay();require_once Env::get('ROOT_PATH')."vendor/ali/aop/AopCertClient.php";require_once Env::get('ROOT_PATH')."vendor/ali/aop/request/AlipayFundTransUniTransferRequest.php";$aop = new \AopCertClient(); $appCertPath = getcwd() ."appCertPublicKey_.crt";//"应用证书路径(要确保证书文件可读),例如:/home/admin/cert/appCertPublicKey.crt"; $alipayCertPath = getcwd() ."alipayCertPublicKey_RSA2_.crt";//"支付宝公钥证书路径(要确保证书文件可读),例如:/home/admin/cert/alipayCertPublicKey_RSA2.crt"; $rootCertPath = getcwd() ."alipayRootCert_.crt";//"支付宝根证书路径(要确保证书文件可读),例如:/home/admin/cert/alipayRootCert.crt"; $aop->gatewayUrl = 'https://openapi.alipay.com/gateway.do'; $aop->appId = ''; $aop->rsaPrivateKey = ''; $aop->alipayrsaPublicKey = $aop->getPublicKey($alipayCertPath);//调用getPublicKey从支付宝公钥证书中提取公钥 $aop->apiVersion = '1.0'; $aop->signType = 'RSA2'; $aop->postCharset='utf-8'; $aop->format='json'; $aop->isCheckAlipayPublicCert = true;//是否校验自动下载的支付宝公钥证书,如果开启校验要保证支付宝根证书在有效期内 $aop->appCertSN = $aop->getCertSN($appCertPath);//调用getCertSN获取证书序列号 $aop->alipayRootCertSN = $aop->getRootCertSN($rootCertPath);//调用getRootCertSN获取支付宝根证书序列号 $request = new \AlipayFundTransUniTransferRequest(); $out_biz_no = date("YmdHis").rand(100,999);$trans_amount = 0.1;//TRANS_ACCOUNT_NO_PWD产品取值范围[0.1,100000000]$order_title = '未来面馆-提现'; $request->setBizContent("{" ." \"out_biz_no\":\"$out_biz_no\"," ." \"trans_amount\":$trans_amount," .// 订单总金额,单位为元,精确到小数点后两位, " \"product_code\":\"TRANS_ACCOUNT_NO_PWD\"," . // 单笔无密转账到支付宝账户固定 TRANS_ACCOUNT_NO_PWD 产品取值范围[0.1,100000000] " \"biz_scene\":\"DIRECT_TRANSFER\"," ." \"order_title\":\"$order_title\"," ." \"payee_info\":{" ." \"identity\":\"$mobile\"," .// 支付宝登录号,支持邮箱和手机号格式 " \"identity_type\":\"ALIPAY_LOGON_ID\"," ." \"name\":\"$name\"" .// 参与方真实姓名,如果非空,将校验收款支付宝账号姓名一致性。当identity_type=ALIPAY_LOGON_ID时,本字段必填。 " }," ." \"remark\":\"\"," ." \"business_params\":\"{\\\"sub_biz_scene\\\":\\\"REDPACKET\\\"}\"" ."}");$result = $aop->execute($request); $responseNode = str_replace(".", "_", $request->getApiMethodName()) . "_response"; $resultCode = $result->$responseNode->code; dump($resultCode);$message = $result->$responseNode->msg;dump($message);if (!empty($resultCode) && $resultCode == 10000) {//return array('code'=>200,'msg'=>'提现成功');} else {$message = $result->$responseNode->sub_msg;//退款失败有结果dump($message);//return array('code'=>221,'msg'=>'提现失败('.$message.")");}}
支付宝证书模式支付接口相关推荐
- 支付宝证书模式(转账给其他支付宝)
支付宝证书模式(转账给其他支付宝) 因为支付宝的加密方式要求资金类必须用证书方式加密,所以... 1.去生成crt证书 2.开始开发 初始化 //证书模式vendor("Alipay.aop ...
- 对接支付宝手机网站支付接口,alin10071
最近项目要增加支付宝扫二维码实现h5支付的功能,我们采用了调用支付宝手机网站支付接口:alipay.trade.wap.pay 但是每次调起返回都是 无可用支付方式 测了一天才发现是因为我的支付宝余额 ...
- 搞定支付接口(一) 支付宝即时到账支付接口详细流程和代码
搞定支付接口(一) 支付宝即时到账支付接口详细流程和java代码 为避免你们和我一样被支付接口搞得焦头烂额,写一个从申请开始到能收到钱为止的详细教程,实际上各个语言都可以用来集成支付接口,我用java ...
- 11.9支付宝线上支付接口使用
2018-11-9 14:07:40 支付宝线上支付接口使用 放上github连接: https://github.com/TrueNewBee/pythonDemo/blob/master/Alip ...
- java 支付宝h5网页支付接口,移动端h5网页调用支付宝支付接口
领导第一次让我做h5支付宝支付的时候,去了支付宝开放平台,一顿上上下下左左右右,看完了长呼一口气.这个支付好像没我啥事儿啊!小伙伴儿们自行查看:https://opendocs.alipay.com/ ...
- java调用支付宝扫码支付接口
说明: 由于没有商户账号,所以本文使用的是沙箱账号,本质跟真实账号是一样的,是支付宝为了方便开发人员开发调试而推出的策略.在真实开发中将商户公钥等修改为真实的商户即可. 支付基本流程 用户下单 商户账 ...
- 支付宝手机网页支付接口调用
1.前期工作 1.1 登陆支付宝官网 网址:https://www.alipay.com/ 1.2 下载手机网站支付的demo的步骤 1.2.1 先点击API,选择手机网站支付模块点击 1.2.2 点 ...
- ASP.NET Core2.0 环境下MVC模式的支付宝PC网站支付接口-沙箱环境开发测试
1.新建.NET Core web项目 2.Controllers-Models-Views 分三个大部分 3.下载安装最新sdk 官方的SDK以及Demo都还是.NET Framework的,根据官 ...
- 支付宝:APP支付接口2.0(alipay.trade.app.pay)
本章是跟支付宝进行签约对接商户服务端(也就是自行开发的JAVA后端),做此记录. 文献基本都来源于支付宝,详情请看支付宝官方文档:APP支付 目录 系统交互图 服务端demo 配置参数 获取APPID ...
最新文章
- 程序员缺乏经验的 7 种表现
- 动态改变Android控件大小
- python_字符串有时可以比较大小哦!
- DNS Tunneling及相关实现——总之,你发起攻击都需要一个DNS server,下载一些工具作为client发起数据,server收集数据并响应...
- crontab -e 运行python的脚本的坑
- IntelliJ IDEA for Mac中Maven菜单用法详解
- 凹入表形式打印树形结构_体育场径向环形大悬挑钢结构综合施工技术研究
- Java案例:编译器生成桥方法
- 以拼多多为例,中国互联网企业在农业上都做了哪些努力?
- 使用 Kotlin Script 自定义实现项目开发脚手架
- windows10彻底杀死卡死的顽固进程
- vc 编译的那些事儿 - wowolook的专栏 - CSDN博客
- STM32串口通讯——中断方式
- 毕向东java笔记ppt,毕向东java学习笔记.doc
- 电力拖动计算机系统考试,电力拖动自动控制系统__考试复习题.doc
- 像素(px)与厘米的关系
- 操作系统的简介(UNIX、Linux)
- Python3基础教程2——Python的标准数据类型
- python3字典详解_Python3字典操作详解 Python3字典操作大全
- 西安邮电大学计算机学院学生会,2017年度计算机学院教职工代表大会工作报告.doc...
热门文章
- LIRO:紧耦合激光-惯性-测距里程计
- Nginx rewrite路由重写
- nmealib linux编译,GPS nmealib学习笔记
- try {}里有一个 return 语句,那么紧跟在这个 try 后的 finally {}里的 code 会不会被执行,什么时候被执行,在 return 前还是后?
- 1、蓝牙核心技术了解(蓝牙协议、架构、硬件和软件笔记)
- logback系列之二:输出日志到文件
- pytorch 将数据集加载到内存后再训练
- C语言家谱管理程序,[C语言]家谱 - 代码贴 - BCCN
- python 微博图片爬虫 不用cookie
- 宝塔如何安装多版本php,安装Lnmp(多PHP版本与宝塔)