「支付这块下周能搞定吧?就接个微信支付而已。」做项目这些年,这句话听过不下二十次。每次都得跟客户掰扯清楚:API接口对接这件事,写代码可能真只要两三天,但前后准备和反复测试,才是真正吃工期的地方。今天就按一个真实项目的节奏,把微信支付的对接全流程捋一遍,顺带说说每个环节大概要几天。
前期资料,比写代码更磨人
对接的第一步不是开发,是申请微信支付商户号。营业执照、法人身份证、对公账户、经营场景照片,一样不能少。资料齐全的话,审核两三天能过;要是经营类目填得含糊,来回复核一星期也常见。提醒一句:商户号一定要用客户自己的主体申请,别图省事挂在开发公司账户下,钱流进谁的口袋,这事儿马虎不得。拿到商户号后还要配API证书、设置APIv3密钥,这几样是后面签名的根基,弄错了下单全报签名错误。
下单、回调、退款,三段都要测
真正进入开发,v3接口用官方SDK会省不少事,签名和加密都封装好了。重点在回调环节:notify_url 必须是外网能访问的地址,本地开发得靠内网穿透工具临时暴露。收到回调要验签、要返回正确应答,返回格式不对,微信以为你没收到,十几分钟重推一次,推到你怀疑人生。退款同理,退款结果也是异步回调过来的,不是同步返回。另外金额单位是分不是元,有人按元传,四舍五入差一分钱,对账当场对崩。说白了,支付对接一大半功夫花在处理「通知」上,而不是「发起」上。
对账别等出事才想起来补
上线不等于结束。每天拉一次对账单接口,跟系统订单表比对,发现掉单及时补单,这是标配动作。我们见过促销当天服务器重启,十几笔已付款订单没生成,靠对账脚本第二天兜底捞回来,客户全程无感。要是没有这套东西,那就是十几条投诉等着处理。
两条实在建议:一是把支付模块工期按一到两周报,别按「两天接完」承诺客户;二是选开发团队时优先看同类案例,像比格网络做API接口对接会把回调日志和对账脚本一起交付,出了问题至少能查到流水,这种细节值得签合同前问清楚。