扣费受理

更新时间:2024.12.23

商户请求扣费受理接口,会完成订单受理。微信支付进行异步扣款,支付完成后,会将订单支付结果发送给商户。

接口说明

支持商户:【普通服务商】

请求方式:【POST】/v3/vehicle/transactions/parking

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


body 包体参数

appid  必填 string(32)

【公众账号id】appid是商户在微信申请公众号或移动应用成功后分配的帐号ID,登录平台为mp.weixin.qq.com或open.weixin.qq.com


sub_appid  选填 string(32)

【子公众账号id】子公众账号id,服务商模式下选传,用于扣费信息的商户信息展示,


sub_mchid  必填 string(32)

【子商户号】微信支付分配的子商户号,服务商模式下必传


description  必填 string(128)

【服务描述】商户自定义字段,用于交易账单中对扣费服务的描述。


attach  选填 string(128)

【附加数据】附加数据,在查询API和支付通知中原样返回,可作为自定义参数使用


out_trade_no  必填 string(32)

【商户订单号】商户系统内部订单号,只能是数字、大小写字母_-*且在同一个商户号下唯一


trade_scene  必填 string(16)

【交易场景】交易场景值,目前支持 :PARKING:车场停车场景


goods_tag  选填 string(32)

【订单优惠标记】代金券或立减优惠功能的参数,说明详见代金券或立减优惠


notify_url  必填 string(256)

【回调通知url】接受扣款结果异步回调通知的url,注意回调url只接受https


profit_sharing  选填 string(16)

【分账标识】Y:是,需要分账
N:否,不分账
字母要求大写,不传默认不分账,分账详细说明见直连分账API服务商分账API文档


amount  必填 object

【订单金额】订单金额信息

属性

parking_info  选填 object

【停车场景信息】当交易场景为PARKING时,需要在该字段添加停车场景信息

属性

请求示例

POST

1curl -X POST \
2  https://api.mch.weixin.qq.com/v3/vehicle/transactions/parking \
3  -H "Authorization: WECHATPAY2-SHA256-RSA2048 mchid=\"1900000001\",..." \
4  -H "Accept: application/json" \
5  -H "Content-Type: application/json" \
6  -d '{
7    "appid" : "wxcbda96de0b165486",
8    "sub_appid" : "wxcbda96de0b165486",
9    "sub_mchid" : "1900000109",
10    "description" : "停车场扣费",
11    "attach" : "深圳分店",
12    "out_trade_no" : "20150806125346",
13    "trade_scene" : "PARKING",
14    "goods_tag" : "WXG",
15    "notify_url" : "https://yoursite.com/wxpay.html",
16    "profit_sharing" : "Y",
17    "amount" : {
18      "total" : 888,
19      "currency" : "CNY"
20    },
21    "parking_info" : {
22      "parking_id" : "5K8264ILTKCH16CQ250",
23      "plate_number" : "粤B888888",
24      "plate_color" : "BLUE",
25      "start_time" : "2017-08-26T10:43:39+08:00",
26      "end_time" : "2017-08-26T10:43:39+08:00",
27      "parking_name" : "欢乐海岸停车场",
28      "charging_duration" : 3600,
29      "device_id" : "12313"
30    }
31  }'
32

应答参数

200 OK

appid  必填 string(32)

【公众账号id】appid是商户在微信申请公众号或移动应用成功后分配的帐号ID,登录平台为mp.weixin.qq.com或open.weixin.qq.com


sub_appid  选填 string(32)

【子商户公众账号id】子商户申请的公众号或移动应用appid,需要在服务商的商户平台为子商户绑定


sp_mchid  必填 string(32)

【商户号】微信支付分配的商户号


sub_mchid  必填 string(32)

【子商户号】微信支付分配的子商户号


description  必填 string(128)

【服务描述】商户自定义字段,用于交易账单中对扣费服务的描述。


create_time  必填 string(32)

【订单创建时间】订单成功创建时返回,遵循rfc3339标准格式,格式为yyyy-MM-DDTHH:mm:ss+TIMEZONE,yyyy-MM-DD表示年月日,T出现在字符串中,表示time元素的开头,HH:mm:ss表示时分秒,TIMEZONE表示时区(+08:00表示东八区时间,领先UTC 8小时,即北京时间)。例如:2015-05-20T13:29:35+08:00表示,北京时间2015年5月20日 13点29分35秒。


out_trade_no  必填 string(32)

【商户订单号】商户系统内部订单号,只能是数字、大小写字母_-*且在同一个商户号下唯一


transaction_id  选填 string(32)

【微信支付订单号】微信支付订单号


trade_state  必填 string(32)

【交易状态】SUCCESS—支付成功
ACCEPTED—已接收,等待扣款
PAY_FAIL–支付失败(其他原因,如银行返回失败)
REFUND—转入退款


trade_state_description  选填 string(256)

【交易状态描述】对当前订单状态的描述和下一步操作的指引


success_time  选填 string(32)

【支付完成时间】订单支付完成时间,遵循rfc3339标准格式,格式为yyyy-MM-DDTHH:mm:ss+TIMEZONE,yyyy-MM-DD表示年月日,T出现在字符串中,表示time元素的开头,HH:mm:ss表示时分秒,TIMEZONE表示时区(+08:00表示东八区时间,领先UTC 8小时,即北京时间)。例如:2015-05-20T13:29:35+08:00表示,北京时间2015年5月20日 13点29分35秒。


bank_type  选填 string(16)

【付款银行】银行类型,采用字符串类型的银行标识。BPA:该笔订单由微信进行垫付


user_repaid  选填 string(1)

【用户是否已还款】枚举值:
Y:用户已还款
N:用户未还款
注意:使用此字段前需先确认bank_type字段值为BPA以及 trade_state字段值为SUCCESS。


attach  选填 string(128)

【附加数据】附加数据,在查询API和支付通知中原样返回,可作为自定义参数使用


trade_scene  必填 string(32)

【交易场景】交易场景值,目前支持 :PARKING:车场停车场景


parking_info  选填 object

【停车场景信息】返回信息中的trade_scene为PARKING,返回该场景信息

属性

payer  必填 object

【支付者信息】支付者信息

属性

amount  必填 object

【订单金额信息】订单金额信息

属性

promotion_detail  选填 array[object]

【优惠信息】优惠信息

属性

应答示例

200 OK

1{
2  "appid" : "wxcbda96de0b165486",
3  "sub_appid" : "wxcbda96de0b165489",
4  "sp_mchid" : "1230000109",
5  "sub_mchid" : "1900000109",
6  "description" : "停车场扣费",
7  "create_time" : "2017-08-26T10:43:39+08:00",
8  "out_trade_no" : "20150806125346",
9  "transaction_id" : "1009660380201506130728806387",
10  "trade_state" : "SUCCESS",
11  "trade_state_description" : "支付失败,请重新下单支付",
12  "success_time" : "2017-08-26T10:43:39+08:00",
13  "bank_type" : "CMC",
14  "user_repaid" : "Y",
15  "attach" : "深圳分店",
16  "trade_scene" : "PARKING",
17  "parking_info" : {
18    "parking_id" : "5K8264ILTKCH16CQ250",
19    "plate_number" : "粤B888888",
20    "plate_color" : "BLUE",
21    "start_time" : "2017-08-26T10:43:39+08:00",
22    "end_time" : "2017-08-26T10:43:39+08:00",
23    "parking_name" : "欢乐海岸停车场",
24    "charging_duration" : 3600,
25    "device_id" : "12313"
26  },
27  "payer" : {
28    "openid" : "oUpF8uMuAJOM2pxb1Q",
29    "sub_openid" : "oUpF8uMuAJOM2pxb1Q"
30  },
31  "amount" : {
32    "total" : 888,
33    "currency" : "CNY",
34    "payer_total" : 100,
35    "discount_total" : 100
36  },
37  "promotion_detail" : [
38    {
39      "coupon_id" : "109519",
40      "name" : "单品惠-6",
41      "scope" : "SINGLE",
42      "type" : "CASH",
43      "stock_id" : "931386",
44      "amount" : 5,
45      "wechatpay_contribute" : 1,
46      "merchant_contribute" : 1,
47      "other_contribute" : 1,
48      "currency" : "CNY"
49    }
50  ]
51}
52

 

错误码

公共错误码

状态码

错误码

描述

解决方案

400

PARAM_ERROR

参数错误

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

400

INVALID_REQUEST

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

请参阅 接口规则

401

SIGN_ERROR

验证不通过

请参阅 签名常见问题

500

SYSTEM_ERROR

系统异常,请稍后重试

请稍后重试

业务错误码

状态码

错误码

描述

解决方案

400

ALREADY_EXISTS

out_trade_no冲突

out_trade_no冲突,不同的订单请保证 out_trade_no 唯一

400

INVALID_REQUEST

非法商户,服务商模式下请确认子商户正确

微信支付分停车服务不支持当前商户访问,请确认商户已获得本产品权限。服务商模式下请同时确认子商户无误且已获得本产品权限

400

INVALID_REQUEST

商户号和公众号没有绑定关系

检查请求中的AppID与商户号(服务商模式下则为服务商商户号)是否匹配,然后重试

400

INVALID_REQUEST

商户号、子商户号以及子公众号没有绑定关系

检查请求中的sub_appid,sub_mchid与服务商商户号是否匹配,然后重试

400

INVALID_REQUEST

用户状态异常

风控失败或者用户账户冻结

400

INVALID_REQUEST

停车入场ID不存在

商户传参的停车入场ID是非法,请填写微信支付分停车服务分配的停车入场ID

400

INVALID_REQUEST

场景信息和停车入场ID不匹配

场景信息内容与入场ID不对应

400

INVALID_REQUEST

扣款额度超出限制

请检查确保发起扣款的订单额度不超过微信支付分停车支持的单笔及单日扣款额度

403

NO_AUTH

当前商户无法扣款

当前扣款商户无权限扣款,请确认当前扣款商户已开通微信支付分停车产品权限

403

NOT_ENOUGH

用户欠款过多,暂停交易

用户在微信支付分停车服务中欠款过多,不能进行扣款

429

RATELIMIT_EXCEEDED

达到调用速率限制

接口调用频率过快,请降低请求频率

500

SYSTEM_ERROR

出现内部服务器错误

5开头的错误码均为系统错误,请使用相同的参数稍后重试

 

 

反馈
咨询
目录
置顶