受理单次预约商家转账

更新时间:2025.01.21

商户可调用接口预先指定转账的单次计划,预创建预约记录并获取微信预约记录单号和跳转信息(package_info),再携带该(package_info)参数,通过微信SDK拉起微信支付客户端的用户确认页面。若涉及敏感信息的传输,可参考【开发指引

注意:预创建的预约记录在24小时内有效,如用户没有及时确认,微信支付系统将自动关闭该预约记录。接口支持幂等,幂等标识为out_reservation_no,幂等有效性为5年。

接口说明

支持商户:【平台商户】

请求方式:【POST】/v3/platsolution/insurance/mch-transfer/reservation/apply

请求域名:【主域名】https://api.mch.weixin.qq.com 使用该域名将访问就近的接入点

     【备域名】https://api2.mch.weixin.qq.com 使用该域名将访问异地的接入点 ,指引点击查看

请求参数

Header HTTP头参数

Authorization  必填 string

请参考签名认证生成认证信息


Accept  必填 string

请设置为application/json


Content-Type  必填 string

请设置为application/json


Wechatpay-Serial  必填 string

【微信支付公钥ID】或【微信支付平台证书序列号】 请求参数中的敏感字段,需要使用微信支付公钥加密(推荐),请参考获取微信支付公钥ID说明以及微信支付公钥加密敏感信息指引;也可以使用微信支付平台证书公钥加密,参考获取平台证书序列号平台证书加密敏感信息指引


body 包体参数

sub_mchid  必填 string(32)

【二级商户号】 微信支付分配的商户号,出资商户号


sp_appid  必填 string(32)

【服务商AppID】 服务商绑定的公众号ID。


sub_appid  选填 string(32)

【二级商户AppID】 二级商户授权服务商绑定的公众号ID。若填写了该字段,收款用户OpenID必须对应二级商户AppID。


out_reservation_no  必填 string(32)

【商户预约单号】 商户系统内部的预约商家转账单号,只能由数字、大小写字母组成,在服务商系统内部唯一


transfer_scene_id  必填 string(16)

【转账场景ID】 该笔转账使用的转账场景,可在「平台商家转账 - 产品设置」中查看已获得场景和申请新场景


estimated_date  必填 string(10)

【预计最晚转账日期】 需在发起预约当日的31天内,预约当日为第1天,最晚可预约第31天。遵循rfc3339标准格式,格式为yyyy-MM-DD,yyyy-MM-DD表示年月日,例如:2015-05-20表示,北京时间2015年5月20日。


estimated_max_amount  选填 integer

【预计最大转账金额】 预计最大转账金额单位为“分”。若传入该字段,用户确认时不会展示该金额,实际转账时可传入的金额可小于等于预计最大转账金额。最大金额和准确金额中必须传入其中一个。


exact_amount  选填 integer

【准确转账金额】 准确转账金额单位为“分”。若传入该金额,用户确认时会展示,且实际转账时传入的金额必须等于准确转账金额。最大金额和准确金额中必须传入其中一个。


openid  选填 string(64)

【收款用户OpenID】 商户AppID下用户的唯一标识。若填写了二级商户AppID,则收款用户OpenID必须对应二级商户AppID。否则需要对应服务商AppID


user_real_name  选填 string(1024)

【收款用户姓名】 经过加密后的收款用户姓名信息。
预计转账金额 >= 2,000元时,必须填写用户姓名
若商户传入收款用户姓名,微信支付会校验收款用户的微信支付实名与姓名是否一致,并提供电子回单


reserve_remark  必填 string(64)

【预约备注】 将在预约页面对用户展示,商户可描述与预约时间、预约金额等相关的信息说明。


notify_url  必填 string(256)

【商户回调地址】 异步接收用户确认预约结果的回调通知地址,通知URL必须为公网可访问的URL,必须为HTTPS,不能携带参数。


scene_report_data  选填 object

【场景报备信息】 特殊的转账场景,当转账金额大于场景规定的金额时,需要传入场景对应业务字段进行报备。具体字段及约束详情可查看产品指引文档。

属性

请求示例

POST

1curl -X POST \
2  https://api.mch.weixin.qq.com/v3/platsolution/insurance/mch-transfer/reservation/apply \
3  -H "Authorization: WECHATPAY2-SHA256-RSA2048 mchid=\"1900000001\",..." \
4  -H "Accept: application/json" \
5  -H "Wechatpay-Serial: 5157F09EFDC096DE15EBE81A47057A7232F1B8E1"  \
6  -H "Content-Type: application/json" \
7  -d '{
8    "sub_mchid" : "1900001109",
9    "sp_appid" : "wxf636efh567hg4356",
10    "sub_appid" : "wxf636efh567hg4356",
11    "out_reservation_no" : "plfk2020042013",
12    "transfer_scene_id" : "1000",
13    "estimated_date" : "2019-11-22",
14    "estimated_max_amount" : 400000,
15    "exact_amount" : 100000,
16    "openid" : "o-MYE42l80oelYMDE34nYD456Xoy",
17    "user_real_name" : "757b340b45ebef5467rter35gf464344v3542sdf4t6re4tb4f54ty45t4yyry45",
18    "reserve_remark" : "由于存在收益波动,实际到账资金可能不等于当前金额",
19    "notify_url" : "https://www.weixin.qq.com/wxpay/pay.php",
20    "scene_report_data" : {
21      "insurance_policy" : {
22        "product_registration_no" : "40058541257",
23        "policy_no" : "202301011651",
24        "name" : "养老保险",
25        "withdrawal_no" : "202310410941",
26        "claim_no" : "202310410941"
27      }
28    }
29  }'
30

应答参数

200 OK

sub_mchid  必填 string(32)

【二级商户号】 微信支付分配的商户号,出资商户号


out_reservation_no  必填 string(32)

【商户预约单号】 商户系统内部的预约商家转账单号,只能由数字、大小写字母组成,在服务商系统内部唯一


reservation_id  必填 string(64)

【微信转账预约单号】 微信商家转账系统返回的预约记录唯一标识


accept_time  必填 string(32)

【预约记录受理时间】 单据受理成功时会返回,按照使用rfc3339所定义的格式,格式为yyyy-MM-DDThh:mm:ss+TIMEZONE


state  必填 string

【预约记录状态】 预约记录状态,受理成功的记录状态只有ACCEPTED。

可选取值

  • ACCEPTED: 预约转账已受理,待用户确认预约

  • CONFIRMED: 用户已确认预约,且未超过预计最晚转账日期

  • CLOSED: 商户主动关闭,或者系统关闭(用户未及时确认、转账完成、超期未转账等原因)。


package_info  必填 string(1024)

【跳转微信支付用户确认预约页的package信息】 单据受理成功时会返回,跳转微信支付用户确认预约页的package信息,该数据在24小时内有效。

应答示例

200 OK

1{
2  "sub_mchid" : "1900001109",
3  "out_reservation_no" : "plfk2020042013",
4  "reservation_id" : "1330000071100999991182020050700019480001",
5  "accept_time" : "2015-05-20T13:29:35.120+08:00",
6  "state" : "ACCEPTED",
7  "package_info" : "affffddafdfafddffda=="
8}
9

 

错误码

公共错误码

状态码

错误码

描述

解决方案

400

PARAM_ERROR

参数错误

请根据错误提示正确传入参数

400

INVALID_REQUEST

HTTP 请求不符合微信支付 APIv3 接口规则

请参阅 接口规则

401

SIGN_ERROR

验证不通过

请参阅 签名常见问题

500

SYSTEM_ERROR

系统异常,请稍后重试

请稍后重试

 

 

更多技术问题
技术咨询
反馈
咨询
目录
置顶