微信商户号与公众号、小程序关联
商户号申请与关联、支付目录与授权域名配置,以及小程序支付的常见报错排查。
一、申请商户号
微信支付需要商户号(企业或个体工商户主体)。申请时需提交营业执照、结算账户与法人信息,审核通过后在商户平台获得商户号与 API 密钥、API 证书。
二、与公众号、小程序关联
支付能力需要在「公众号 + 商户号」或「小程序 + 商户号」之间建立关联:
- 在商户平台或公众平台发起关联申请,填写对方的 AppID。
- 在对方平台确认关联;同主体通常自动通过,异主体需双方确认。
- 关联生效后,商户号才能为该 AppID 发起支付。
三、配置支付目录与授权域名
- JSAPI 支付需要配置支付授权目录,填写发起支付的页面所在目录(以站点实际的支付跳转目录为准)。
- 授权域名必须是已备案域名且为 https。
- 后台 → 支付设置中填写商户号、API 密钥与证书路径,保存后用最小金额测试单验证通断。
四、小程序支付开通
小程序支付需在商户平台产品中心开通 JSAPI 支付,并确认小程序已发布、类目包含支付相关服务。未开通时调用支付会直接失败。
iOS 端小程序内的虚拟服务交易受平台规则限制,部分场景会限制支付入口,属平台统一规则,并非程序问题。
五、常见报错与排查
| 现象 | 常见原因 | 处理 |
|---|---|---|
| 提示 appid 与 mch_id 不匹配 | 商户号未与该 AppID 关联 | 完成关联并在双方确认 |
| 支付授权目录不正确 | 发起支付的页面目录未加入 | 补充配置授权目录 |
| 签名错误 | API 密钥填错或证书路径不对 | 核对密钥与证书路径 |
| 小程序内无法拉起支付 | 未开通 JSAPI 支付或未发布 | 开通产品并发布版本 |
| 回调未生效、订单状态不变 | 回调地址不可达或被拦截 | 检查回调地址与伪静态规则 |