tp集成支付宝担保支付

现在的网站功能越来越全乎了,很多网站都需要做支付功能,而且很多大平台都提供了各式各样的api来扩充自己的用户和开发者。话说,这种使用大平台的api来做支付,无论是从成本上还是从开发效率上都是很好的选择。今儿我就来念叨念叨怎么集成支付宝的api,其实想写关于支付的文章已经很久了,哎~,就是有点儿小忙,趁着9月的最后一天,随便码点儿字吧。
一、支付宝担保支付
支付宝的api在商家服务中,下面是网址:https://b.alipay.com/newIndex.htm,话说,这里面的产品可真是多啊,不过申请起来还是限制蛮多的,下面的截图是他的部分产品:
因为限制多多,像截图中,我个人只能申请担保支付了,其他的支付我看了下,都是要什么企业执照啥的。其实这样也好,可以为服务方和用户提供双重保障嘛。那我们就来看担保支付。
https://b.alipay.com/order/productDetail.htm?productId=2012111200373121
上面的网址就是担保支付,ps:不管你用什么类型的api,都是要收取相应的服务费用的。
这个集成还是蛮方便简单的,如果你有自己的技术人员,你可以根据他们的集成教程来做,没有技术人员的话,可以找支付宝那边给你做。
自助集成,这个网址有很多集成包,https://b.alipay.com/order/techService.htm,我下载的是下图红框中的集成包,
上面说了一堆的废话,各位看官勿喷啊,根据我的阐述,我想大家去哪里下载集成包,应该都清楚了。
二、tp集成支付宝担保交易
1.准备工作
集成包下载下来后,解压到本地,因为我的网站是utf-8编码,所以我选择utf-8的那个文件,注意,语言是php哦
点开文件夹,里面有很多文件的,这里其实是支付宝官方给做的一个demo,照着这个集成,基本上问题不大的说。这里面最主要的文件是lib下面的四个文件:
要集成到thinkphp中,那四个文件应该是当做第三方类库来处理,在“ThinkPHP/Extend/Vender/”文件夹下面,建立一个文件夹,如Alipay,将上面四个文件放进去;然后在自定义的Action类中,用Vender()方法来引入。
还有一种形式,你可以将那四个文件放在一个文件夹下面,这个文件夹你可以放在指定的位置,然后用import()方法来引入所需的文件。
不管以哪种方式集成,首先都是要修改那四个核心文件,我将那四个文件分别修改名称,如下图:
然后将Notify.php和Submit.php中的两行代码去掉,见下图:
去掉的原因是,用Vender或import引入的时候,另外两个文件会被加载,这里就不需要再重复加载了。
2.自定义Action类
准备工作完成后,我们开始写控制器,这里不再叙述tp控制器的写法,因为这里不是今儿要讲的重点。
建立一个PayAction类,继承于Action类,里面可以定义这么几个方法
//初始化的工作
public function _initialize(){}
//页面显示
public function index(){}
//支付方法
public function doPay(){}
//同步通知
public function returnUrl(){}
//异步通知
public function notifyUrl(){}
初始化工作你最重要的是引入那四个文件
还有一个重要的没有说,就是需要一些配置文件,我将部分写在了数据库中,一部分写在了config.php中,为了方便我全部拿到config.php中,
配置中partner和key是你申请担保支付后,支付宝提供给你的,写在配置中即可。
'cacert'这个是证书,放在根目录下即可。
returnUrl是支付完成后支付宝那边给返回的同步通知方法,notifyUrl是当同步通知或者交易状态发生改变时支付宝返回的异步通知,这个方法是看不到界面跳转的。说到同步和异步的通知,必须强调的是在配置中,同步和异步url的配置是不能加参数的,也就是说,http://xxxx/xxxx.php?xxx=xxx这种形式是错误的,支付宝返回的时候是找不到路径的。
为了能在tp中正常的运行,需要修改Corefunction.php中的代码,如下:
Notify.php中verifyNotify和verifyReturn方法需要修改一下;这样做的目的是去除tp在url中增加的多余的字符。
3.代码下载
上面说了很多,大都是截图之类,我把代码整理了一下,大家可以点击下面的链接去下载、学习,有不明白的可以在本文评论中写出来。
整合后的担保交易:
原版担保交易:
版权声明:本文为博主原创文章,未经博主允许不得转载。
tp集成支付宝担保支付的更多相关文章
- 集成支付宝钱包支付iOS SDK的方法与经验
流程 摘自第一个文档<支付宝钱包支付接口开发包2.0标准版.pdf> 图中的“商户客户端”就是我们的iOS客户端需要做的事情: 调用支付宝支付接口 处理支付宝返回的支付结果 在调用支付宝支 ...
- 集成支付宝钱包支付ios SDK的方法和经验
没想到,支付宝的SDK是我目前用过的所有第三方SDK中最难用的一个了. 下载 首先,你要想找到这个SDK,都得费点功夫.现在的SDK改名叫移动支付集成开发包了,下载页面在 这里 的 “请点此下载集成开 ...
- 集成支付宝钱包支付 iOS SDK 的方法与经验
下载 首先,你要想找到这个SDK,都得费点功夫.现在的SDK改名叫移动支付集成开发包了,下载页面在 这里 (http://t.cn/8ksiklD)的 “请点此下载集成开发包(http://t.cn/ ...
- android 集成支付宝app支付(原生态)-包括android前端与java后台
本文讲解了 android开发的原生态app集成了支付宝支付, 还提供了java后台服务器处理支付宝支付的加密代码, app前端与java后台服务器使用json数据格式交互信息,java后台服务主要用 ...
- springboot集成支付宝的支付(通用版)
[1.引依赖] <dependency> <groupId>com.alipay.sdk</groupId> <artifactId>alipay-sd ...
- springboot集成支付宝的支付(easy版)
SpringBoot对接支付宝 需要先注册账号 到支付宝开发者平台创建网页支付应用 启用公钥模式 需要使用到appId和下面的两个秘钥 写配置信息的代码 1.引入依赖 <dependency&g ...
- Android App集成支付宝
原地址:http://blog.csdn.net/wenbingoon/article/details/7933078 手机的在线支付,被认为是2012年最看好的功能,我个人认为这也是移动互联网较传统 ...
- 【网站支付PHP篇】thinkPHP集成支付宝支付(担保交易)
目录 系列说明 开发环境 部署支付宝 支付请求 支付宝返回处理 系列说明 最近在帮朋友的系统安装支付模块(兑换网站积分),现在总结一些开发心得,希望对大家有用.这个系列会讲以下第三方支付平台的集成: ...
- tp框架集成支付宝,中转页变成gbk编码
tp框架中集成支付宝的功能,将支付宝的demo例子存在到下图位置\Extend\Vendor\Alipay 生成支付订单 /** * 支付订单 */ public function pay() { h ...
随机推荐
- Excel数据链接取消
Excel数据链接取消 2013-9-14 学校里弄来学生的成绩单,想去掉原来高一的学号,但是一删除,后面的成绩数据就一同消失,如以下两图对比所示. 删除第一列前 删除第一列后 此问题不知道怎么描述, ...
- 更好的 SQL 模式的 10 条规则
更好的 SQL 模式的 10 条规则 2015-06-17 11:57:392353浏览1评论 在创建新表和数据仓库时,要做很多决定.一些在当时似乎无关紧要的地方,却让你和用户在数据库的生命期内感到痛 ...
- TDBGrideh表头自动排序设置
自动显示标题行的升降排序标志符(▽降序△升序)并做相应排序DBGridEh组件可以在标题行单元格中显示小三角形升.降排序标志符图片,在运行时可点击标题行,图片自动切换并做相应排序. 具体属性设置如下: ...
- wpf 创建动画三种方式
动画类型 : 故事版,CompositionTarget,DispachTime 那么到此,三种动态创建动画的方法都已经详细介绍过了,大家可能会有种感觉,比较钟情于第一种WPF/Silverlight ...
- bzoj1264
表面上看这是一道LCS问题 LCS问题O(n2)的复杂度已经很优秀了 而这道题需要O(nlogn)以下的复杂度才能AC 所以我们要找经典问题的特殊性 特殊就在这两个串中,每个数字都是恰好出现5次 不难 ...
- Apache Struts 远程代码执行漏洞(CVE-2013-4316)
漏洞版本: Apache Group Struts < 2.3.15.2 漏洞描述: BUGTRAQ ID: 62587 CVE(CAN) ID: CVE-2013-4316 Struts2 是 ...
- 【转】重载(overload),覆盖(override),隐藏(hide)的区别
原文网址:http://www.cppblog.com/zgysx/archive/2007/03/12/19662.html 写正题之前,先给出几个关键字的中英文对照,重载(overload),覆盖 ...
- MOSS母板页制作 学习笔记(一)
转:http://xiachanghao1990.blog.163.com/blog/static/4869602420114235536573/ 母版页制作其实应该算是一个比较基础的工作,但是熟练制 ...
- devpress 很好的中文论坛
阿伟邀请您访问DXPER开发者论坛http://www.dxper.net/?fromuid=3701
- Delphi TcxTreelist 表格左边总是缩进去 ,好像有偏移 解决方法
1. TcxTreelist的表格总是总是缩进去,如下效果 : 但是,新建一个没有偏移 ,经过观察,原来在 属性Images造成的, 把imgToolbars去除就可以了. 效果: