requestPayment:fail jsapi has no permission, event=requestPayment, runningState=foreground, permissionMsg=permission got, detail=jsapi has been banned, appId=wxbef57f54d2a64b24,如果使用微信开发工具的真机模拟调用支付会出现这个问题,,但是如果不使用真机模拟。会直接弹出
,扫码是可以支付的。我微信商户号已经关联了小程序。

## 小程序调起支付报错 `requestPayment:fail jsapi has no permission` / `jsapi has been banned`,需排查小程序服务类目与合规状态
该错误属于小程序支付前端报错,常见原因及排查步骤如下:
1. **核实小程序服务类目是否正确**,若为交易类小程序,需满足公众平台的《交易类小程序运营规范》,并按规范接入**订单发货管理功能**。未满足运营规范或未接入发货管理功能,可能导致支付 JSAPI 被禁用(banned)。
2. **登录[公众平台](https://mp.weixin.qq.com/)查看通知中心的站内信**,核实具体被处置/关闭支付权限的原因,并按指引申诉或整改。
3. 关于**微信开发者工具真机模拟报错但扫码可支付**的情况:真机调试与真机扫码运行属于不同运行环境,真机调试模式下对支付 JSAPI 的权限校验可能更严格;建议优先在真机预览/体验版中验证支付功能,而非依赖开发者工具的真机调试模式。
### 📋 相关文档
- **`APIv3/普通商户/支付产品/小程序支付/常见问题-4012791910.md`**:`https://pay.weixin.qq.com/doc/v3/merchant/4012791910`
- **`APIv3/合作伙伴/支付产品/小程序支付/常见问题-4013352071.md`**:`https://pay.weixin.qq.com/doc/v3/partner/4013352071`
### ⚠️ 注意事项
- 错误信息中 `detail=jsapi has been banned` 表明支付权限已被禁用,重点排查小程序是否因违规被处置,登录公众平台通知中心确认具体原因。
- 商户号已关联小程序仅代表绑定关系正确,支付权限是否可用还取决于小程序本身的合规状态。
(一)、需要先开发订单详情页后对版本发起提审,提审后返回配置订单详情页面路径(path)完成接入订单管理即可,无需等待提审通过。
若是接入后对小程序再开发,可把已提交审核的版本撤销继续开发,后续小程序更新到最新本,那么已配置的订单详情页面路径(path)需要重新录入,若不然会导致违规。
(二)、接入步骤如下:
1、请登录小程序(https://mp.weixin.qq.com/)管理后台,在「支付与交易-订单管理-订单信息录入」填写小程序商品订单详情path,完成订单管理接入。
详情可以参考该文档:https://developers.weixin.qq.com/miniprogram/dev/platform-capabilities/business-capabilities/order_center/order_center.html
2、上传您的订单详情页面路径(path),填写模板(请勿复制,并非您的真实路径):pages/index/order-index?id=${商品订单号}&channel=1或pagesOrder/detail?out trade_no=${商品订单号}&channel=1均为已填写成功案例,请不要把「=${商品订单号}」五个汉字替换掉因为这个是变量,path路径中需要包含 =${商品订单号},一个标点符号都不能改动,路径和参数请根据您的实际存储和参数自行修改。
3、完成path填写后,建议PC端退出小程序后台,重新打开浏览器后,再重新登录小程序后台,然后前往微信小程序尝试是否可以正常支付。
需要在MP后台接入一下订单管理