微信 JSAPI 调起支付报错排查笔记:常见报错文案与检查顺序
JSAPI 支付调起阶段的报错,多数可以直接对照报错文案定位。以下按报错类型整理,方便排查时快速收敛。
1. OpenID 授权类
- 「此公众号并没有这些 scope 的权限,错误码 10005」:多半是在订阅号或未认证公众号里调用了认证服务号功能。检查公众号功能类型、AppID 是否认证过期或填错,或改用
snsapi_userinfo授权。 - 「redirect_url 域名与后台配置不一致,错误码 10003」:网页授权域名没对上。核对下单时传的 AppID 与取 OpenID 用的 AppID 是否是同一个,以及后台「网页授权域名」是否与获取 OpenID 的域名一致。
2. 调起支付类
- 「商家暂时没有此类交易权限,请联系商家客服」:有两种可能——下单时指定了支付用户身份但未开通该权限;或者商户号本身没有 jsapi 支付权限(到商户平台-产品中心确认)。
- 「当前页面的 URL 未注册」:下单商户号没有在商户平台配置对应的支付目录。
- 「该商户暂不支持通过外部拉起微信完成支付」:JSAPI 只能在微信浏览器内发起,外部浏览器或 App 内拉起时会报这个。
3. 排查顺序
调起失败时,按以下顺序收敛:
- 确认功能/产品权限是否开通:产品中心查 jsapi。
- 确认 AppID 是否是同一个、是否认证过期。
- 确认授权域名和支付目录是否都配置正确。
- 确认是否在微信浏览器内发起。
参考:微信支付支付下单常见问题