接入前准备
更新时间:2023.08.22在正式接入微信支付商家券服务前,你需要进行以下准备步骤:
- 选择接入模式:普通商户或普通服务商
- 申请参数:AppID、商户号
- 操作指引
- AppID与商户号(MCHID)绑定关系解释
- 配置使用规则
# 1. 选择接入模式
商户需要判断自己公司注册区域适用的接入模式和自身实际情况,申请成为普通商户或普通服务商:
- 普通商户自行申请入驻微信支付,无需服务商协助。
- 普通服务商则自身无法作为一个普通商户直接发起交易,其发起交易必须传入相关特约商户商户号的参数信息。
具体接入模式介绍请参考接入模式文档,并按照参考文档完成相应模式的接入。
# 2. 申请参数
请根据自身接入模式分别参考微信支付接入准备-普通商户或微信支付接入准备-普通服务商中的参数申请 - 配置API key - 下载并配置商户证书三个步骤申请接入参数。
# 3. 操作指引
# 3.1. 创建商家券
可通过调用创建商家券接口创建商家券,当前支持创建的商家券类型包含满减券、换购券和折扣券三种。
# 3.2. 发放商家券
当前支持在商家小程序、H5、支付有礼、扫码领券、小程序直播、搜一搜中派发商家券,具体操作流程和文档请参见:微信支付券。
提示
商家的小程序需要先申请开通该发券插件的权限后,才可进行开发。申请审核1个工作日完成。
# 3.3. 核销商家券
可通过调用核销用户券接口核销用户券。
# 3.4. 管理商家券
可通过调用查询商家券批次信息、根据过滤条件查询用户券、查询用户券详情接口管理商家券。
# 4. AppID与商户号(MCHID)绑定关系解释
# 4.1. 什么是绑定关系
- 对于商户,想通过微信去触达用户、服务用户,则需要以小程序、公众号等形态去实现,这时商户需要在公众平台或开放平台注册账号,每一个账号背后都对应一个开发者ID(AppID)。
- 出于安全隐私的角度,在商户连接用户时,微信不会直接把用户的微信号(WechatId)予以暴露,而是通过OpenID去实现触达,实现服务。同一个微信用户,在不同AppID下,OpenID不一样。简单理解:WechatID+AppID=OpenID。
- 同样,对于商户想要使用微信支付提供的服务,比如支付体系接入,营销优惠券体系接入,都需要在微信支付侧开立账号,即开通商户号(MCHID)。商户号记录交易资金往来,提供各种支付、营销能力。
- 微信支付是在微信生态上的产品服务能力。所以涉及到与用户的交互操作,比如公众号支付的JSAPI下单,优惠券发放等都需要公众平台AppID与商户号MCHID打通交互。是否能做这样的业务打通交互,即验证AppID与MCHID之间是否有绑定关系。
# 4.2. 绑定模式
以本商户号为视角,有以下绑定关系:
业务模式 | 商户角色 | MCHID与AppID绑定关系模式 |
---|---|---|
直连模式 | 普通商户 | 模式1:MCHID(普通商户)- AppID |
直连模式 | 普通服务商 | 模式2:MCHID(普通服务商)- AppID |
直连模式 | 特约商户(直连角色) | 模式1:MCHID(特约商户)- AppID |
直连模式 | 特约商户(普通服务商下特约商户角色) | 模式3:MCHID(普通服务商)- mchid(特约商户)-SubAPPID |
间联模式 | 收单机构 | 模式4:MCHID(收单机构)- AppID |
间联模式 | 渠道商 | 模式5:MCHID(渠道商)- AppID |
间联模式 | 特约商户 | 模式6:MCHID(收单机构)- mchid(特约商户)-SubAPPID |
# 4.3. 如何绑定
# 4.3.1. MCHID-AppID
已绑定AppID信息查看与新增绑定关系: (适用于普通商户【模式1】、普通服务商特约商户【模式1】、普通服务商【模式2】、渠道商【模式5】)
登录商户平台 (opens new window)> 产品中心 > AppID账号管理 > 我关联的AppID账号
绑定操作指引: 点击查看 (opens new window)
注意
Westore商户接入微信支付,其申请得到商户号123,Westore有自己的小程序AppID为ABC。完成对应操作,即可创建123(MCHID)---ABC(AppID)的绑定关系。
# 5. 配置使用规则
# 5.1. 创建商家券
商家券创建API接口文档:点击查看
调用该API接口的商户号,即V3接口头部参数签名中的商户号,即为商家券批次的创建商户号。整个接口调用中:
- 涉及的商户号有
- 批次创建商户号(接口签名商户号)、批次归属商户号(belong_merchant);
- 涉及的AppID有
- 立即使用跳转小程序(以下统称:use_method_appid)、自定义入口小程序以及公众号(以下统称:custom_entrance_appid)、事件通知AppID(以下统称:notify_config_appid);
# 5.1.1. 普通商户模式
该模式适用于商户自己给自己制券。
- 商户号校验:
- 创建商户号与归属商户号是同一个商户号,即批次创建商户号 = 批次归属商户号;
- AppID校验:
- 模式1,即MCHID(普通商户,归属商户号)--- AppID;
# 5.2. 发放商家券(小程序发券&H5发券)
商家券小程序发券接口文档:点击查看
商家券H5发券接口文档:点击查看
- 涉及的商户号有:
- 调用该API接口的商户号,即为商家券批次的发放商户号。
- 涉及的AppID有:
- 接入小程序插件的小程序AppID,或H5发券接口中传入的OpenID背后的AppID,以下统称为发券场景AppID。
# 5.2.1. 普通商户模式
该模式适用于商户自己制券自己发券。
- 商户号校验:
- 即谁制券谁调用接口发券,该模式会校验制券商户号是否未发放批次的创建商户号,即发券商户号 = 批次创建商户号;
- AppID校验:
- 模式1,即MCHID(普通商户,批次归属商户号=批次发放商户号)--- AppID(发券场景AppID);
# 5.3. 查询用户卡包里商家券
根据过滤条件查询用户券API接口文档:点击查看
查询用户单张券API接口文档:点击查看
- 涉及的商户号有:
- 调用该API接口的商户号,即为商家券批次的发放查询商户号(以下统称为批次查询商户号)。接口内部还涉及批次的创建商户号(creator_merchant)、批次发放商户号(sender_merchant)、批次归属商户号(belong_merchant);
- 涉及的AppID有:
- 因为查用户卡包的券信息,涉及用户信息的交互,就需要用户OpenID,因此需要传入用户身份识别AppID(以下统称为用户识别AppID),有如下校验规则:
# 5.3.1. 普通商户模式
该模式适用于商户自己查询自己发的券 or 自己创建的券 or 归属于自己的券。
- 商户号校验
- 批次查询商户号 = 批次创建商户号 = 批次归属商户号 = 批次发放商户号;
- AppID校验
- 模式1,即MCHID(普通商户,批次发放商户号=批次创建商户号=批次归属商户号=批次查询商户号)--- AppID(用户识别AppID);
# 5.4. 核销商家券
核销用户商家券接口文档:点击查看
- 涉及的商户号有:
- 调用该API接口的商户号,即为商家券批次的核销商户号。当前商家券的规则是谁制券谁核销,所以无论任何模式下,核销商户号一定等于批次创建商户号。
- 涉及的AppID有:
- 同样因为涉及用户信息的交互,就需要用户OpenID,因此需要传入用户身份识别AppID(以下统称为用户识别AppID),有如下校验规则:
# 5.4.1. 普通商户模式
该模式适用于商户核销券。
- 商户号校验
- 批次核销商户号 = 批次创建商户号;
- AppID校验
- 模式1,即MCHID(普通商户,批次归属商户号)--- AppID(用户识别AppID);