开发指引

更新时间:2025.03.27

# 1. 接口规则

为了在保证支付安全的前提下,带给商户简单、一致且易用的开发体验,我们推出了全新的微信支付APIv3接口。该版本API的具体规则请参考APIv3接口规则

# 2. 开发准备

# 2.1. 搭建和配置开发环境

开发者应当依据自身的编程语言来构建并配置相应的开发环境。

# 2.2. 业务开发配置

1、微信支付分的相关配置参数在商户入驻的过程中都已经配置完成(前往查看配置相关内容),例如授权结果回调URL、service_notify_url、测试白名单、免确认订单模式的权限等。

2、如果发现配置信息有误,请主动联系微信支付分运营同学协助修改,或者点击右侧导航栏进入在线技术客服进行技术咨询。

# 3. 快速接入

# 3.1. 业务流程图

# 业务流程时序图

时序图

重点步骤说明:

步骤1 用户在商户侧下单,商户调用后台接口创建支付分订单,通过接口返回获得跳转微信支付分小程序进行订单确认的必填参数“package”

我们通过此接口来创建支付分订单:创建订单API (更换成间连链接)

  • 入参“need_user_confirm”,取值请选择 “true”;
  • 入参“risk_fund:name”,取值请选择【免密模式】中的枚举值。

步骤2 调用前端方法跳转至微信,让用户完成确认订单操作

我们通过以下前端方法可调起微信客户端(注意区分场景):

用户确认订单完成,商户系统将收到确认订单回调通知,此时可为用户提供服务;

我们通过以下接口将用户确认订单信息回调通知给商户系统:

在用户确认订单过程中可能出现长时间未收到回调、用户确认失败等情况,商户可先通过后台接口查询订单状态:

根据查询到的订单状态结果,商户可决定是否需要取消当前订单,后台接口为:

步骤3 用户服务结束,商户通过后台接口完结支付分订单;

调用完结订单API

步骤4 从业机构需要调用微信支付分系统登记扣款信息,之后再调用清算机构受理扣款

调用登记扣款信息API

通过查询订单API接口主动查询扣款情况。

  • 如订单状态state=DONE,且收款状态collection.state=USER_PAID,代表扣款成功
  • 如订单状态state=DOING,state_description=MCH_COMPLETE,且收款状态collection.state=USER_PAYING,代表扣款进行中

如遇到网络、服务器等原因造成无法正常接收扣款成功通知,一般有两种解决方法:

  1. 主动查单,通过查询订单API 接口主动查询扣款情况

# 3.2. API接入(含示例代码)

文档展示了如何使用微信支付服务端 SDK 快速接入商家券产品,完成与微信支付对接的部分。

注意

  • 文档中的代码示例是用来阐述 API 基本使用方法,代码中的示例参数需替换成商户自己账号及请求参数才能跑通。
  • 以下接入步骤仅提供参考,请商户结合自身业务需求进行评估、修改。

# 3.2.1. 【服务端】创建订单

步骤说明: 完成用户授权后,即可创建支付分订单,为用户提供服务了。

示例代码

重要入参说明:

  • 入参“need_user_confirm”,取值请选择 “true”;
  • 入参“risk_fund:name”,取值请选择【先免模式】中的枚举值。

更多参数、响应详情及错误码请参见创建支订单API接口文档

# 3.2.2. 【服务端】查询分订单

步骤说明: 一般在创建订单后、订单完结成功后等关键流程中,商户可能有知晓订单状态的需求,此时即可通过该接口查询订单状态。

示例代码

更多参数、响应详情及错误码请参见 查询订单接口文档

# 3.2.3. 【服务端】取消订单

步骤说明: 订单为以下状态时可以取消订单:CREATED(已创单)、DOING(进行中)(包括商户完结支付分订单后,且支付分订单收款状态为待支付USER_PAYING)。

示例代码

更多参数、响应详情及错误码请参见 取消订单API接口文档

# 3.2.4. 【服务端】完结订单

步骤说明: 用户服务结束后,商户通过请求完结支付分订单接口,通过微信支付分进行用户扣款操作。

示例代码

更多参数、响应详情及错误码请参见完结订单API接口文档

# 3.2.5. 【服务端】登记扣款信息

示例代码

更多参数、响应详情及错误码请参见 登记扣款信息接口文档

# 3.2.6. 【服务端】查询扣款信息

示例代码

更多参数、响应详情及错误码请参见 查询扣款信息接口文档

微信支付文档中心已升级,你当前所查看的是旧文档中心的内容,旧文档中心将于 2025年 3 月 31日 下线,请移步 [新文档中心] 查看相应的内容