资讯动态
观察行业视觉,用专业的角度,讲出你们的心声
2026-10-06
接微信支付,写代码往往一天,等配置常常一周。五个常见卡点:商户主体与小程序主体不一致、经营场景与类目不符、支付授权目录没配、API 证书与密钥放错、支付回调地址外网不可达。
小程序的主体(营业执照)和微信支付商户号的主体必须是同一个,或者有明确的关联关系(同集团、同法人可申请关联)。用 A 公司的小程序收 B 公司的钱,属于二清,会被限制。这一条要在注册前确认,改起来非常麻烦。
商户号申请时要选经营场景:线下门店、公众号、小程序、APP、网站。选了小程序,就要填小程序 AppID;选了线下门店,要填门店地址和照片。填错会导致支付功能开通了但下单时报「商户号未配置该场景」。
商户 API 证书、APIv3 密钥、平台证书,这三样东西经常被放错。常见问题:证书路径写成了本地绝对路径、上线后忘记同步、密钥用了 APIv2 的去调 APIv3 接口。现在新接入建议直接用 APIv3,密钥长度是 32 位,不是 16 位。
安全上要注意:密钥不要写进代码仓库,放在环境变量或独立配置文件里,并且不要放在 web 可访问目录。这一点在服务器被扫描时区别很大。
支付成功后的回调是「服务端到服务端」的请求,很多人只在自己浏览器里测通就上线,结果回调被防火墙拦、被 CDN 缓存、被 https 证书链问题挡住。表现是:用户付了钱,订单状态还是「待支付」。
排查顺序:先看服务器访问日志有没有收到请求,再看证书是否完整(中间证书要带),最后看是否被 WAF 规则拦。回调地址最好独立于前端域名,避免被当成普通页面做缓存。
支付成功不等于订单正确。要每天拉一次微信账单,与自己的订单表比对:金额、订单号、退款、手续费。差异通常来自三处:部分退款、超时未支付后关闭、重复回调导致重复发货。系统要对回调做幂等处理,同一个订单号重复通知只处理一次。
普通商户的费率按行业分档,结算默认次日到账,可以申请更快或更慢的周期。这部分成本要在报价或运营预算里体现,尤其是客单价低、退款率高的业务,手续费与退款手续费会明显吃掉毛利。
退款要区分「全额退」和「部分退」:全额退通常退还手续费,部分退按比例,具体以商户平台的規則为准。系统里要能看到每笔订单的手续费,否则算不出真实毛利。锐达盛世网络科技做涉及交易的项目时,会把手续费字段做进订单表,方便后期核算。
锐达盛世网络科技在交付涉及支付的系统时,会把证书、密钥、回调地址、对账脚本作为交付清单的一部分,并在上线首周盯对账差异。支付的问题 90% 出现在配置和边界流程,而不是主流程。