前言

请先阅读业务接入指引

1. 接入

1.1 申请接入

方式一、MP接入

微信公众平台登录小程序,选择自定义版交易组件,并申请开通功能,进入审核流程。商家也可以通过调用申请接入的接口申请开通功能。


方式二、API接口

调用申请接入接口


1.2 接入查询

方式一、MP查看

方式二、API接口

调用查询接入接口


2. 上传商品

对于部分场景,比如视频号直播,想在橱窗上架商品进行直播带货,必须事先通过API把商品上传到交易组件中台

2.1 获取类目列表,检查商品对应的类目是否需要事先申请资质

调用获取类目列表接口

2.2 上传类目资质

调用上传类目接口

等待类目审核回调

2.3 上传品牌资质

调用上传品牌接口

等待品牌审核回调

2.4 新增商品

调用添加商品接口

等待商品审核回调


3. 支付校验

对于部分场景,比如视频号直播,想在橱窗上架商品进行直播带货,必须事先通过API把商品上传到交易组件中台

详细场景说明请跳转场景接入指引

3.1 开发环境打开支付校验

小程序在开发分支流程 app.json 中添加以下参数设置(该参数只对开发环境生效,代码发布后该参数失效,即正式版小程序是否打开支付校验只与下文3.2相关)

"usingShopPlugin": true;


3.2 判断当下是否需要支付校验(同步合法的订单到微信侧)

商家前端先通过getEnterOptionsSynconShow拿到小程序当前场景值scene

再通过检查场景值是否在支付校验范围内接口判断该 scene是否需要支付校验

3.3 新旧支付校验说明

旧方案需要通过后台api同步订单并获取ticket,最后通过ticket拉起wx.requestPayment,新的方案只需要直接把订单数据调用wx.requestOrderPayment即可

是否校验,是根据场景值来决定,所以开发者可以采用两种方式来决定什么时候开始校验:

  • 判断场景情况,若为需要检验的场景则调用校验逻辑,否则不校验,后续场景值拓展后,需要进行实时的跟进,否则将会导致此场景无法交易;
  • 推荐使用全量订单上传,不需要根据场景值进行判断,后续场景值迭代时,无需更改。

原ticket支付校验(即将废弃):通过同步订单给api拿到ticket后调jsapi(新接入的商家请使用上文的推荐方式)

调用同步订单接口,注意订单会检查订单中的商品是否存在,以及其状态是否上架中

调用成功后,会拿到一个支付校验的票据ticket,在基础库中的requestPayment传入ticket字段才能正常拉起收银台

    wx.requestPayment({
        timeStamp: '',
        nonceStr: '',
        package: '',
        signType: 'MD5',
        paySign: '',
        ticket: '', // 需要新增的 ticket 信息
        success (res) { },
        fail (res) { }
    }) 

新支付校验:订单直接传给jsapi方法

商家前端使用新的收银台jsapi wx.requestOrderPayment替换wx.requestPayment

参数orderInfo的格式请跳转查看

    wx.requestOrderPayment({
        timeStamp: '',
        nonceStr: '',
        package: '',
        signType: 'MD5',
        paySign: '',
        orderInfo: {...}, // 需要新增的 订单 信息
        success (res) { },
        fail (res) { }
    }) 

3.4 订单更新

注意,同步过来的订单且通过3.4.1同步状态的订单会同步到微信的小程序订单中心。

3.4.1 订单状态同步

调用同步订单支付结果接口同步支付成功结果


3.4.2 同步售后信息

开发这需要将产生售后了的订单售后信息进行流转、同步,如若没有产生售后,则不需要。 调用同步售后接口同步售后


3.5 发布代码,对线上环境生效

完成接口对接及商品上传后,提交代码至微信团队审核,审核通过后即可发布,此时支付校验正式生效