首页 > 网站 > 建站经验 > 正文

基于OpenCart 开发支付宝,财付通,微信支付参数错误问题

2024-04-25 20:42:12
字体:
来源:转载
供稿:网友

最近在给OpenCart集成支付宝,财付通和微信扫码支付,其实这些插件都是有的卖的,但是还蛮贵的,还是自己开发集成吧,省钱。但是集成过程中发现了一些坑,有opencart的坑,也有支付sdk的坑,浪费了不少时间,这里整理几条,给需要的人跨坑。

1.微信native 模式二中的notify_url 地址必须是公网地址

2.支付宝的notify_url不能是query string的形式,比如 xxx/notify.php?route=a/b,只能为xxx/notify.php

3.OpenCart 中支付宝和财付通中的同步回调处理中最好unset($_GET[‘route'])再做支付回调验证,否则因为这个多余的参数参与校检导致回调验证不成功

4.微信回调notify的时候是发送数据流,所以GET和POST是获取不到支付后异步通知过来的数据的,用官方的SDK的时候你可以这样改一下:

?123 $GLOBALS["HTTP_RAW_POST_DATA"] = file_get_contents("php://input", "r"); $notify = new PayNotifyCallBack(); $notify->Handle(false);

5.PC浏览器的支付宝用ios设备访问的时候会弹出支付宝客户端来支付,这样是接收不到异步和同步通知的,所以需要判断一下访问设备是移动端还是客户端,如果是移动端的话得用支付宝的wap方式来支付

6.财付通支付QQ浏览器支付一直参数错误,还没找到为什么。

提醒大家在使用OpenCart 开发支付宝,财付通,微信支付的时候,一定要细心.

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表