支付宝接口开发总结
2015-10-10 11:09
246 查看
1、需要向客户要的东西:、PID、Key、企业支付宝的账号
2、前期准备:注册好企业账号,然后申请支付套餐:https://b.alipay.com/order/productSet.htm
建议申请【网银支付】+【即时到账收款】(可以不申请)。里面的方案按各自的需求选择“套餐“类型去申请。
3、申请好套餐后正常2-5天会有申请状态,成功后进入【我的商家服务】:地址:https://b.alipay.com/order/serviceIndex.htm,点击左上角的【查询PID、Key】然后这就是我们需要的PID、Key,注意,PID只要登录就能获取,但是Key需要支付宝的【支付密码】验证后才能获取。
4、有了PID、Key、企业支付宝的账号,即可以开发测试支付了。在【技术支持】里下载demo了:https://b.alipay.com/order/techService.htm (或者到论坛里去下载)。(上面提供的链接有些需要登录后才能浏览。)
5、下载的demo目录稍微简介一下:
alipay.config.php配置文件,包含Key,PID,数字签名设置等。
alipayapi.php支付请求(index.php把表单提交到这里,然后在把支付内容请求跳转到对应的支付页面)
cacert.pem秘钥文件
index.php这是demo测试表单页
notify_url.php支付验证页,如果没记错应该是每3秒异步请求或说刷新一次。里面主要做:比如更改订单状态(如果验证成功,几把本地订单设置为已支付,包括发送短信等操作)
return_url.php支付成功提示后跳转回去的页面,就是finish页面。建议这里只做提示用,因为如果想在这里做业务逻辑的话做法不当,因为如果这个页面跳转是有个时间段的,需要几秒钟,如果支付成功后客户在还没有跳转前把页面关闭了,那么对应的业务逻辑就没法实现。业务逻辑应该都是放在notify_url.php页的。
6、建议先把demo调试通过后再加到项目上,基本步骤:
1)、更改alipay.config.php配置文件的PID,Key:$alipay_config['partner']对应就是PID,$alipay_config['key']对应的就是Key。注意:手机开发里的$alipay_config['sign_type']签名方式不知MD5一种,不明白之处请看API
2)、更改alipayapi.php文件里的$notify_url、$return_url 路径。
7、本地订单最好把trade_no保存起来,对应不同的业务比如对款、手机支付,注意其不同的lib文件,看api即一目了然。
ps:遇到问题,找alipay的在线客服(注:是技术支持页面的客服)。
开发时遇到问题:
1、手机支付时报Fatal error: Class 'DOMDocument' not found in错。
原因:服务器上的php缺少支持xml驱动。具体安装服务器驱动请百度之。。。yum install php-xml
2. 错误代码 ILLEGAL_SIGN
注意 表单提交的参数
https://cshall.alipay.com/enterprise/help_detail.htm?help_id=474048&keyword=ILLEGAL_SIGN&sToken=&from=search
参考文档:
https://app.alipay.com/container/web/enterpriseIndex.htm
http://doc.open.alipay.com/doc2/detail?treeId=54&articleId=103419&docType=1
http://doc.open.alipay.com/doc2/apiList.htm?spm=0.0.0.0.fYncOX&cid=1&docType=4
及时到账参考文档:
https://doc.open.alipay.com/doc2/detail?treeId=62&articleId=103566&docType=1
2、前期准备:注册好企业账号,然后申请支付套餐:https://b.alipay.com/order/productSet.htm
建议申请【网银支付】+【即时到账收款】(可以不申请)。里面的方案按各自的需求选择“套餐“类型去申请。
3、申请好套餐后正常2-5天会有申请状态,成功后进入【我的商家服务】:地址:https://b.alipay.com/order/serviceIndex.htm,点击左上角的【查询PID、Key】然后这就是我们需要的PID、Key,注意,PID只要登录就能获取,但是Key需要支付宝的【支付密码】验证后才能获取。
4、有了PID、Key、企业支付宝的账号,即可以开发测试支付了。在【技术支持】里下载demo了:https://b.alipay.com/order/techService.htm (或者到论坛里去下载)。(上面提供的链接有些需要登录后才能浏览。)
5、下载的demo目录稍微简介一下:
alipay.config.php配置文件,包含Key,PID,数字签名设置等。
alipayapi.php支付请求(index.php把表单提交到这里,然后在把支付内容请求跳转到对应的支付页面)
cacert.pem秘钥文件
index.php这是demo测试表单页
notify_url.php支付验证页,如果没记错应该是每3秒异步请求或说刷新一次。里面主要做:比如更改订单状态(如果验证成功,几把本地订单设置为已支付,包括发送短信等操作)
return_url.php支付成功提示后跳转回去的页面,就是finish页面。建议这里只做提示用,因为如果想在这里做业务逻辑的话做法不当,因为如果这个页面跳转是有个时间段的,需要几秒钟,如果支付成功后客户在还没有跳转前把页面关闭了,那么对应的业务逻辑就没法实现。业务逻辑应该都是放在notify_url.php页的。
6、建议先把demo调试通过后再加到项目上,基本步骤:
1)、更改alipay.config.php配置文件的PID,Key:$alipay_config['partner']对应就是PID,$alipay_config['key']对应的就是Key。注意:手机开发里的$alipay_config['sign_type']签名方式不知MD5一种,不明白之处请看API
2)、更改alipayapi.php文件里的$notify_url、$return_url 路径。
7、本地订单最好把trade_no保存起来,对应不同的业务比如对款、手机支付,注意其不同的lib文件,看api即一目了然。
ps:遇到问题,找alipay的在线客服(注:是技术支持页面的客服)。
开发时遇到问题:
1、手机支付时报Fatal error: Class 'DOMDocument' not found in错。
原因:服务器上的php缺少支持xml驱动。具体安装服务器驱动请百度之。。。yum install php-xml
2. 错误代码 ILLEGAL_SIGN
注意 表单提交的参数
https://cshall.alipay.com/enterprise/help_detail.htm?help_id=474048&keyword=ILLEGAL_SIGN&sToken=&from=search
参考文档:
https://app.alipay.com/container/web/enterpriseIndex.htm
http://doc.open.alipay.com/doc2/detail?treeId=54&articleId=103419&docType=1
http://doc.open.alipay.com/doc2/apiList.htm?spm=0.0.0.0.fYncOX&cid=1&docType=4
及时到账参考文档:
https://doc.open.alipay.com/doc2/detail?treeId=62&articleId=103566&docType=1
相关文章推荐
- HTML5、CSS3(笔记)
- C++primer第五版笔记-第十七章标准库特殊设施
- Integer类型比较
- AIX 永久修改环境变量
- abmr:块恢复特性测试自己主动
- Squid
- Jenkins(二) 安装、新建Jobs与删除及SVN配置
- 最小二乘法
- Tomcat搭建
- apue环境搭建
- 手把手教你学会JSP上传文件方法
- 串口接收中断和连续发送的矛盾!
- C++primer第五版笔记-第十六章模板与泛型编程
- 深入理解Java内存模型(七)——总结
- QT中layoutstretch属性配置,控件按比例扩大缩小
- Java笔试题1
- Word Ladder 解答
- 【Windows编程】-I/O模型-01.Select模型实现
- for 循环用法
- ShaderLab Tutorials-Vertex Colors Lerp