小程序场景预签约(需要实名验证)

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

商户可调用本接口预先指定签约,生成预签约会话及对应的预签约ID,再携带预签约ID(pre_entrustweb_id)参数,通过微信SDK拉起微信支付客户端的签约页面。

通过本接口预签约时,商户需具备实名验证产品权限,要求用户在签约时完成实名验证授权,仅当用户的微信支付实名信息与商户预留一致时才能完成签约。

接口说明

支持商户:【平台商户】

请求方式:【POST】/v3/ecommerce/individual-contracts/pre-entrust-sign-with-real-name-identity/mini-program

请求域名:【主域名】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  包体参数

 appid  必填   string(32)

【签约和付款的AppID】 调用方的AppID,获取方式详见:服务商模式开发必要参数说明


 out_contract_code  必填   string(128)

【业务申请单号】 自定义的商户唯一编号,需保证服务商下唯一,仅允许包含英文半角的数字、字母、连接线-和下划线_。


 openid  必填   string(64)

【个人收款方的OpenID】 个人收款方在平台appid下的唯一标识。


 real_name  必填   string(512)

【真实姓名】 必须加密传输,参考 HEADER 参数 Wechatpay-Serial 文档描述中的加密敏感信息指引。加密前的明文使用 UTF-8 编码,长度限制 1-64 字符。


 cred_type  必填   string

【证件类型】 目前仅支持身份证

可选取值

  • ID_CARD:  身份证


 cred_id  必填   string(512)

【证件号码】 必须加密传输,参考 HEADER 参数 Wechatpay-Serial 文档描述中的加密敏感信息指引。加密前的明文使用 UTF-8 编码,长度限制 1-64 字符。

请求示例

curl
Java
Go

POST

1curl -X POST \
2  https://api.mch.weixin.qq.com/v3/ecommerce/individual-contracts/pre-entrust-sign-with-real-name-identity/mini-program \
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    "appid" : "wxd678efh567h23787",
9    "out_contract_code" : "APPLYMENT_00000000001",
10    "openid" : "oUpF8uMuAJO_M2pxb1Q9zNjWeS6o",
11    "real_name" : "刘某某",
12    "cred_type" : "ID_CARD",
13    "cred_id" : "440000000000000000"
14  }'
15

应答参数

200 OK

 pre_entrustweb_id  必填   string(256)

【预签约ID】 生成预签约会ID,携带预签约ID(pre_entrustweb_id)参数,通过微信SDK拉起微信支付客户端的签约页面。

应答示例

200 OK

1{
2  "pre_entrustweb_id" : "1121_9f3cec22a2d367737674d08d98e5e07b8388495fafedc0eba83c327e8ad720ed_12bfdd59b387c4bff8543de4719a886a"
3}
4

 

错误码

以下是本接口返回的错误码列表。详细错误码规则,请参考微信支付接口规则-错误码和错误提示

状态码

错误码

描述

解决方案

400

PARAM_ERROR

参数错误

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

400

INVALID_REQUEST

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

请参阅 接口规则

401

SIGN_ERROR

验证不通过

请参阅 签名常见问题

500

SYSTEM_ERROR

系统异常,请稍后重试

请稍后重试

 

元宝AI
反馈
目录
置顶