6. PHP接入支付宝有密退款接口
payment 项目2.0版本
这个接口主要用于退款操作。之前没有接入该功能时,商城用户如果想要退款,我们需要先查到对应用户的支付流水号,然后写退款申请给财务,财务到支付宝进行查询。完了之后原路退回。然后告诉程序,程序再去修改订单状态。
这样的流程不仅麻烦。而且充满不安全性。如果程序误操作(或者是心情太差了),操作为其他人员,那么这将会为企业带来很大的风险。
SDK调用
支付宝支持多笔退款。
// 支付宝配置信息
$aliconfig = ['partner' => '2088xxxxx','md5_key' => 'xxxxxxxxxxxx','rsa_private_key' => dirname(__FILE__) . '/rsa_private_key.pem',"notify_url" => 'http://test.helei.com/pay-notify.html',"return_url" => 'http://test.helei.com/return-url.html',"time_expire" => '14',
];// 生成退款单号 便于测试
function createPayid()
{return date('Ymdhis', time()).substr(floor(microtime()*1000),0,1).rand(0,9);
}// 退款数据
$reundData = ['refund_no' => createPayid(),'refund_data' => [['transaction_id' => '2016011421001004330041239366', 'amount' => '0.01', 'refund_fee' => '0.01', 'reason' => '测试退款1'],['transaction_id' => '2016031521001004330271745693', 'amount' => '0.01', 'refund_fee' => '0.01', 'reason' => '测试退款2'],],
];$refund = new RefundContext();
try {$refund->initRefund(Config::ALI, $aliconfig);$ret = $refund->refund($reundData);
} catch (PayException $e) {echo $e->errorMessage();exit;
}// 跳转支付宝
header("Location:{$ret}");
以上请求发送完毕后,会跳转到生成的url。界面如下:
这时候,只需要要输入支付密码。就可完成退款。确认完毕后会自动完成异步通知。异步通知数据内容在 支付的回调统一处理 已经说明。
备注:支付宝支持一次退款多笔。也可单次退款一笔,请自行根据情况进行设置。
请求参数
参数 | 参数名 | 参数说明 | 是否必须 |
---|---|---|---|
refund_no | 退款单号 | 由商家自定义生成,可由字母、数字组成 | 是 |
refund_data | 退款数据 | 详细内容见后表,它是一个数组 | 是 |
refund_data数据
参数 | 参数名 | 参数说明 | 是否必须 |
---|---|---|---|
transaction_id | 支付宝流水号 | 支付成功时,异步通知时有返回 | 是 |
amount | 订单总金额 | 订单总金额,应该等于支付时的金额 | 否 |
refund_fee | 退款金额 | 退款金额,不能超过支付的总金额 | 是 |
reason | 退款理由 | 退款理由 | 是 |
一笔订单,可分多次进行退款处理。比如:一笔支付100元的订单。可分为10次,每次退款10元。该思路可扩展一下,就可实现提现功能(原路返回),想要具体了解提现功能,可咨询我!
6. PHP接入支付宝有密退款接口相关推荐
- java支付宝无密退款
支付宝API提供了两处退款的接口文档: ①统一收单退款接口:https://doc.open.alipay.com/doc2/apiDetail.htm?spm=a219a.7395905.0.0.0 ...
- 新版支付宝手机网站支付、支付宝pc支付、支付宝无密退款实现
前面我记录过老版本的支付以及退款,这次写的是新版本的支付和退款 还是那句话,先去看官方文档:https://openhome.alipay.com/developmentDocument.htm 和微 ...
- php 支付宝订单查询_5. PHP接入支付宝单笔订单查询接口
巴西奥运会来了,刚好我又是做体育行业的互联网.哎!这个月又要加班成狗了.最近遇到好多莫名其妙的问题,待我忙完这段,再跟大家分享下.今天还是继续说说 Payment项目 今天主要说说支付宝订单查询接口. ...
- 5. PHP接入支付宝单笔订单查询接口
payment 项目2.0版本 巴西奥运会来了,刚好我又是做体育行业的互联网.哎!这个月又要加班成狗了.最近遇到好多莫名其妙的问题,待我忙完这段,再跟大家分享下.今天还是继续说说 Payment项目 ...
- 7. PHP接入支付宝有密批量转款接口
payment 项目2.0版本 这个接口蛮有用的,不过现阶段支付宝已经停止审核啦!微信的转账功能还可以继续使用.企业可以转账到其他支付宝账户.对于企业活动非常有帮助,比如:购买返现呀! 虽然现在已经不 ...
- 支付宝即时到账交易接口和即时到账有密退款接口demo
https://pan.baidu.com/s/1-bb33MZ26-o0M4sAd5meaw
- 微信支付 自动退款 php,银联在线、微信、支付宝自动退款接口文档总结和API地址...
关于微信和支付宝自动退款接口的接入总结 一:支付宝的自动退款接口接入 支付宝官方api:https://doc.open.alipay.com/doc2/apiDetail.htm?spm=a219a ...
- PHP接入支付宝手机网站支付、移动支付接口
payment 项目2.0版本 前面已经说完了 PHP接入支付宝 即时到帐接口 回调接口也已经完成.这篇主要讲 手机网站支付 . 移动支付 接口的调用.调用方式与即时到帐 基本一样. 关于代码部分的详 ...
- 4.PHP接入支付宝手机网站支付、移动支付接口
Payment项目地址github地址 前面已经说完了 PHP接入支付宝 即时到帐接口 回调接口也已经完成.这篇主要讲 手机网站支付 . 移动支付 接口的调用.调用方式与即时到帐 基本一样. 关于代码 ...
最新文章
- 手写html5游戏,HTML5 手写输入法
- Fiddler 发送post 请求失败
- mysql数据库连接jar_mysql数据库连接包
- 优优加速cdn带宽_为什么使用CDN你的网速还是那么慢?
- 5行代码解决——L1-042 日期格式化 (5分)
- 计算机网络配置调试综合实验,计算机网络设备配置与调试课程标准.doc
- manacher java_最大回文子串(Manacher算法)
- Maven学习总结(十一)——Maven项目对象模型pom.xml文件详解
- 物联网中大数据的挑战有哪些
- 谷歌浏览器 js 获取 汉字 乱码
- 白噪声的matlab程序,matlab产生白噪声信号
- 使用监听扫描枪输入事件
- hive-使用开窗函数实现百分比、topN、前百分比
- matlab模拟正态分布曲线拟合,[MATLAB数学相关] 急请教:正态分布曲线拟合问题
- c语言语法口诀,一般过去时语法口诀
- 在Linux系统中的安装cpolar内网穿透
- 在电脑上打开手机当前浏览的网页
- 农历 Android Java 节气_Android自定义日历,可以点击、标注日期、节气、旧历等
- 【算法导论】生日悖论
- 斗鱼App产品体验报告