php支付走过的坑(支付宝篇 注册 秘钥 环境等等配置)

支付这东西,说容易也容易,说难也难

代码这玩意还比较好说 但是 如果没有demo 直接去看官方文档

十有八九一脸懵逼 今天就整理一下 支付这块走过的坑 涉及 微信h5支付 支付宝h5支付

(api文档真的是给人类看的么 手动滑稽)

支付宝h5支付

一、申请支付宝企业账户

涉及各种材料 详情去支付宝的注册页看 支付宝注册

二、创建应用  添加功能

我这边h5支付 所以选择了

注意此处有坑

需要先签约各种功能才能正式开通并添加  支付宝签约地址

(2018年9月30日起产品大全里“单笔转账到支付宝账户接口”的签约入口暂时关闭 )

到此 应用创建成功 等待审核就行了

三、配置开发设置

支付宝相当贴心的准备好了工具 也支持各种秘钥的互转 

 

生成 测试 配置完成就行了

此处有坑 

更新某些秘钥时 总是提醒我要先绑定手机号

但是我明明已经绑定过了 所以建议最好使用支付密码来修改 开发完成再修改就行了

 

 

 四、测试环境(沙箱环境配置)

 配置同开发环境 但是要记住 支付宝的秘钥工具生成的需要妥善保管

 而且 新生成貌似会覆盖的旧的 所以生成完毕之后 记得 修改文件夹名称

五、支付宝sdk

博主主要是Php的sdk 不得不说 支付宝的sdk还是很良心 也很臃肿的 各种功能都包含里面 文件也异常的多

涉及到h5支付的文件主要是这两个

提交起来也很方便 回调时的验签也很方便都是封装好的

 

此处我走的坑 

配置支付参数时

商户私钥,您的原始格式RSA私钥

支付宝公钥,查看地址:https://openhome.alipay.com/platform/keyManage.htm 对应APPID下的支付宝公钥。

支付宝网关https://openapi.alipaydev.com/gateway.do

沙箱网关https://openapi.alipay.com/gateway.do

 

六、回调相关

支付宝回调回来的post数据中的

voucher_detail_list

会有点问题 验签之前需要使用反斜线引用字符串

addslashes

 (PHP 5.4 之前 PHP 指令 magic_quotes_gpc 默认是 on, 实际上所有的 GET、POST 和 COOKIE 数据都用被 addslashes() 了。 不要对已经被magic_quotes_gpc 转义过的字符串使用 addslashes(),因为这样会导致双层转义。 遇到这种情况时可以使用函数 get_magic_quotes_gpc() 进行检测。

验签成功 就可以处理其他数据了

 

七、回调多次

  • 当商户收到服务器异步通知并打印出success时,服务器异步通知参数notify_id才会失效。也就是说在支付宝发送同一条异步通知时(包含商户并未成功打印出success导致支付宝重发数次通知),服务器异步通知参数notify_id是不变的。

所以完成验证之后记得 打印出success 就能结束回调了

 

echo 'success';
exit;

就行了

 

支付宝的坑不算太多 认真阅读官方文档就可以了 

暂时就这么多 想起来再补充

 

posted @ 2018-04-08 11:49  long隆  阅读(415)  评论(0编辑  收藏  举报