消费押金

更新时间:2024.11.18

应用场景

微信支付根据商户指令,将用户消费金额扣除手续费后结算给指定商户,剩余金额原路退还给用户,并生成押金退款交易记录,给用户下发押金退还发起通知,并更改押金支付的交易记录。用户押金退还到账后,下发押金退还到账通知。若全部消费,则下发押金全部消费通知;

消费金额:扣费金额区间为(0,押金金额],∑消费金额 ≤  押金金额 ;

接口规则

请求Url

https://api.mch.weixin.qq.com/deposit/consume

是否需要证书

是, 详见证书使用

请求方式

post

签名方式

HMAC-SHA256

请求参数

名称

变量名

必填

类型

示例值

描述

服务商应用ID

appid

String(32)

wx8888888888888888

服务商商户的APPID

商户号

mch_id

String(32)

1900000109

服务商商户的商户号

子商户应用ID

sub_appid

String(32)

wx8888888888888888

微信分配的子商户APPID,如需在支付完成后获取sub_openid则此参数必传。

子商户号

sub_mch_id

String(32)

1900000109

服务商通过进件后获得的特约商户号

微信订单号

transaction_id

二选一

String(32)

013467007045764

微信的订单号,优先使用

商户订单号

out_trade_no

String(32)

1217752501201407033233368018

商户系统内部的订单号,transaction_id、out_trade_no二选一,如果同时存在优先级:transaction_id> out_trade_no

押金总金额

total_fee

int

888

订单总金额,单位为分,只能为整数,详见支付金额

消费金额

consume_fee

int

888

订单总金额,单位为分,只能为整数,详见支付金额

货币类型

fee_type

string(16)

CNY

符合ISO 4217标准的三位字母代码,默认人民币:CNY,其他值列表详见货币类型

随机字符串

nonce_str

string(32)

C380BEC2BFD727A4B6845133519F3AD6

随机字符串,不长于32位。推荐随机数生成算法

签名

sign

string(64)

C380BEC2BFD727A4B6845133519F3AD6C380BEC2BFD727A4B6845133519F3AD6

签名,详见签名生成算法

签名类型

sign_type

string(32)

HMAC-SHA256

签名类型,仅支持HMAC-SHA256

返回结果

名称

变量名

必填

类型

示例值

描述

返回状态码

return_code

String(16)

SUCCESS

SUCCESS/FAIL
此字段是通信标识,非交易标识,交易是否成功需要查看trade_state来判断

返回信息

return_msg

String(128)

签名失败

返回信息,如非空,为错误原因
签名失败
参数格式校验错误

当return_code为SUCCESS的时候,还会包括以下字段:

名称

变量名

必填

类型

示例值

描述

服务商应用ID

appid

String(32)

wx8888888888888888

服务商商户的APPID

商户号

mch_id

String(32)

1900000109

服务商商户的商户号

子商户应用ID

sub_appid

String(32)

wx8888888888888888

微信分配的子商户APPID,如需在支付完成后获取sub_openid则此参数必传。

子商户号

sub_mch_id

String(32)

1900000109

服务商通过进件后获得的特约商户号

随机字符串

nonce_str

String(32)

5K8264ILTKCH16CQ2502SI8ZNMTM67VS

微信返回的随机字符串

签名

sign

string(64)

C380BEC2BFD727A4B6845133519F3AD6C380BEC2BFD727A4B6845133519F3AD6

签名,详见签名生成算法

业务结果

result_code

string(16)

SUCCESS

SUCCESS/FAIL

错误代码

err_code

string(32)

SYSTEMERROR

详细参见错误列表

错误代码描述

err_code_des

string(128)

系统错误

错误返回的信息描述

当return_code 和result_code都为SUCCESS时,还会包括以下字段:

名称

变量名

必填

类型

示例值

描述

微信订单号

transaction_id

String(32)

1217752501201407033233368018

微信订单号

商户订单号

out_trade_no

String(32)

1217752501201407033233368018

商户系统内部订单号,要求32个字符内,只能是数字、大小写字母_-|*且在同一个商户号下唯一。详见商户订单号

押金总金额

total_fee

int

888

订单总金额,单位为分,只能为整数,详见支付金额

消费金额

consume_fee

int

888

订单总金额,单位为分,只能为整数,详见支付金额

货币类型

fee_type

String(16)

CNY

符合ISO 4217标准的三位字母代码,默认人民币:CNY,其他值列表详见货币类型

举例:

1<xml>
2  <return_code><![CDATA[SUCCESS]]></return_code>
3  <return_msg><![CDATA[OK]]></return_msg>
4  <appid><![CDATA[wx2421b1c4370ec43b]]></appid>
5  <mch_id><![CDATA[10000100]]></mch_id>
6  <device_info><![CDATA[1000]]></device_info>
7  <nonce_str><![CDATA[GOp3TRyMXzbMlkun]]></nonce_str>
8  <sign><![CDATA[D6C76CB785F07992CDE05494BB7DF7FD]]></sign>
9  <result_code><![CDATA[SUCCESS]]></result_code>
10  <transaction_id><![CDATA[1008450740201411110005820873]]></transaction_id>
11  <out_trade_no><![CDATA[1415757673]]></out_trade_no>
12  <total_fee>1</total_fee>
13  <consume_fee >0</consume_fee >
14  <fee_type><![CDATA[CNY]]></fee_type>
15</xml>

错误码列表

名称

描述

原因

解决方案

PARAM_ERROR

参数错误

请求参数未按指引进行填写

请求参数错误,请重新检查再调用

SIGNERROR

签名错误

参数签名结果不正确

请检查签名参数和方法是否都符合签名算法要求

SYSTEMERROR

系统异常

系统异常

系统繁忙,请稍后使用相同参数再次调用API

SETTLEMENTERROR

押金解除冻结失败

押金解冻结算给商户失败

手续费账户余额不足、商户账户没有结算权限等原因导致资金解冻失败

SETTLING

押金消费受理中

押金消费已受理

押金消费已受理,请稍后查询订单订单状态确认最终结果

FAIL

押金消费失败

押金消费失败

押金消费失败,当前交易无法完成

HIGH_RISK

押金消费失败

商户收款受限,暂不支持押金消费

请前往「商户平台-账户中心-违约记录」查看详情。

 

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