# 查询退款

接口应在服务器端调用,不可在前端(小程序、网页、APP等)直接调用,具体可参考接口调用指南

接口英文名:getRefund

该接口用于查询B2b退款单信息

# 1. 调用方式

# HTTPS 调用

POST https://api.weixin.qq.com/retail/B2b/getrefund?access_token=ACCESS_TOKEN

# 云调用

  • 本接口不支持云调用。

# 第三方调用

  • 本接口支持第三方平台代商家调用。

  • 该接口所属的权限集 id 为:158

  • 服务商获得其中之一权限集授权后,可通过使用 authorizer_access_token 代商家进行调用,具体可查看 第三方调用 说明文档。

# 2. 请求参数

# 查询参数 Query String Parameters

参数名类型必填示例说明
access_tokenstringACCESS_TOKEN接口调用凭证,可使用 access_tokenauthorizer_access_token

# 请求体 Request Payload

参数名类型必填示例说明
mchidstring1230000109微信商户号。长度限制[1,32]。由微信支付生成并下发的商户号。
out_refund_nostring12177525012014070332321235商户退款单号。长度限制[6, 32] 。商户系统内部退款单号,商户系统内部唯一,只能是数字、大小写字母_-*,同一退款单号多次请求只退一笔。
refund_idstringr202307281444591411763685B2b支付退款单号。长度限制[1,32]。商户退款单号和B2b支付退款单号必填其一

# 3. 返回参数

# 返回体 Response Payload

参数名类型示例说明
refund_idstringr202307281444591411763685 B2b支付退款单号。长度限制[1, 32]。
out_refund_nostring12177525012014070332321235商户退款单号。长度限制[6, 32] 是 商户系统内部退款单号,商户系统内部唯一,只能是数字、大小写字母_-*,同一退款单号多次请求只退一笔。
order_idstringo202307291423123564754773B2b支付订单号。长度限制[1,32]。原支付交易对应的B2b支付订单号
out_trade_nostring1217752501201407033233368018商户订单号。长度限制[6,32]。原支付交易对应的商户订单号
create_timestring2023-07-30 17:04:23退款创建时间。长度限制[1, 32]。退款受理时间,标准北京时间,时区为东八区,格式为yyyy-MM-dd HH:mm:ss。
refund_time string2023-07-30 17:04:28 退款成功时间。长度限制[1, 32] 。当退款状态为退款成功时有返回,标准北京时间,时区为东八区,格式为yyyy-MM-dd HH:mm:ss。
refund_statusstringREFUND_SUCC退款状态。长度限制[1, 32]。退款单状态,枚举值: REFUND_INIT:退款单初始化 REFUND_PROCESSING:退款处理中 REFUND_SUCC:退款成功 REFUND_FAIL:退款失败
refund_descstring账户资金不足,请待充足后重新发起退款说明。长度限制[1, 256]。
amountobject-金额信息。金额详细信息,仅支持人民币
wxpay_refund_idstring1235481444591411763685微信支付退款单号。长度限制[1, 32]
reverse_sett_statenumber0技术服务费回退状态,枚举值: 0:技术服务费未回退 1:技术服务费回退处理中 2:技术服务费回退成功 3:无需回退技术服务费
reverse_sett_finish_timestring2023-07-30 17:04:28技术服务费回退完成时间,当技术服务费回退状态为成功时有返回,标准北京时间,时区为东八区,格式为yyyy-MM-dd HH:mm:ss
platform_profit_percentnumber60技术服务费率,万分比(比如 60 指的是 0.60%),当技术服务费回退状态为成功时有返回
reverse_sett_amtnumber-回退技术服务费,单位为分,当技术服务费回退状态为成功时有返回
refund_channel_infoobject-退款渠道信息,仅支付方式为微信支付且订单退款成功后返回
descriptionstring抱枕退款商品描述。
errcodenumber-错误码
errmsgstringok错误信息

# Res.amount Object Payload

金额信息。金额详细信息,仅支持人民币

参数名类型示例说明
order_amount order_amountnumber1300订单总金额,单位为分
refund_amountnumber100退款金额,单位为分,可以做部分退款
currencystringCNY货币类型,仅支持人民币"CNY"

# Res.refund_channel_info Object Payload

退款渠道信息,仅支付方式为微信支付且订单退款成功后返回

参数名类型示例说明
channelstringORIGINAL退款渠道。订单退款渠道,有以下枚举: ORIGINAL: 原路退款 BALANCE: 退回到余额 OTHER_BALANCE: 原账户异常退到其他余额账户
user_received_accountstring100退款入账账户。当前退款单的退款入账方,取值有以下几种情况: 1)退回银行卡:{银行名称}{卡类型}{卡尾号} 2)退回支付用户零钱:支付用户零钱 3)退还商户:商户基本账户商户结算银行账户 4)退回支付用户零钱通:支付用户零钱通 5)退回支付用户银行电子账户:支付用户银行电子账户 6)退回支付用户零花钱:支付用户零花钱 7)退回用户经营账户:用户经营账户 8)退回支付用户来华零钱包:支付用户来华零钱包 9)退回企业支付商户:企业支付商户
funds_accountstringAVAILABLE资金账户。退款所使用资金对应的资金账户类型,有以下枚举: AVAILABLE: 可提现金额账户 UNAVAILABLE: 待结算金额账户

# 4. 注意事项

  • 一笔订单最多支持部分退款50次。

# 5. 代码示例

请求示例

{
  "mchid": "1230000109",
  "out_refund_no": "12177525012014070332321235"
}{
  "mchid": "1230000109",
  "refund_id": "r202307281444591411763685"
}

返回示例

{
  "refund_id": "r202307281444591411763685",
  "out_refund_no": "12177525012014070332321235",
  "order_id": "o202307291423123564754773",
  "out_trade_no": "1217752501201407033233368018",
  "create_time": "2023-07-30 17:04:23",
  "refund_time": "2023-07-30 17:04:28",
  "refund_status": "REFUND_SUCC",
  "amount": {
    "order_amount": 1300,
	"refund_amount": 100,
	"currency": "CNY"
  },
  "wxpay_refund_id": "1235481444591411763685",
  "reverse_sett_state": 3,
  "refund_channel_info": {
      "channel": "ORIGINAL",
      "user_received_account": "招商银行借记卡0000",
      "funds_account": "UNAVAILABLE"
  },
  "description":"",
  "errcode": 0,
  "errmsg": OK
}

# 6. 错误码

以下是本接口的错误码列表,其他错误码可参考 通用错误码;调用接口遇到报错,可使用官方提供的 API 诊断工具 辅助定位和分析问题。

错误码错误描述解决方案
10604单笔订单的退款频率过高在一分钟内只能发起一次退款,请稍后重试
61004access clientip is not registered requestIP: XXX若是第三方平台代调用接口,将IP添加到第三方平台的白名单列表,查看排错指南
9403200参数为空或不合法。按照文档要求传参,根据返回的具体错误描述检查参数
9403201数据不存在。订单不存在,请检查入参
9403201数据不存在订单不存在,请检查入参
9403202退款单已受理请调用查询退款接口确认退款请求
9403203建档未完成,还不能发起支付或退款请完成建档签约流程
9403205订单无法退款(订单状态不对或超过160天)请检查订单状态或订单时间
9403206退款状态未知,请商户2分钟后主动查询退款状态请2分钟后调用查询退款接口确认退款状态
9403208该订单正在退款中,请等待退款完成再发起新的退款请等待退款完成再发起新的退款
9403209不允许结算前退款请等待订单结算后再退款

# 7. 适用范围

本接口暂未明确可调用账号类型,或在业务中根据调用传参自行确定是否可调用,请以实际调用情况为准。