赞
踩
微信设置:
接入前准备:参考https://pay.weixin.qq.com/wiki/doc/apiv3/open/pay/chapter2_7_1.shtml
需要获取:APPID 、mchid 、API key
如果是微信native支付 需要在微信支付平台里面native对应的回调路径设置支付成功后的回调路径
fastadmin配置:
进入后台:
后台编写:
发起支付
只需要简单的调用Service
类的submitOrder
方法即可,如下几种用法:
- echo \addons\epay\library\Service::submitOrder("99.9", "订单号", "wechat", "订单标题", "回调地址", "返回地址", "支付方法");
- $params = [
- 'amount'=>"99.9",
- 'orderid'=>"订单号",
- 'type'=>"wechat",
- 'title'=>"订单标题",
- 'notifyurl'=>"回调地址",
- 'returnurl'=>"返回地址",
- 'method'=>"支付方法",
- 'openid'=>"用户的OpenID",
- 'auth_code'=>"验证码"
- ];
- echo \addons\epay\library\Service::submitOrder($params);
method
有以下同个值:web
、wap
、app
、scan
、pos
、mp
,miniapp
微信支付宝支付插件会根据你传递的值自动做跳转到支付或返回相应的值。比如你在使用微信web支付时,如果用户在微信内或移动端调用,会自动识别为mp
和wap
。
支付宝设置:
接入参考:https://opendocs.alipay.com/open
需要获取 APPID 支付公钥和商户秘钥
支付平台里面同样要设置回调函数notifyx
如果是沙箱环境:https://openhome.alipay.com/platform/appDaily.htm?tab=account
那么ali_public_key对应支付宝公钥,不是应用公钥
private_key对应支付宝开放平台开发助手生成的应用私钥
注意:支付宝公钥由粘贴阿里支付助手生成的应用公钥生成,不得弄混了
阿里支付助手下载:https://opendocs.alipay.com/open/291/105971#LDsXr
fastadmin alipay配置修改
如果不修改,沙箱将无法访问
回调通知
回调通知在用户支付成功后,支付宝或微信会发送回调请求到我们提供的notifyurl
这个链接。我们只需要使用以下简单的几行代码即可处理
具体代码请参考addons/epay/controller/Index.php
中的notifyx
方法
跳转返回
具体代码请参考addons/epay/controller/Index.php
中的returnx
方法
notifyx和returnx的区别:
notifyx是支付成功后第三方支付平台将对你填写的回调地址,也就是你在微信支付平台里面填写的跳转地址,如果是native支付,就跳转到native支付成功后的跳转地址发起请求,将结果传给你的服务器,在这个方法里编写订单业务逻辑,这个方法不得存在访问权限,比如登陆权限。这个回调方法必须外网可访问
returnx是你支付成功后的跳转地址,不得在这个方法里编写订单业务逻辑
可能存在的问题:
1.支付成功后无法回调
必须无访问权限,本地测试必须无bug
2.支付宝沙箱无法访问
请查看alipay 配置参数是否改为沙箱模式
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。