支付宝单笔转账demo (改配置直接用)
支付宝接口说明文档 https://docs.open.alipay.com/api_28/alipay.fund.trans.toaccount.transfer
需要注意的是:rsa的 公钥和私钥 是不要空格,换行 和 开始和前后的那个 -----BEGIN PUBLIC KEY----- -----END PUBLIC KEY----- 的,就是一行字符串 ,还有就是一定搞对了 对应的值。我在做的时候公钥错了, 把报错提示全部打开,然后根据它抛出的错误一点点打印,很快能帮助你找出原因。还有就是做好加log日志。养成好习惯方便以后出问题查找问题原因。
<?php /***调试的时候打开这个,可以显示出来抛出的错误,帮助快速解决问题***/
// ini_set("display_errors","on");
// error_reporting(E_ALL); require_once dirname(dirname(dirname(__FILE__)))."/plugin/alipay_transfer/AopSdk.php";//只要引用AopSdk.php这个文件即可,sdk不用动
$c = new AopClient;
$c->gatewayUrl = "https://openapi.alipay.com/gateway.do";
$c->appId = "2017000000";//app_id 非 parter_id
$c->rsaPrivateKey = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx';//注意这是一行去头去尾的支付宝的rsa私钥
$c->format = "json";
$c->charset= "utf-8";
$c->signType= "RSA";
$c->alipayrsaPublicKey ='xxxxxxxxxxxxxxxxxxxxxxxxxx';//注意这是一行去头去尾的支付宝公钥 $request = new AlipayFundTransToaccountTransferRequest();
$arr['out_biz_no'] = "xxxxx"//商户转账唯一订单号
$arr['payee_type'] = "ALIPAY_LOGONID";//支付宝登录号,支持邮箱和手机号格式。
$arr['payee_account'] = "xxxxx@qq.com";//收款方账户。
$arr['amount'] = number_format("10",2);// 转账金额,单位:元。 只支持2位小数,
$arr['payer_show_name'] = "xxx公司";// 转账记录里显示的名字
$arr['payee_real_name'] = "张三";//支付宝用户姓名,
$arr['remark'] = "备注";// 备注, $request->setBizContent(json_encode($arr));
// echo "<pre>";
$response= $c->execute($request);
// print_r($response->response);//调试过程有问题可以打印这个看看,根据抛出的错误位置一点点往上打印,基本能查出问题所在
$resultCode = $response->alipay_fund_trans_toaccount_transfer_response->code; $log['resultCode'] = $response->alipay_fund_trans_toaccount_transfer_response->code;
$log['msg'] = $response->alipay_fund_trans_toaccount_transfer_response->msg;
$log['sub_msg'] = $response->alipay_fund_trans_toaccount_transfer_response->sub_msg;
$log['out_biz_no'] = $response->alipay_fund_trans_toaccount_transfer_response->out_biz_no;
$log['order_id'] = $response->alipay_fund_trans_toaccount_transfer_response->order_id;
$log['pay_date'] = $response->alipay_fund_trans_toaccount_transfer_response->pay_date;
$log['sign'] = $response->sign; file_put_contents("/data/log/ali_transfer.log",json_encode($log)."\r\n",FILE_APPEND);//建议做日志,方便后期查找问题 if(!empty($resultCode)&&$resultCode == 10000){
echo "成功";
} else {
$sub_msg = $response->alipay_fund_trans_toaccount_transfer_response->sub_msg;
echo $sub_msg; //失败说明
}
支付宝单笔转账demo (改配置直接用)的更多相关文章
- Python支付宝单笔转账接口
开发信息 接口加签方式为证书模式 证书模式好处是可以使用支付宝的转账到支付宝账户,也就是提现功能,公钥模式不能实现转账到支付宝账户. 此DEMO利用单笔转账到支付宝账户接口[提现功能]用户可以通过此D ...
- Java 支付宝支付,退款,单笔转账到支付宝账户(支付宝订单退款)
上一篇写到支付宝的支付,这代码copy下来就能直接用了, 我写学习文档时会经常贴 官方参数文档的案例地址, 因为我觉得 请求参数,响应参数说明 官方文档整理的很好,毕竟官方不会误导大家. 我学一个 ...
- APP开通支付宝支付 转账功能
注意:支付宝单笔转账到账户功能的准入条件 首先要在商家中心注册,从商家中心可以跳转到开放平台. 登陆蚂蚁金服开放平台 1 开发中心->网页&移动应用 2 根据需求选择应用类型创建应用 3 ...
- 如何使用沙箱测试单笔转账到支付宝账号(php版) https://openclub.alipay.com/read.php?tid=1770&fid=28
说明: 本帖是利用支付宝沙箱测试电脑网站支付接口 测试环境:Apache2.4.23 +php 5.6.25 沙箱环境测试正式环境请修改网关为下方值 复制代码 1 正式环境网关:htt ...
- 支付宝即时到账DEMO配置与使用
支付宝网页即时到账功能,可让用户在线向开发者的支付宝账号支付资金,交易资金即时到账,帮助开发者快速回笼资金. 当用户进行支付操作时候可以直接跳转到支付宝支付页面进行支付 1. 准备 关于支付宝签约即时 ...
- Java 支付宝支付,退款,单笔转账到支付宝账户(单笔转账到支付宝账户)
上次分享了支付宝订单退款的代码,今天分享一下支付宝转账的操作. 现在是有一个余额提现的功能,本来是打算做提现到银行卡的,但是客户嫌麻烦不想注册银联的开放平台账户,就说先提现到支付宝就行,二期再做银行 ...
- 微信APP支付,支付宝APP支付demo
最近公司新开发的APP中,需要集成微信支付和支付宝支付,2个平台申请的都是APP支付.这是个人第一次单独的,完整的做完2个平台的支付. 这里我主要用到了2个接口:支付接口,订单查询接口,虽然2个平台的 ...
- Java 支付宝支付,退款,单笔转账到支付宝账户(支付宝支付)
最近一直在接触第三方,刚接入完支付宝的API做一下总结,个人能力薄弱有不对的地方望指教. 做的是一个小型电商项目,所以会接入第三方的支付和登入功能, 第一次接入第三方撸了很多官方文档. 进入主题, ...
- .NET+MVC+Alipay的Sdk版单笔转账到支付宝账户接口
public class AliPayController : Controller { // GET: AliPay public ActionResult Index() { return Red ...
随机推荐
- springboot整合jpa和mybatis实现主从复制
百度多方参考终于配出我自己的了,以下仅供参考 参考https://www.cnblogs.com/cjsblog/p/9712457.html 代码 首先数据源配置 spring.datasource ...
- Easy Excel导出
@GetMapping(value = "/down2") public void down2(HttpServletResponse response) throws Excep ...
- PHPExcel SUM 返回0
使用PHPExcel 导出Excel最后的代码是: $objWriter = PHPExcel_IOFactory::createWriter($this->excel, 'Excel2007' ...
- java char <-> int
int = char - '0' or Character.getNumericValue(char ch) char = (char)int
- SpringBoot_02_SpringBoot的配置文件
1.SpringBoot配置文件 SpringBoot是基于约定的,所以很多配置都有默认值,但如果想使用自己的配置替换默认配置的话,就可以使用application.properties或者appli ...
- CLOSE_WAIT问题讨论
1.https://cloud.tencent.com/developer/article/1347610 2.https://blog.huoding.com/2016/01/19/488 3.ht ...
- Spring MVC(七)--传递JSON参数
有时候参数的传递还需要更多的参数,比如一个获取用户信息的请求中既有用户ID等基本参数,还要求对查询结果进行分页,针对这种场景,一般都会将分页参数封装成一个对象,然后将它和基本参数一起传给控制器,为了控 ...
- MyBatis与JPA的区别
参考博客: https://www.cnblogs.com/llywy/p/10103136.html https://www.jianshu.com/p/32ce87c163d6 MyBatis分为 ...
- java基础之BigDecimal类
由于在运算的时候,float类型和double很容易丢失精度,演示案例.所以,为了能精确的表示.计算浮点数,Java提供了BigDecimal BigDecimal类概述 不可变的.任意精度的有符号十 ...
- DevOps理论+实践之路
DevOps理论+实践之路 整个课程都看完了,这个课程的分享可以往下看,下面有链接,之前做java开发也做了一些年头,也分享下自己看这个视频的感受,单论单个知识点课程本身没问题,大家看的时候可以关注 ...