微信支付于2019年8月26日对微信支付分产品进行了迭代升级,相关API接口也进行了收敛升级,旨在提升用户体验,方便商户前期接入与后期统一维护。微信支付分后续开发的新功能都将仅支持新接口的调用,老接口也将于2020年12月15日停止维护。
新接口不再区分智慧零售、先享后付、免押租借、免押速住这四种模式,而是统一分为【免确认模式】和【需确认模式】接口,原有的免押租借、免押速住和大部分先享后付接口均为【需确认模式】接口,智慧零售默认为【免确认模式】接口。【免确认模式】是特殊接口方案,目前仅智慧零售、网约车、路边停车、共享单车/电单车等行业可申请使用。
接入支付分的主要接口,请使用公共API目录下的创建支付分订单、查询支付分订单、完结支付分订单等接口,具体填参请参照API文档填写。其中,【免确认模式】、【需确认模式】均使用公共API下的接口,只有确认订单拉起、授权服务查询等才使用不同的接口。
1)新接口的确认订单回调地址和支付成功回调地址,不再使用后台配置的方式,在创建订单环节以参数的形式填入,参见创单接口的notify_url字段。
2)开启服务回调地址,还是在后台配置,申请入驻支付分时填写。可联系对接的业务人员做修改调整。
3)解密优化:如果商户当前解密回调内容是轮询用商户号解密,可以用新的创单接口,在创单时指定不同的回调地址,从而用不同的商户号解密。对于开启服务回调地址,则可以在不同的商户号下配置不同的回调地址,区分不同商户号下开通的支付分。
1)老接口和新接口的支付分订单状态不一致,商户升级接口需要注意按照新文档的支付分订单状态开发
2)接口根据订单状态有调用前提,老接口和新接口调用前提不一致,具体参看支付分新文档
支付分的订单状态在如下:
正常订单状态流: | CREATED--->DOING(USER_COMFIRM)--->DOING(MCH_COMPLETE)--->DONE |
---|
订单状态 | 订单状态说明 | 说明 |
---|---|---|
CREATED:已创建服务订单 | / | 指商户调用创建订单接口成功后的订单状态 |
DOING:服务订单进行中 |
USER_COMFIRM:用户确认 | 指用户在支付分页面上确认订单成功后的订单状态或(免确认订单模式下,创建订单成功后时的订单状态) |
MCH_COMPLETE:商户完结 | 指商户调用完结订单接口成功后的订单状态 | |
DONE:服务订单完成 | / | 指从用户侧扣款成功 (微信支付分代扣成功,且非0元订单)时的订单状态 或 调完结订单接口并且扣款金额为0元时 (0元结单)的订单状态 或 商户调用订单信息同步接口成功时的订单状态 |
REVOKED:商户取消服务订单 | / | 指商户调用取消订单接口成功后的订单状态 |
EXPIRED:服务订单已失效 | / | 指"商户已创建服务订单"状态超过30天未变动,则订单失效。 |
订单状态 | 订单状态说明 | 收款渠道 | 说明 |
---|---|---|---|
USER_PAYING:待支付 | DOINE-(MCH_COMPLETE) | / | 指未扣款成功 |
USER_PAID:已支付 | DONE | NEWTON:微信支付分 | 指从用户侧扣款成功 (微信支付分代扣成功) |
MCH:商户渠道 | 指商户调用订单信息同步接口成功(商户通过其他方式收到钱了,用此接口通知微信支付分停止轮询) |
回调类型 | 回调触发机制 | 触发时间 | 说明 |
---|---|---|---|
确认订单回调通知 | 当订单主状态为:【DOING:服务订单进行中】 子状态为:【USER_CONFIRM:用户确认】时 |
立即 | 需确认订单流程:用户点击支付分页面确认订单按钮后 免确认订单流程:商户创建订单成功且用户通过本次订单风险评估后 |
支付成功回调通知 | 当订单主状态为:【DONE:服务订单完成】 子状态为:【USER_PAID:已支付】时 |
立即 | 需确认订单流程:商户调用完结发起扣款且用户支付成功后 免确认订单流程:商户调用完结发起扣款且用户支付成功后 |
授权/解除授权服务回调通知 | 当用户授权状态 【UNAVAILABLE:用户未授权服务】 【AVAILABLE:用户已授权服务】发生转变时 |
立即 | / |
原有以智慧零售、先享后付模式接入支付分的商户,请确认验签方式是否已升级为v3模式,如无,请升级。原有以免押租借、免押速住模式接入支付分的商户,请按如下指引升级为《微信支付v3验签方式 》
原有智慧零售、先享后付、免押租借、免押速住模式请确认是否设置了apiv3密钥,如无,请按如下指引设置apiv3密钥设置指引:《APIv3密钥设置》
原有智慧零售、先享后付、免押租借、免押速住模式请确认原有api密钥是否正确,如丢失,可以按如下指引重置api密钥设置指引:《APIv2密钥设置》
1)新老接口不可混用。使用新接口创建的订单,查询、完结等接口也需要使用新的接口;老接口生成的订单,也只能用老接口进行查询、完结等操作。(接入新接口后,商户需要保留一段时间老接口,以便对老接口生成的订单进行处理。)
2)免确认模式特有API下的创单结单合并接口,暂未对外开放,如有需要请咨询对接的业务人员,申请开通调用权限。适用于无需微信支付分做订单风控判断的业务场景,在服务完成后,通过该接口对用户进行免密代扣。