用户入场通知api

应用场景

在停车场场景下,商户调用本接口,会注册接收用户场中状态变化通知,并返回用户车主服务是否可用的状态。调用该接口,微信侧不会向用户下发入场通知消息,消息由商户下发。

仅支持停车、车位停车场景

接口调用请求说明

请求Url https://api.mch.weixin.qq.com/vehicle/pay/notification
是否需要证书
请求方式 post
报文格式 XML
说明 车场停车场景必须调用该接口

 

请求参数

字段名 变量名 必填 类型 示例值 说明
公众账号id appid String(32) wxcbda96de0b165486 微信支付分配的公众账号id,

此appid需为已授权appid
商户号 mch_id String(32) 10000098 微信支付分配的商户号
随机字符串 nonce_str String(32) 5K8264ILTKCH16CQ2502SI8ZNMTM67VS 随机字符串,不长于32位。
签名类型 sign_type String(32) HMAC-SHA256 签名类型,默认为HMAC-SHA256
签名 sign String(64) EE088059BBC9141264F8D14293AD6C4BB94CEA8C08AA98FBF93E262D445F8FF5 签名,详见签名生成算法
版本号 version String(16) 3.0 版本号,固定值
3.0:车场停车(PARKING)场景
2.0:其他场景
交易场景 trade_scene String(16) PARKING 委托代扣的交易场景值,目前支持 :
1. PARKING:车场停车场景 ;
2. PARKING SPACE 车位停车场景;该值催缴时会向微信用户进行展示
场景信息 scene_info String(1024) {"scene_info":{"start_time":"20170926114339","plate_number":"CB1000sdfasd","free_time":"1200","car_type":"大型车","parking_name":"欢乐海岸停车场"}} 场景信息值,格式为json,不同业务场景设置不同的值,具体如后面所列。
当trade_scene场景为:PARKING(车场停车)时,传如下值
入场时间 start_time String(16) 20170826104339 即用户进入停车时间,格式为yyyyMMddHHmmss,该值催缴时会向微信用户进行展示
回调通知URL notify_url String(256) https://weixin.qq.com 用于接收当前处于停车场内所有车辆车牌状态变更的通知
车牌号 plate_number String(32) 粤B888888 车牌号。仅包括省份+车牌,不包括特殊字符。
车辆类型 car_type String(16) 小型车 停车车辆的类型,可选值:大型车、小型车
停车场名称 parking_name String(32) 欢乐海岸停车场 所在停车场的名称
免费时长 free_time String(16) 1200 免费的时间长。单位为秒
当trade_scene场景为:PARKING SPACE 时(车位停车),传如下值
入场时间 start_time String(16) 20170826104339 即用户进入停车时间,格式为yyyyMMddHHmmss,该值催缴时会向微信用户进行展示
车辆类型 car_type String(16) 小型车 停车车辆的类型,可选值:大型车、小型车
停车场名称 parking_name String(32) 欢乐海岸停车场 所在停车场的名称
免费时长 free_time String(16) 1200 免费的时间长。单位为秒
用户标识 openid String(32) wxd930ea5d5a258f4f 用户在商户appid下的唯一标识
车位编号 space_number String(16) D6666 用户停车的车位编号


示例:

<xml>
<mch_id>100000981</mch_id>
<appid>wxcbda96de0b165486</appid>
<nonce_str>5K8264ILTKCH16CQ2502SI8ZNMTM67VS</nonce_str>
<sign_type>HMAC-SHA256</sign_type>
<trade_scene>PARKING</trade_scene>
<version>3.0</version> 
<sign>EE088059BBC9141264F8D14293AD6C4BB94CEA8C08AA98FBF93E262D445F8FF5</sign>
<scene_info>{"scene_info":{"start_time":"20170926114339","plate_number":"CB1000sdfasd","car_type":"大型车","parking_name":"欢乐海岸停车场","free_time":"1200"}}</scene_info>
</xml>

返回参数

字段名 变量名 必填 类型 示例值 说明
返回状态码 return_code String(16) SUCCESS SUCCESS/FAIL
此字段是通信标识,非交易标识,交易是否成功需要查看result_code来判断
返回信息 return_msg String(128) 签名失败 返回信息,如非空,为错误原因
签名失败
参数格式校验错误
以下字段在return_code为SUCCESS的时候返回
字段名 变量名 必填 类型 示例值 说明
公众账号id appid String(32) wxcbda96de0b165486 微信支付分配的公众账号id
商户号 mch_id String(32) 10000098 微信支付分配的商户号
随机字符串 nonce_str String(32) 5K8264ILTKCH16CQ2502SI8ZNMTM67VS 随机字符串,不长于32位。
发起扣费方式 deduct_mode String(16) PROACTIVE 发起无感扣费的方式 
PROACTIVE:表示用户主动发起的免密支付 
AUTOPAY:表示用户无感的无感支付
签名 sign String(64) EE088059BBC9141264F8D14293AD6C4BB94CEA8C08AA98FBF93E262D445F8FF5 签名,详见签名生成算法
业务结果 result_code String(16) SUCCESS SUCCESS/FAIL
错误代码 err_code String(32) SYSTEMERROR 错误码
错误代码描述 err_code_des String(32) 接口返回错误 错误码描述
以下字段在return_code 和result_code都为SUCCESS的时候有返回
字段名 变量名 必填 类型 示例值 说明
用户状态 user_state String(16) NORMAL NORMAL:正常状态,用户可以使用车主服务
BLOCKED:异常状态,用户不可以使用车主服务
发起扣费方式 deduct_mode String(16) PROACTIVE 发起无感扣费的方式 
PROACTIVE:表示用户主动发起的免密支付 
AUTOPAY:表示用户无感的无感支付

示例:

<xml>
<return_code><![CDATA[SUCCESS]]></return_code>
<return_msg><![CDATA[OK]]></return_msg>
<appid>wx2421b1c4370ec43b</appid>
<mch_id>10000100</mch_id>
<nonce_str>ec2316275641faa3aacf3cc599e8730f</nonce_str>
<user_status><![CDATA[NORMAL]]></user_status > 
<result_code><![CDATA[SUCCESS]]></result_code>
<sign>EE088059BBC9141264F8D14293AD6C4BB94CEA8C08AA98FBF93E262D445F8FF5</sign>
</xml>

错误码

错误码

描述

原因

解决方案

SYSTEMERROR 接口返回错误 系统超时 请使用相同参数再次调用API
PARAM_ERROR 参数错误 请求参数未按指引进行填写 请根据接口返回的详细信息检查您的程序
INVALID_REQUEST 非法请求 非法请求 请检查请求参数、商户权限等是否正确
VEHICLE_NOT_EXIST 当前车牌尚未绑定车主平台 当前车牌尚未绑定车主平台,或用户已和车主平台解约 请检查车牌号是否正确
PAYAUTH_ERROR 权限校验错误 商户号产品权限校验错误 请检查商户号代扣产品权限
VEHICLE_AUTH_ERROR 校验授权关系失败 传入的appid没有授权 调用授权接口完成用户对appid的授权
REQUEST_BLOCKED 用户不符合免密代扣要求 用户因欠费等原因无法使用免密代扣服务 通过用户状态查询接口查询用户状态给用户相应引导