跳到内容
商家帮助中心
Esc
切换打开⌘J预览
本页内容

从零接入自己的微信支付

面向自带微信支付商户号的品牌,从申请商户号、绑定公众号、生成安全材料、配置支付目录,到在新版后台提交并在线验证,再到收到第一笔真实付款的完整步骤。

这篇指南面向使用自己微信支付商户号收款的品牌管理员,按实际操作顺序,把从零开始到收到第一笔顾客付款的每一步列出来。

它是一篇「照着做」的操作指南。三个关键概念——要准备的两样安全材料各自是什么、商户平台上其余材料为什么不用管、顾客在微信里付款为什么要先认人——分别在另外三篇里讲透了,本页只在用到的地方链接过去:

全景:一共六步

步骤 在哪里操作 产出什么
① 申请微信支付商户号 微信支付商户平台 pay.weixin.qq.com 一个 10 位的商户号(在「个人设置 → 个人信息」里查)
② 把商户号和公众号绑定 商户平台发起,公众号管理员确认 商户号与公众号的绑定关系
③ 生成两样安全材料 商户平台「账户中心 → API安全」 API 密钥商户 API 证书(两个 .pem 文件)
④ 配置 JSAPI 支付授权目录 商户平台「产品中心」 付款框能在预约页弹出的许可
⑤ 在新版后台提交并在线验证 新版后台「微信与数据接口 → 微信支付」 材料交付 Darkroom,逐项验证通过
⑥ 真实付款走一遍 你自己的手机微信 第一笔真实到账,接入完成

①—④ 都在微信侧,⑤⑥ 回到 Darkroom 侧。微信侧的页面布局和审核要求会不定期调整,具体入口位置和材料要求以微信页面当时的提示为准;本页写的是每一步的目的和最容易出错的地方,这些不太会变。

逐步操作

① 申请微信支付商户号

超级管理员的身份在 pay.weixin.qq.com 提交开户申请。通常需要准备:营业执照、法定代表人身份证、对公账户信息(个体工商户的可选项以微信页面为准)、以及一个用于管理的手机号和邮箱。

提交后微信会进行审核,并向结算账户打一笔随机小额验证款,按页面提示回填金额即可。审核通过后你会得到一个商户号(10 位数字),后面每一步都要用到它。

商户号随时可以在商户平台的「个人设置 → 个人信息」里查到——注意那页上没有一栏叫「商户号」,显示它的那栏叫「登录账号」:

微信支付商户平台 · 个人设置 → 个人信息
pay.weixin.qq.com/index.php/extend/employee
微信支付商户平台
个人信息
账号信息
登录账号1900000109 (本账号)
创建时间2023年3月15日 10:26:41
这页没有一栏叫「商户号」——「登录账号」显示的这串数字就是你的商户号, 交给 Darkroom 时填的就是它。它是 10 位数字,看着像手机号但不是。

已经有商户号的品牌(例如线下门店早就在用微信收款)不需要重新申请,直接从第 ② 步开始。

② 把商户号和公众号绑定

在商户平台的 AppID 账号绑定入口(通常在「产品中心」里),填入你公众号的 AppID 发起绑定,然后由公众号管理员在公众平台或微信里确认。

AppID 在公众号后台的「设置与开发 → 账号设置 → 账号详情」页最下面的「注册信息」板块里:

服务号后台 · 账号设置 → 账号详情
mp.weixin.qq.com
账号设置
账号详情功能设置授权管理
注册信息
登录邮箱brand@example.com
AppIDwxd930ea5d5a258f4f
「注册信息」在「账号详情」页的最下面,进去要往下滚。 AppID 是 wx 开头的一串字符,是公众号的身份编号,可以公开——它和 AppSecret 不是一回事。

这一步经常被漏掉,而且漏掉后的报错出现得很晚:前面所有配置都正常,直到顾客付款的最后一刻才提示「付款人身份不符」——因为拿 openid 用的公众号和收款用的商户号互不相认。原理见认人那篇的「配错了会怎样」

③ 生成两样安全材料

进入商户平台的「账户中心 → API安全」,这一步要的两样都在这个页面的「验证商户身份」一组里:

微信支付商户平台 · 账户中心 → API安全
pay.weixin.qq.com/index.php/core/cert/api_cert
API安全
验证商户身份
商户调用API时签名使用
商户API证书已申请2030年05月18日过期
商户API证书用于证实商户身份,需妥善保管防止泄露:APIv2中,调用微信支付安全级别较高的接口;APIv3中,调用微信支付所有接口需使用
管理证书查看指引
商户APIv2密钥已设置
调用APIv2时,需用APIv2密钥签名,从而界定你的身份,需妥善保管防止泄露(APIv2密钥与APIv3密钥互不影响)
修改查看指引
Darkroom 要的就是这一组两样。左边下载得到 apiclient_cert.pemapiclient_key.pem 两个文件;右边这把「商户APIv2密钥」就是本站说的 API 密钥,已经设过的话按钮显示「修改」。
往下还有两组,都是 APIv3 接口用的,Darkroom 用不到,不需要设置。 留着「未启用 / 未设置」不影响收款。
验证微信支付身份
商户接收APIv3的请求应答、回调时验签使用
微信支付公钥未启用
微信支付回调、应答商户时会使用微信支付私钥签名,商户需要使用微信支付公钥验签,用于验证微信支付的身份
申请公钥查看指引
解密回调
商户解密APIv3的回调通知使用
APIv3密钥未设置
调用APIv3的下载平台证书接口、处理回调通知中报文时,要通过该密钥来解密信息(APIv3密钥与APIv2密钥互不影响)
设置查看指引

在这里完成两件事:

  1. 设置 API 密钥(页面上这张卡叫「商户APIv2密钥」)——自己设定一个 32 位字符串,设完立刻存进密码管理器(微信不提供事后查看,忘了只能重设);
  2. 申请商户 API 证书——按页面指引操作,下载得到 apiclient_cert.pemapiclient_key.pem 两个文件。其中 apiclient_key.pem 是私钥,通常只能下载这一次,请立刻备份。

这两样各自是干什么的,见密钥与证书那篇

④ 配置 JSAPI 支付授权目录

在商户平台的开发配置里填写「JSAPI 支付授权目录」。需要填的准确目录值显示在新版后台的「微信与数据接口 → 微信支付」页里(就是第 ⑤ 步提交材料的同一页),先打开它把值复制下来,原样粘贴,不要改动任何字符。

逐条核对:结尾必须有 /、必须是 https://、大小写逐字一致、后面不能带参数。⚠️ 这一项每月修改次数有限,填错了当月可能改不回来,填之前先对一遍。

这个框不需要任何域名验证:填完直接保存,商户平台不会让你下载校验文件。要抓校验文件的是公众号后台的域名框,那是另一回事(见下段)。

另一个长得很像的框——公众号后台的「网页授权域名」——不在本页范围:如果你的公众号已通过微信公众号托管授权给 Darkroom,那个框由我们代为配置;仍在用旧方式的品牌,配置方法见认人那篇

⑤ 在新版后台提交材料并在线验证

登录新版后台(os.darkroom.net),进入「微信与数据接口 → 微信支付」,把前面得到的东西逐项填入:商户号API 密钥,并上传证书的两个 .pem 文件。一共就这三项——页面上不会问你要 APIv3 密钥或微信支付公钥。

保存后系统会立刻拿这套材料向微信发起一次真实的接口调用,逐项告诉你结果:

验证项 ❌ 时多半是
商户号 + API 密钥 32 位抄错,或误把「APIv3 密钥」的值填了进来(见第 ③ 步的提醒)
商户 API 证书 证书文件传错了(两个文件张冠李戴)、证书已过期或已重置
商户号与公众号绑定 第 ② 步没做完,或绑定的是另一个公众号

全部 ✅ 才算交付完成——不需要等待人工处理,验证通过即刻生效。

⑥ 用真实付款走一遍

配置类错误有个共同特点:你这边一切正常,只有顾客看得见。所以最后一步必须用自己的手机微信真实走一遍:

  1. 在微信里打开品牌预约入口,按安全检查顾客预约流程选服务、选时间;
  2. 付一笔小额订金,确认付款框能弹出、能支付成功;
  3. 回到订单的「账单/收款」页,确认这笔订金已被记录(见收取和确认订单订金);
  4. 卡在哪一步就按认人那篇的症状对照表定位。

这笔钱进的是你自己的商户号,之后正常退款或留作真实订单都可以。

以后要换密钥、换证书怎么办

证书到期(通常五年,商户平台会提前提醒)、怀疑密钥泄露、或你主动重置了任何一样材料后,回到新版后台的「微信与数据接口 → 微信支付」页重新提交并重新验证即可,流程和首次一样。

⚠️ 顺序很重要:在商户平台重置之后要尽快在新版后台更新——重置的瞬间旧材料即失效,更新之前的这段时间里顾客付款和退款会失败。建议选在没有顾客付款的时段操作,一次做完。

相关内容