Appearance
微信支付配置
微信支付接入流程繁琐、限制多,是配置难度最高的支付渠道。本章从服务号认证、商户号注册、产品申请到 DJAOD 后台配置,逐一说明各环节要点。
一、前置条件
接入微信支付前,需先准备以下两项:
| 项目 | 费用 | 说明 |
|---|---|---|
| 已认证的服务号 | 300 元/年 | 微信公众平台注册,需企业资质认证 |
| 微信商户号 | 0 元(有保证金要求) | 微信支付商户平台注册,需营业执照 |
个体户/企业均可申请,个人无法申请微信支付。
二、服务号注册与认证
1. 注册服务号
前往 微信公众平台 点击 立即注册,选择 服务号:
- 邮箱:未被微信公众平台注册过的邮箱
- 主体类型:选择 企业 或 个体工商户
- 主体信息:填写营业执照上的公司名称、统一社会信用代码等
2. 微信认证
注册完成后,在 设置 → 微信认证 中发起认证:
- 认证费用:300 元/年(需每年续费,认证失效后支付将受影响)
- 认证方式:对公账户打款验证或法人微信扫码验证
- 审核周期:1-3 个工作日
认证必须完成,未认证的服务号无法使用微信支付接口。
3. 获取 AppID
认证通过后,在 开发 → 基本配置 中查看 AppID(应用ID),后续配置中需要用到。
4. 设置 IP 白名单
在 开发 → 基本配置 → IP白名单 中,添加你的服务器公网 IP,否则接口调用会返回 IP 未授权 错误。
三、商户号注册
1. 申请商户号
方式一:在服务号后台 广告与服务 → 微信支付 点击 开通,直接关联申请
方式二:前往 微信支付商户平台 点击 接入微信支付 → 注册商户号
2. 提交资料
填写以下资料并提交审核:
- 营业执照:原件彩色照片或扫描件
- 法人身份证:正反面照片
- 对公账户:用于结算和验证
- 经营类目:选择与你的业务匹配的类目(详见下文第四章)
- 客服电话:网站或服务号公布的客服电话
审核通过后,商户号即开通(通常 1-7 个工作日)。
3. 商户号与 AppID 绑定
登录 商户平台 → 产品中心 → AppID账号管理 → 关联AppID,输入服务号的 AppID 进行关联。
一个商户号可关联多个 AppID(公众号、小程序、App),前提是主体一致。
四、经营类目选择(H5支付必看)
申请微信支付时需要选择经营类目,类目决定了你的费率、结算周期以及是否有资格申请 H5 支付。
H5 支付的特殊限制
H5 支付(用户在浏览器内调起微信支付)是微信支付中审核最严的产品。微信官方对 H5 支付的类目有强制要求:
H5 支付支持的类目(常用):
| 一级类目 | 二级类目 | 说明 |
|---|---|---|
| 电商平台 | 综合电商、垂直电商 | 需提供电商平台资质 |
| 在线教育 | 在线课程、知识付费 | 需提供教育相关资质 |
| 医疗 | 在线问诊、医药 | 需医疗资质 |
| 交通出行 | 网约车、票务 | 需行业许可 |
| 生活服务 | 家政、维修 | 普通生活服务 |
| 休闲娱乐 | 游戏、视频、直播 | 需相关许可证 |
以下类目通常无法申请 H5 支付:
- 金融、借贷、投资理财
- 彩票、赌博
- 虚拟货币、区块链
- 部分高风险的二级类目
强烈建议:在申请商户号时就确定好类目。如果先选择了不支持 H5 的类目,后续要变更类目非常困难,甚至需要重新申请商户号。
费率与结算
| 产品 | 费率 | 结算周期 |
|---|---|---|
| JSAPI 支付 | 0.6% | T+1 |
| Native 支付 | 0.6% | T+1 |
| H5 支付 | 0.6% | T+1 |
| App 支付 | 0.6% | T+1 |
五、产品申请与配置
JSAPI 支付(公众号内支付)
产品说明:用户在微信内打开网页,通过 JSAPI 调起微信支付。
申请方式:商户号默认开通,无需额外申请。
配置要点:
- 在商户平台 产品中心 → JSAPI支付 中点击 开通
- 关联已认证的服务号 AppID(见第三章步骤 3)
Native 支付(PC网站扫码支付)
产品说明:PC 网站生成二维码,用户扫码支付。
申请方式:商户号默认开通。
配置要点:
- 在商户平台 产品中心 → Native支付 中点击 开通
- 设置回调链接:
https://www.example.com/payment/wechat/notify
H5 支付(手机浏览器支付)
产品说明:用户在手机浏览器(非微信内)中选择微信支付,自动跳转至微信完成支付。
申请方式:需单独提交审核。
申请条件:
- 商户号经营类目必须在 H5 支持的类目范围
- 需提供 H5 支付页面的完整网址供审核
- 审核时会人工访问网站,确认网站内容与申请类目一致
审核要点:
- 网站首页必须有完整的 ICP 备案号
- 网站必须有明确的客服联系方式
- 网站内容不得违规(涉黄、涉赌、金融等)
- 页面打开速度正常,功能完整
配置要点:
- 在商户平台 产品中心 → H5支付 中点击 申请开通
- 授权域名:填写你的网站域名(如
www.example.com)
App 支付(移动App内支付)
产品说明:在自有 App 内调起微信支付。
- 需开放平台账号(
open.weixin.qq.com)注册应用获取 AppID - 在商户平台绑定该 AppID
- 下载 SDK 集成至 App 中
六、获取 API 密钥
1. APIv2 密钥
登录 商户平台 → 账户中心 → API安全 → 设置APIv2密钥:
- 生成 32 位随机字符串(数字+字母,大小写均可)
- 妥善保存,后续 DJAOD 配置需要使用
密钥泄露会导致资金风险,建议定期更换,并开启 API 证书 增强安全。
2. APIv3 密钥(V3接口使用)
在 API安全 中同时设置 APIv3密钥,用于新版接口的证书鉴权:
- 生成 32 位随机字符串
- 下载 API 证书(用于退款、转账等敏感操作)
3. 配置 IP 白名单
在 API安全 中设置 IP白名单,仅允许你的服务器 IP 调用 API。
七、DJAOD后台配置
登录 DJAOD 后台,进入 系统设置 → 微信支付配置,依次填写:
| 配置项 | 说明 |
|---|---|
| 公众号 AppID | 微信服务号的 AppID |
| 商户号(MchID) | 微信支付商户号(以 16 开头的数字) |
| APIv2 密钥 | 商户平台设置的 32 位 API 密钥 |
| APIv3 密钥 | 商户平台设置的 APIv3 密钥(V3接口使用) |
| 支付通知地址 | 微信支付异步回调地址,需公网可访问 |
| 退款通知地址 | 退款结果回调地址(可选) |
| SSL 证书路径 | API 证书文件路径(p12 或 pem 格式) |
| SSL 证书密钥 | 证书密钥(p12 密码或 pem 的私钥) |
关于 H5 支付:开启后用户通过手机浏览器访问网站时会自动使用 H5 支付调起微信;在微信内访问时自动使用 JSAPI 支付。
支付场景对照
| DJAOD 接口 | 微信支付产品 | 适用场景 |
|---|---|---|
jsapi | JSAPI 支付 | 微信内网页 |
native | Native 支付 | PC 网站扫码 |
h5 | H5 支付 | 手机浏览器 |
app | App 支付 | 移动 App |
miniapp | 小程序支付 | 微信小程序 |
八、测试与上线
1. 沙箱测试
微信支付提供 沙箱环境 用于开发调试:
| 沙箱地址 | 说明 |
|---|---|
https://api.mch.weixin.qq.com/sandboxnew/ | 沙箱 API 地址 |
| 沙箱密钥 | 使用沙箱密钥 API 获取 |
2. 生产验证
上线前在真实环境逐项测试:
- [ ] JSAPI 支付:在微信内打开页面 → 支付 → 回调
- [ ] Native 支付:PC 端点击支付 → 弹二维码 → 扫码支付 → 回调
- [ ] H5 支付:手机浏览器打开 → 跳转微信 → 支付 → 回跳浏览器
- [ ] 支付成功 → 订单状态更新
- [ ] 支付失败 → 订单状态回滚
九、常见问题与排查
| 问题 | 原因与解决 |
|---|---|
当前页面的URL未注册 | JSAPI 支付未配置 JSAPI 支付目录(商户平台 → 产品中心 → JSAPI支付 → 设置支付目录,填入网站域名) |
商户号未申请此产品权限 | 对应产品未开通,检查产品中心是否已开通 |
IP 未注册 | API 安全中未配置 IP 白名单 |
商户号无效 | MchID 填写错误,或商户号审核未通过 |
H5支付权限不足 | 商户类目不支持 H5 支付,需联系客服变更类目 |
支付成功但订单状态未更新 | 检查 notify_url 是否公网可访问,未收到回调时可在商户平台手动发起订单查询 |
appid 与 mchid 不匹配 | 商户号未绑定该 AppID,在 AppID 账号管理中关联 |
调用接口返回签名错误 | API 密钥填写错误,或签名算法不匹配(微信使用 MD5 或 HMAC-SHA256) |
重要提醒
- 每年续费:服务号认证 300 元/年,到期未续费支付将暂停
- HTTPS 必需:所有支付相关的页面和接口必须使用 HTTPS
- ICP 备案:网站必须完成 ICP 备案,否则 H5 支付审核不通过
- 日志保存:支付相关的请求和响应日志需保存至少 6 个月,便于对账和排查