7 退款查詢接口

7.1 退款接口

7.1.1 業務功能

一、退款方式 :前只支持原路返回退款與退款至微信餘額帳戶兩種。

說明:退到銀行卡則是非即時的,每個銀行的處理速度不同,一般發起退款後1-3個工作日內到賬。

同一筆單的部分退款需要設置相同的訂單號和不同的out_refund_no。一筆退款失敗後重新提交,要採用原來的out_refund_no。總退款金額不能超過用戶實際支付金額(現金券金額不能退款)。

二、退款限制:商戶在退款操作時應該注意退款限制,避免發起不會成功的退款請求,下麵是主要的退款限制:

1.在平臺中,只要退款累計金額不超過交易單支付總額,一筆交易單可以多次退款,退款申請單號(退款 接口中有此參數)唯一確定一次退款,而不是交易單號確定一次退款。退款申請單號由商戶生成,所以商戶一定要保證退款申請單的唯一性。商家在退款過程中要特別注意,只有在能確定退款失敗的情況下,才能重新發 起另一筆退款。

2.目前大多數銀行都支持全額退款和部分退款,但是也有少數銀行不支持全額退款或部分退款,或者不支持退款。在這種情況下,商戶可以與買家協調,退到微信餘額帳戶中。

目前只提供無鑰退款接口,需要有鑰退款接口的商戶,請聯繫商務說明。

7.1.2 交互模式

後臺系統調用交互模式

7.1.3 請求參數列表


請求url:https://gateway.wepayez.com/pay/gateway


POSTXML 內容體進行請求

字段名變數名必填類型說明
接口類型serviceString(32)接口類型:unified.trade.refund
版本號versionString(8)版本號,version 默認值是 2.0。
字元集charsetString(8)字元集,取值:UTF-8。
簽名方式sign_typeString(8)簽名類型,取值:MD5
商戶號mch_idString(32)商戶號,由平臺分配
商戶訂單號out_trade_noString(32)商 戶 系 統 內 部 的 訂 單 號, out_trade_no 和 transaction_id 至少一個必填,同時存在時 transaction_id 優先
平臺訂單號transaction_idString(32)平臺訂單號, out_trade_no 和 transaction_id 至 少一個必填,同時存在時 transaction_id 優先
商戶退款單號out_refund_noString(32)商戶退款單號,32 個字元內、可包含字母,確 保在商戶系統唯一。同個退款單號多次請求,平臺當一個單處理,只會退一次款。如果出現退款不成功,請採用原退款單號重新發起,避免出現重複退款。
總金額total_feeInt訂單總金額,單位為分
退款金額refund_feeInt退款總金額,單位為分,可以做部分退款
操作員op_user_idString(32)操作員帳號,默認為商戶號
退款管道refund_channelString(16)ORIGINAL-原路退款,默認
隨機字串nonce_strString(32)隨機字串,不長於 32 位
簽名signString(32)MD5簽名結果,詳見“第 4 章 MD5 簽名規則”

7.1.4 返回結果

數據按 XML 的格式即時返回

字段名變數名必填類型說明
版本號versionString(8)版本號,version 默認值是 2.0。
字元集charsetString(8)字元集,取值:UTF-8。
簽名方式sign_typeString(8)簽名類型,取值:MD5
返回狀態碼statusString(16)0 表示成功,非0表示失敗。此字段是通信標識,非交易標識,交易是否成功需要查看 result_code 來判斷
返回資訊messageString(128)返回資訊,如非空,為錯誤原因簽名失敗參數格式校驗錯誤

以下字段在 status 為 0 的時候有返回

字段名變數名必填類型說明
業務結果result_codeString(16)0 表示成功,非 0 表示失敗
商戶號mch_idString(32)商戶號,由平臺分配
設備號device_infoString(32)終端設備號
隨機字串nonce_strString(32)隨機字串,不長於 32 位
錯誤代碼err_codeString(32)參考錯誤碼
錯誤代碼描述err_msgString(128)結果資訊描述
簽名signString(32)MD5 簽名結果,詳見“第 4 章 MD5 簽名規則”

以下字段在 status 和 result_code 都為 0 的時候有返回

字段名變數名必填類型說明
平臺訂單號transaction_idString(32)平臺交易號
商戶訂單號out_trade_noString(32)商戶系統內部的訂單號
商戶退款單號out_refund_noString(32)商戶退款單號
平臺退款單號refund_idString(32)平臺退款單號
退款管道refund_channelString(16)ORIGINAL—原路退款,默認
退款金額refund_feeInt退款總金額,單位為分,可以做部分退款
現金券退款金额coupon_refund_feeInt現金券退款金額 <= 退款金額, 退款金額-現金券退款金額為現金

7.2 退款查詢接口

提交退款申請後, 通過調用該接口查詢退款狀態。 退款有一定延時, 請在 3 個工作日後 重新查詢退款狀態。

7.2.1 請求參數列表


請求url:https://gateway.wepayez.com/pay/gateway


POSTXML 內容體進行請求

字段名變數名必填類型說明
接口類型serviceString(32)接口類型:unified.trade.refundquery
版本號versionString(8)版本號,version 默認值是 2.0。
字元集charsetString(8)字元集,取值:UTF-8。
簽名方式sign_typeString(8)簽名類型,取值:MD5
商戶號mch_idString(32)商戶號,由平臺分配
商戶訂單號out_trade_noString(32)商戶系統內部的訂單號, out_trade_no 和 transaction_id至少一個必填,同時存在時 transaction_id 優先
平臺訂單號transaction_idString(32)平臺訂單號, out_trade_no 和 transaction_id 至 少一個必填,同時存在時 transaction_id 優先
商戶退款單號out_refund_noString(32)商戶退款單號,32 個字元內、可包含字母,確 保在商戶系統唯一。
平臺退款單號refund_idString(32)平臺退款單號refund_id\out_refund_no、out_trade_no 、transaction_id 四個參數必填一個,如果同事 存在優先順序為 :refund_id>out_refund_no>transaction_id>out_trade_no
隨機字串nonce_strString(32)隨機字串,不長於 32 位
簽名signString(32)MD5 簽名結果,詳見“第 4 章 MD5 簽名規則”

7.2.2 返回結果

數據按 XML 的格式即時返回

字段名變數名必填類型說明
版本號versionString(8)版本號,version 默認值是 2.0。
字元集charsetString(8)字元集,取值:UTF-8。
簽名方式sign_typeString(8)簽名類型,取值:MD5
返回狀態碼statusString(16)0 表示成功,非0表示失敗。此字段是通信標識,非交易標識,交易是否成功需要查看 result_code 來判斷
返回資訊messageString(128)返回資訊,如非空,為錯誤原因簽名失敗參數格式校驗錯誤

以下字段在 status 為 0 的時候有返回

字段名變數名必填類型說明
業務結果result_codeString(16)0 表示成功,非 0 表示失敗
商戶號mch_idString(32)商戶號,由平臺分配
設備號device_infoString(32)終端設備號
隨機字串nonce_strString(32)隨機字串,不長於 32 位
錯誤代碼err_codeString(32)參考錯誤碼
錯誤代碼描述err_msgString(128)結果資訊描述
簽名signString(32)MD5 簽名結果,詳見“第 4 章 MD5 簽名規則”

以下字段在 status 和 result_code 都為 0 的時候有返回

字段名變數名必填類型說明
平臺訂單號transaction_idString(32)平臺交易號
商戶訂單號out_trade_noString(32)商戶系統內部的訂單號
退款筆數refund_countInt退款記錄數
商戶退款單號out_refund_noString(32)商戶退款單號
平臺退款單號refund_idString(32)平臺退款單號
退款管道refund_channelString(16)ORIGINAL—原路退款,默認
退款金額refund_feeInt退款總金額,單位為分,可以做部分退款
現金券退款金额coupon_refund_feeInt現金券退款金額 <= 退款金額, 退款金額-現金券退款金額為現金
現金支付金額cash_feeInt現金支付金額訂單現金支付金額,单位:分
現金支付貨幣類型cash_fee_typeString(16)貨幣類型,符合 ISO 4217 標準的三位字母代碼,CNY
匯率rateString(16)用戶支付幣種與商戶結算幣種的兌換比例關係
退款時間refund_time_$nString(14)yyyyMMddHHmmss
退款狀態refund_status_$nString(16)退款狀態: SUCCESS—退款成功 FAIL—退款失敗 PROCESSING—退款處理中 NOTSURE—未確定, 需要商戶原退款單號 重新發起 CHANGE—轉入代發,退款到銀行發現用戶 的卡作廢或者凍結了,導致原路退款銀行卡失 敗,資金回流到商戶的現金帳號,需要商戶人 工幹 預,通過線下或者平臺轉賬的方式進行退款。

$n 表示記錄的序號,取值為 0~($refund_count-1),例如 refund_count 指示返回的退款記 錄有 2 條。第一條序號為“0”,第二條序號為“1”。