wechat pay

退款申请接口

接口链接:https://api.mch.weixin.qq.com/secapi/pay/refund

请求需要双向证书,需先在商户后台添加操作员。

注意:

  1. 交易时间超过 1 年的订单无法提交退款;
  2. 支持部分退款,部分退需要设置相同的订单号和丌同的out_refund_no。一笔退款失败后重新提交,要采用原来的out_refund_no。总退款金额丌能超过用户实际支付金额。

请求参数:

字段名 变量名 必填 类型 说明
公众账号 ID appid String(32) 微信分配的公众账号 ID
商户号 mch_id String(32) 微信支付分配的商户号
设备号 device_info String(32) 微信支付分配的终端设备号,与下单一致
随机字符串 nonce_str String(32) 随机字符串,不长于 32 位
签名 sign String(32) 签名,详细签名方法见 3.2 节
微信订单号 transaction_id String(28) 微信订单号
商户订单号 out_trade_no String(32) 商户系统内部的订单号,transaction_id、out_trade_no 二选一,如果同时 存 在 优 先 级 :transaction_id>out_trade_no
商户退款单号 out_refund_no String(32) 商户系统内部的退款单号,商户系统内部唯一,同一退款单号多次请求只退一笔
总金额 total_fee Int 订单总金额,单位为分
退款金额 refund_fee Int 退款总金额,单位为分,可以做部分退款
操作员 op_user_id String(32) 操作员帐号, 默认为商户号

退款返回结果:

字段名 变量名 必填 类型 说明
返回状态码 return_code String(16) SUCCESS/FAIL
返回信息 return_msg String(128) 返回信息,如非空,为错误原因签名失败参数格式校验错误
以下字段在 return_code 为 SUCCESS 的时候有返回
字段名 变量名 必填 类型 说明
业务结果 result_code String(16) SUCCESS/FAILSUCCESS退款申请接收成功,结果通过退款查询接口查询FAIL
错误代码 err_code String(32) 错误码详见第 6 节
错误代码描述 err_code_des String(128) 结果信息描述
公众账号 ID appid String(32) 微信分配的公众账号 ID
商户号 mch_id String(32) 微信支付分配的商户号
设备号 device_info String(32) 微信支付分配的终端设备号,与下单一致
随机字符串 nonce_str String(32) 随机字符串,不长于 32 位
签名 sign String(32) 签名,详细签名方法见 3.2 节
微信订单号 transaction_id String(28) 微信订单号
商户订单号 out_trade_no String(32) 商户系统内部的订单号
商户退款单号 out_refund_no String(32) 商户退款单号
微信退款单号 refund_id String(28) 微信退款单号
退款渠道 refund_channel String(16) ORIGINAL—原路退款,默认BALANCE—退回到余额
退款金额 refund_fee Int 退款总金额,单位为分,可以做部分退款否 Int 现金券退款金额 coupon_refund_fee现金券退款金额<=退款金额,退款金额-现金券退款金额为现金