查询单笔退款
更新时间:2026.05.211. 场景说明
提交退款申请后,通过调用该接口查询退款状态。退款有一定延时,用零钱支付的退款20分钟内
到账,银行卡支付的退款3个工作日后重新查询退款状态。
2. 接口说明
2.1 请求参数
字段名 | 变量名 | 是否必填 | 类型 | 示例值 | 描述 |
|---|---|---|---|---|---|
公众账号 ID | appid | 是 | String(32) | wx8888888888888888 | 微信分配的公众账号 ID。 |
商户号 | mch_id | 是 | String(32) | 1900000109 | 微信支付分配的商户号。 |
子商户公众账号 ID | sub_appid | 否 | String(32) | wx8888888888888888 | 微信分配的子商户公众账号 ID。 |
子商户号 | sub_mch_id | 是 | String(32) | 1900000109 | 微信支付分配的子商户号。 |
渠道商商户号 | channel_id | 是 | String(32) | 19000001 | 微信支付分配给收单服务商的 ID。 |
随机字符串 | nonce_str | 是 | String(32) | 5K8264ILTKCH16CQ2502SI8ZNMTM67VS | 随机字符串,不长于 32 位。推荐随机数生成算法。 |
签名 | sign | 是 | String(512) | C380BEC2BFD727A4B6845133519F3AD6 | 签名。 |
商户退款单号 | out_refund_no | 是 | String(64) | 1217752501201407033233368010 | 商户系统内部的退款单号,商户系统内部唯一,只能是数字、大小写字母,同一退款单号多次请求只退一笔。 |
商户订单号 | out_trade_no | 是 | String(32) | 12121217752501201407033233368010 | 原交易的商户订单号,32 个字符以内、可包含字母、数字、下划线;需保证在商户端不重复。 |
网联 IDC 标识 | idc_flag | 是 | String(2) | 10 | 交易发往的网联条码支付 IDC 标识,具体规则见 4.8 网联条码支付 IDC 标识。 |
2.2 响应参数
字段名 | 变量名 | 是否必填 | 类型 | 示例值 | 描述 |
|---|---|---|---|---|---|
返回状态码 | return_code | 是 | String(16) | SUCCESS | SUCCESS/FAIL。此字段是通信标识,非交易标识,交易是否成功需要查看 trade_state 来判断。 |
返回信息 | return_msg | 否 | String(128) | 签名失败 | 返回信息,如非空,为错误原因。签名失败。参数格式校验错误。 |
以下字段在return_code为SUCCESS的时候有返回:
字段名 | 变量名 | 是否必填 | 类型 | 示例值 | 描述 |
|---|---|---|---|---|---|
业务结果 | result_code | 是 | String(16) | SUCCESS | SUCCESS/FAIL。 |
错误代码 | err_code | 否 | String(32) | SYSTEMERROR | - |
错误代码描述 | err_code_des | 否 | String(128) | 系统错误 | 错误返回的信息描述。 |
公众账号 ID | appid | 是 | String(32) | wx8888888888888888 | 调用接口提交的公众账号 ID。 |
商户号 | mch_id | 是 | String(32) | 1900000109 | 调用接口提交的商户号。 |
子商户公众账号 ID | sub_appid | 否 | String(32) | wx8888888888888888 | 调用接口提交的子商户公众账号 ID。 |
子商户号 | sub_mch_id | 是 | String(32) | 1900000109 | 调用接口提交的子商户号。 |
随机字符串 | nonce_str | 是 | String(32) | 5K8264ILTKCH16CQ2502SI8ZNMTM67VS | 网联返回的随机字符串。 |
签名 | sign | 是 | String(512) | C380BEC2BFD727A4B6845133519F3AD6 | 网联返回的签名。 |
货币种类 | fee_type | 否 | String(8) | CNY | 符合 ISO 4217 标准的三位字母代码,默认人民币:CNY。 |
现金支付金额 | cash_fee | 是 | Int | 100 | 订单现金支付金额。 |
商户退款单号 | out_refund_no | 是 | String(64) | 1217752501201407033233368018 | 商户系统内部的退款单号,商户系统内部唯一,只能是数字、大小写字母,同一退款单号多次请求只退一笔。 |
网联退款单号 | refund_id | 是 | String(32) | 1217752501201407033233368018 | 网联退款单号。 |
退款渠道 | refund_channel | 否 | String(16) | ORIGINAL | ORIGINAL— 原路退款BALANCE— 退回到余额OTHER_BALANCE— 原账户异常退到其他余额账户OTHER_BANKCARD— 原银行卡异常退到其他银行卡 |
申请退款金额 | refund_fee | 是 | Int | 100 | 退款总金额,单位为分,可以做部分退款。 |
退款金额 | settlement_refund_fee | 否 | Int | 100 | 退款总金额,单位为分,可以做部分退款。 |
代金券退款金额 | coupon_refund_fee | 否 | Int | 100 | 按原支付单号的优惠按比例退款 |
优惠退款详情 | refund_detail | 否 | List | - | 优惠功能信息,使用 Json 数组格式,详细说明见下文。 |
退款状态 | refund_status | 是 | String(16) | SUCCESS | 退款状态:SUCCESS— 退款成功REFUNDCLOSE— 退款关闭PROCESSING— 退款处理中CHANGE— 退款异常,退款到银行发现用户的卡作废或者冻结了,导致原路退款银行卡失败。 |
退款资金来源 | refund_account | 否 | String(30) | REFUND_SOURCE_RECHARGE_FUNDS | REFUND_SOURCE_RECHARGE_FUNDS--- 可用余额退款 / 基本账户REFUND_SOURCE_UNSETTLED_FUNDS--- 未结算资金退款。 |
退款入账账户 | refund_recv_accout | 是 | String(64) | 招商银行信用卡 0403 | 取当前退款单的退款入账方1)退回银行卡:{银行名称}{卡类型}{卡尾号}2)退回支付用户零钱:支付用户零钱3)退还商户:商户基本账户 商户结算银行账户4)退回支付用户零钱通:支付用户零钱通 |
退款成功时间 | refund_success_time | 否 | String(20) | 2016-07-25 15:26:26 | 退款成功时间,当退款状态为退款成功时有返回。 |
退款受理时间 | refund_create_time | 否 | String(20) | 2016-07-25 15:26:26 | 退款受理时间 |
其中,refund_detail,包含如下子域:
字段名 | 变量名 | 是否必填 | 类型 | 示例值 | 描述 |
|---|---|---|---|---|---|
券 ID | promotion_id | 是 | String(32) | 109519 | 券或者立减优惠 id。 |
优惠范围 | scope | 否 | String(32) | SINGLE | GLOBAL - 全场代金券。SINGLE - 单品优惠。 |
优惠类型 | type | 否 | String(32) | DISCOUNT | COUPON - 代金券,需要走结算资金的充值型代金券(境外商户券币种与支付币种一致)。DISCOUNT - 优惠券,不走结算资金的免充值型优惠券(境外商户券币种与标价币种一致)。 |
优惠券面额 | amount | 否 | Int | 5 | 用户享受优惠的金额(优惠券面额 = 微信出资金额 + 商家出资金额 + 其他出资方金额 )。 |
2.3 错误码
名称 | 描述 | 原因 | 解决方案 |
|---|---|---|---|
SYSTEMERROR | 接口返回错误 | 系统超时 | 请尝试再次调用 API。 |
REFUNDNOTEXIST | 退款订单查询失败 | 订单号错误或订单状态不正确 | 请检查订单号是否有误以及订单状态是否正确,如:未支付、已支付未退款 |
INVALID_TRANSACTIONID | 无效 transaction_ | 请求参数未按指引进行 | 请求参数错误,检查原交易号是否存在或发起支付交易接口返回失败 |
PARAM_ERROR | 参数错误 | 请求参数未按指引进行填写 | 请求参数错误,请检查参数再调用退款申请 |
APPID_NOT_EXIST | APPID 不存在 | 参数中缺少 APPID | 请检查 APPID 是否正确 |
MCHID_NOT_EXIST | MCHID 不存在 | 参数中缺少 MCHID | 请检查 MCHID 是否正确 |
REQUIRE_POST_METHOD | 请使用 post 方法 | 未使用 post 传递参数 | 请检查请求参数是否通过 post 方法提交 |
SIGNERROR | 签名错误 | 参数签名结果不正确 | 请检查签名参数和方法是否都符合签名算法要求 |
XML_FORMAT_ERROR | XML 格式错误 | XML 格式错误 | 请检查 XML 参数格式是否正确 |

