查看: 735|回复: 0

微擎JSAPI支付由服务商发起支付走过的坑总结

[复制链接]

748

主题

39

回帖

3907

积分

管理员

总舵主

积分
3907
QQ
发表于 2024-5-26 12:57:54 | 显示全部楼层 |阅读模式
1、jsapi支付调用的framework/builtin/core/site.php中的 public function doMobilePay() {方法。
2、sprintf('%06d', 14) = 000014;

3、然后调用当前文件的private function doMobilePayWechat($paylog = array()) {方法。

4、然后调用framework/model/payment.mod.php中的function wechat_proxy_build($params, $wechat) {方法。

5、然后调用4文件中的function wechat_build($params, $wechat, $is_site_store = false) {方法,version=2是版本2,JSAPI支付走2。


经过研判,问题出在:问题所在的目标文件:根目录/framework/builtin/core/site.php在193行开始的服务商支付或借用支付中应该提供sub_appid,但当前系统代码中没有判断是服务商支付并提供sub_appid,我的解决方案是加入了服务商支付判断,然后提供sub_appid,代码如下:
//服务商支付
if (intval($wechat_payment['switch']) == 3) {
$wechat_payment['sub_appid'] = $wechat_payment['appid'];
}

服务商公众号应该添加配置网页授权域名
道不同,不相为谋!理想要有,万一实现了呢?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注公众号

相关侵权、举报、投诉及建议等,请发 E-mail:2513533699@qq.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.|鲁ICP备19000917号|鲁公网安备37078302000320号

在本版发帖
关注公众号
QQ客服返回顶部