连锁品牌使用总店自己的小程序统一运营,微信支付走服务商/受理机构账户统一下单;各分店配置微信子商户号,分店订单自动携带 sub_mch_id 完成分账。
| 对比项 | 本文:总店小程序 + 分店分账 | 独立小程序直连(不分账) | 平台小程序 + 入驻分账 |
|---|---|---|---|
| 顾客端小程序 | 总店独立 AppID | 商家独立 AppID | 平台统一 AppID |
| 小程序设置里的商户号 | 服务商/受理机构号 | 商家直连商户号 | 平台总站配置 |
| 分店子商户号 | 总店后台「分账账户」逐店配置 | 不需要 | 平台后台商家分账 / 总店分店分账 |
| 支付时 sub_mch_id | 分店订单:需要 | 不需要 | 需要 |
路径:总店商家后台 → 小程序设置(约 user/mch/index/mp-config)
| 字段 | 填写说明 |
|---|---|
| 小程序 AppId / AppSecret | 总店自己的小程序凭证 |
| 微信支付商户号 | 填服务商/受理机构商户号(不是分店子商户号,也不是普通直连商户号) |
| API 密钥、证书 | 与服务商账户对应的密钥与 apiclient 证书(退款等需要) |
路径:总店商家后台 → 分店管理 → 分账账户(约 user/branch/shop/branch-profitsharing)
对每个分店分别设置:
| 项 | 说明 |
|---|---|
| 服务商分账 | 选择开启 |
| 子商户号 | 该分店在微信服务商下的子商户号(sub_mch) |
| Api 密钥 | 该子商户在微信商户平台的 API 密钥(开启分账后必填) |
| 证书 | 该子商户的 apiclient_cert.pem / apiclient_key.pem(开启分账后必填,退款与分账完结需要) |
| 手续费(千分比) | 按业务需要填写 0~1000,用于系统内手续费计算 |
保存后写入分店商户记录(yjd_mch.is_service、yjd_mch.sub_mch)。分店订单支付时,系统读取订单所属分店的子商户号并传给微信。
若总店自己卖货(订单 mch_id 为总店、非分店),服务商模式下同样需要子商户号,否则可能报「受理机构必须传入 sub_mch_id」。
路径:平台后台 → 商户管理 → 商户设置 / 分账账户(约 mch/mch/index/mch-service)
分店无独立小程序:分店推广码、进店场景仍使用总店小程序,通过 mch_id 区分分店(详见 进店字段与分销)。
| 谁操作 | 后台菜单 | 配置内容 |
|---|---|---|
| 总店商家 | user/mch/index/mp-config | 总店小程序 AppID + 服务商商户号 |
| 总店商家 | user/branch/shop/branch-profitsharing | 各分店 sub_mch、开启分账 |
| 平台运营 | mch/mch/index/mch-service | 总店自营订单用的总店 sub_mch |
| — | mch/wechat-platform/settings | 平台小程序分账用;总店独立小程序场景通常不填此处 |
| 报错 / 现象 | 常见原因 | 处理建议 |
|---|---|---|
| 受理机构必须传入 sub_mch_id | 小程序设置填了服务商号,但下单分店未配置子商户号;或总店自营单未配总店 sub_mch | 分店 →「分账账户」补全 sub_mch 并开启分账;总店自营 → 平台「商户设置」补总店 sub_mch |
| 分店已配 sub_mch 仍失败 | 子商户号与服务商不匹配;或未进件完成 | 在微信服务商后台核对分店子商户归属与状态 |
| 误用直连商户号却开了分店分账 | mp-config 填普通直连号,又想走 sub_mch | 二选一:要么改直连模式(见 模式③,不配分店 sub_mch);要么改服务商号并按本文配齐子商户 |
| APPID 与商户号不匹配 | 总店小程序 AppID 未绑定服务商商户号 | 登录 微信支付商户平台 → 产品中心 → AppID 账号管理 |
yjd_wechat_app 已保存 AppID + 服务商 mch_id + keyWechatServiceProvider 核对)_zong_mch_id、分店 mch_id