开发指引

更新时间:2026.04.09
||
提示:本功能目前处于灰度测试阶段、暂未开放使用,待全量开放后将通过文档门户公告同步,感谢您的理解。

1、开发前准备

1.1、设置安全联系人

微信支付日常安全监测发现技术异常时,会向安全联系人和超级管理员发送风险提醒。请商户超级管理员尽快设置技术同事为安全联系人,确保能及时接收异常信息评估业务风险,详见安全联系人设置指引

1.2、熟悉微信支付接口规则

正式进入开发前,开发者需要先阅读基本规则开发参数申请和配置了解调用微信支付接口的基本规则和签名规则。

1.3、准备开发参数

在发起接口请求时,开发者还需传入一些必要参数,如服务商商户号、子商户号(也叫特约商户号)、sp_appid、证书私钥、公钥等,获取方式详见:服务商模式开发必要参数说明

2、整体业务开发流程概览

注意:

  • 如果用户选择的是非微信分付支付,时序与普通支付的流程一致

  • 微信分付支付不支持H5支付和Native支付方式

  • 服务商后端调用下单接口,获取预支付ID  prepay_id ,调起微信支付,唤起微信支付收银台。

  • 当用户在收银台完成支付后点击完成按钮,或中途取消支付,页面会从收银台跳转到商户页内,同时服务商/子商户前端将收到回调,此时服务商后端需调用查单接口确认订单状态,并根据订单状态进行相应的业务逻辑处理(在服务商/子商户页面向用户展示查询到的订单支付状态、在服务商内部系统更新订单状态等),如果订单支付成功,微信支付系统还会发送支付成功回调通知给服务商。

  • 最后服务商可通过下载交易账单进行对账。需要退款的订单,也可调用退款接口完成退款。 

 

3、详细步骤说明

用户选择微信分付支付的时序图如下所示(如果用户选择的是微信支付,时序保持不变,没有在下图展示),在当前接入微信支付的时序上新增1个交互接口,修改4个交互接口,以红线标识。

 

3.1、查询曝光建议

当用户查看商品详情页时,商户系统会查询微信支付系统以获取支付方式的曝光建议(步骤1.2,参考 获取微信分付曝光建议 ),根据结果决定是否前置曝光微信分付。分付。

3.2、服务商下单

用户选择微信分付支付方式付款,商户系统调用微信支付系统下单(步骤1.6,参考JSAPI/小程序下单APP下单JSAPI/小程序合单下单APP合单下单),获取预支付交易会话标识  prepay_id 下单时可以传递一个参数  subsidy_info  表示商户支持的贴息方案,定义如下。如果服务商决定不贴息就不需要传该参数。

字段名

类型

是否必填

如何传递

描述

subsidy_info

object

Body

贴息信息

subsidy_info 结构如下

字段名

类型

是否必填

如何传递

描述

subsidy_detail

array

Body

贴息详情

subsidy_detail 结构如下

字段名

类型

是否必填

如何传递

描述

subsidy_period_type

string

Body

必填 "PERIOD"

subsidy_plan

array

Body

贴息方案

subsidy_plan 结构如下

字段名

类型

是否必填

如何传递

描述

subsidy_installment_num

int

Body

贴息期数,只能填3、6或12.

subsidy_percent

int

Body

贴息比例,只能填0或者100。0表示不贴息,100表示免息。

例如,商户支持对3期和6期免息传递参数如下:

1{
2  "subsidy_info": {
3    "subsidy_detail": [
4      {
5        "subsidy_period_type": "PERIOD",
6        "subsidy_plan": [
7          {
8            "subsidy_installment_num": 3,
9            "subsidy_percent": 100
10          },
11          {
12            "subsidy_installment_num": 6,
13            "subsidy_percent": 100
14          }
15        ]
16      }
17    ]
18  }
19}

3.3、服务商调起支付

服务商在调起微信支付(步骤1.8,参考JSAPI调起支付小程序调起支付APP调起支付JSAPI合单调起支付小程序合单调起支付APP合单调起支付)时,需通过一个扩展参数传递用户选择的支付方式,具体传参规则如下:

  1. JSAPI支付和小程序支付场景:

    • 若用户选择的是微信分付的随时还,参数  package为prepay_id=*&subsidy_period_type=DAILY,其中  prepay_id  的值传下单接口获取的“预支付交易会话标识”;

    • 若用户选择的是微信分付的分期还,参数  package为prepay_id=*&subsidy_period_type=PERIOD&selected_installment_number=*, 其中  selected_installment_number  填用户选择的还款期数。

  2. APP支付场景:

    • 若用户选择的是微信分付的随时还,参数  packageValue为Sign=WXPay&SubsidyPeriodType=DAILY

    • 若用户选择的是微信分付的分期还,参数  packageValue为Sign=WXPay&SubsidyPeriodType=PERIOD&SelectedInstallmentNumber=*, 其中  SelectedInstallmentNumber  填用户选择的还款期数。

3.4、用户支付

用户在微信收银台完成支付/取消支付,返回商户前端页面后,微信浏览器内置对象方法会收到回调,此时服务商需要调用查单接口(步骤1.14,参考JSAPI支付查单小程序支付查单APP支付查单合单查单)确认订单状态,并返回如下字段表示支付时使用的商户贴息信息。

字段名

类型

是否必填

描述

installment_info

object

为商户贴息的订单并且支付成功才有以下字段。

installment_info 结构如下

字段名

类型

是否必填

描述

use_subsidy

bool

是否使用了商户贴息

selected_installment_number

int

用户实际选择分期期数

同时,如果用户支付成功,微信支付系统会向服务商发送支付通知(步骤1.11,参考JSAPI支付通知小程序支付通知APP支付通知合单支付通知),在resource解密后字段中新增如下字段表示支付时使用的商户贴息信息。

字段名

类型

是否必填

描述

installment_info

object

为商户贴息的订单并且支付成功才有以下字段。

installment_info 结构如下

字段名

类型

是否必填

描述

use_subsidy

bool

是否使用了商户贴息

selected_installment_number

int

用户实际选择分期期数

3.5、商户对账

详细参考:账单产品介绍

样例如下:

  • 分期技术服务费的扣费会新增一条记录

  • 分期技术服务费的退费会在“退款”的备注中注明

3.6、订单退款

详细参考:退款产品介绍

关于分期技术服务费的退费:15个自然日内的订单原路退回,否则不退。