下載交易賬單
應(yīng)用場景
商戶可以通過該接口下載歷史交易清單。比如掉單、系統(tǒng)錯(cuò)誤等導(dǎo)致商戶側(cè)和微信側(cè)數(shù)據(jù)不一致,通過對賬單核對后可校正支付狀態(tài)。
注意:
1、微信側(cè)未成功下單的交易不會出現(xiàn)在對賬單中。支付成功后撤銷的交易會出現(xiàn)在對賬單中,跟原支付單訂單號一致;
2、微信在次日9點(diǎn)啟動生成前一天的對賬單,建議商戶10點(diǎn)后再獲取;
3、對賬單中涉及金額的字段單位為“元”。
4、對賬單接口只能下載三個(gè)月以內(nèi)的賬單。
5、對賬單是以商戶號緯度來生成的,如一個(gè)商戶號與多個(gè)appid有綁定關(guān)系,則使用其中任何一個(gè)appid都可以請求下載對賬單。對賬單中的appid取自交易時(shí)候提交的appid,與請求下載對賬單時(shí)使用的appid無關(guān)。
6、自2018年起入駐的商戶默認(rèn)是開通免充值券后的結(jié)算對賬單
接口鏈接
https://api.mch.weixin.qq.com/pay/downloadbill
是否需要證書
不需要。
請求參數(shù)
字段名 | 變量名 | 必填 | 類型 | 示例值 | 描述 |
---|---|---|---|---|---|
公眾賬號ID | appid | 是 | String(32) | wx8888888888888888 | 微信分配的公眾賬號ID |
商戶號 | mch_id | 是 | String(32) | 1900000109 | 微信支付分配的商戶號 |
隨機(jī)字符串 | nonce_str | 是 | String(32) | 5K8264ILTKCH16CQ2502SI8ZNMTM67VS | 隨機(jī)字符串,不長于32位。推薦隨機(jī)數(shù)生成算法 |
簽名 | sign | 是 | String(32) | C380BEC2BFD727A4B6845133519F3AD6 | 簽名,詳見簽名生成算法 |
簽名類型 | sign_type | 否 | String(32) | HMAC-SHA256 | 簽名類型,目前支持HMAC-SHA256和MD5,默認(rèn)為MD5 |
對賬單日期 | bill_date | 是 | String(8) | 20140603 | 下載對賬單的日期,格式:20140603 |
賬單類型 | bill_type | 否 | String(8) | ALL |
ALL(默認(rèn)值),返回當(dāng)日所有訂單信息(不含充值退款訂單) SUCCESS,返回當(dāng)日成功支付的訂單(不含充值退款訂單) REFUND,返回當(dāng)日退款訂單(不含充值退款訂單) RECHARGE_REFUND,返回當(dāng)日充值退款訂單 |
壓縮賬單 | tar_type | 否 | String | GZIP | 非必傳參數(shù),固定值:GZIP,返回格式為.gzip的壓縮包賬單。不傳則默認(rèn)為數(shù)據(jù)流形式。 |
<xml>
<appid>wx2421b1c4370ec43b</appid>
<bill_date>20141110</bill_date>
<bill_type>ALL</bill_type>
<mch_id>10000100</mch_id>
<nonce_str>21df7dc9cd8616b56919f20d9f679233</nonce_str>
<sign>332F17B766FC787203EBE9D6E40457A1</sign>
</xml>
返回結(jié)果
失敗時(shí),返回以下字段
字段名 | 變量名 | 必填 | 類型 | 示例值 | 描述 |
---|---|---|---|---|---|
返回狀態(tài)碼 | return_code | 是 | String(16) | FAIL | FAIL |
錯(cuò)誤碼描述 | return_msg | 否 | String(128) | 簽名失敗 | 返回信息,如非空,為錯(cuò)誤原因 如:簽名失敗 等。 |
錯(cuò)誤碼 | error_code | 否 | String(16) | 20002 | 失敗錯(cuò)誤碼,詳見錯(cuò)誤碼列表 |
成功時(shí),數(shù)據(jù)以文本表格的方式返回,第一行為表頭,后面各行為對應(yīng)的字段內(nèi)容,字段內(nèi)容跟查詢訂單或退款結(jié)果一致,具體字段說明可查閱相應(yīng)接口。
第一行為表頭,根據(jù)請求下載的對賬單類型不同而不同(由bill_type決定), 目前有:
當(dāng)日所有訂單交易時(shí)間,公眾賬號ID,商戶號,子商戶號,設(shè)備號,微信訂單號,商戶訂單號,用戶標(biāo)識,交易類型,交易狀態(tài),付款銀行,貨幣種類,總金額,代金券或立減優(yōu)惠金額,微信退款單號,商戶退款單號,退款金額, 代金券或立減優(yōu)惠退款金額,退款類型,退款狀態(tài),商品名稱,商戶數(shù)據(jù)包,手續(xù)費(fèi),費(fèi)率
當(dāng)日成功支付的訂單交易時(shí)間,公眾賬號ID,商戶號,子商戶號,設(shè)備號,微信訂單號,商戶訂單號,用戶標(biāo)識,交易類型,交易狀態(tài),付款銀行,貨幣種類,總金額, 代金券或立減優(yōu)惠金額,商品名稱,商戶數(shù)據(jù)包,手續(xù)費(fèi),費(fèi)率
當(dāng)日退款的訂單交易時(shí)間,公眾賬號ID,商戶號,子商戶號,設(shè)備號,微信訂單號,商戶訂單號,用戶標(biāo)識,交易類型,交易狀態(tài),付款銀行,貨幣種類,總金額, 代金券或立減優(yōu)惠金額,退款申請時(shí)間,退款成功時(shí)間,微信退款單號,商戶退款單號,退款金額, 代金券或立減優(yōu)惠退款金額,退款類型,退款狀態(tài),商品名稱,商戶數(shù)據(jù)包,手續(xù)費(fèi),費(fèi)率
從第二行起,為數(shù)據(jù)記錄,各參數(shù)以逗號分隔,參數(shù)前增加`符號,為標(biāo)準(zhǔn)鍵盤1左邊鍵的字符,字段順序與表頭一致。
倒數(shù)第二行為訂單統(tǒng)計(jì)標(biāo)題,最后一行為統(tǒng)計(jì)數(shù)據(jù)
總交易單數(shù),總交易額,總退款金額,總代金券或立減優(yōu)惠退款金額,手續(xù)費(fèi)總金額
舉例如下:
交易時(shí)間,公眾賬號ID,商戶號,子商戶號,設(shè)備號,微信訂單號,商戶訂單號,用戶標(biāo)識,交易類型,交易狀態(tài),付款銀行,貨幣種類,總金額,代金券或立減優(yōu)惠金額,微信退款單號,商戶退款單號,退款金額,代金券或立減優(yōu)惠退款金額,退款類型,退款狀態(tài),商品名稱,商戶數(shù)據(jù)包,手續(xù)費(fèi),費(fèi)率
`2014-11-10 16:33:45,`wx2421b1c4370ec43b,`10000100,`0,`1000,`1001690740201411100005734289,`1415640626,`085e9858e3ba5186aafcbaed1,`MICROPAY,`SUCCESS,`OTHERS,`CNY,`0.01,`0.0,`0,`0,`0,`0,`,`,`被掃支付測試,`訂單額外描述,`0,`0.60%
`2014-11-10 16:46:14,`wx2421b1c4370ec43b,`10000100,`0,`1000,`1002780740201411100005729794,`1415635270,`085e9858e90ca40c0b5aee463,`MICROPAY,`SUCCESS,`OTHERS,`CNY,`0.01,`0.0,`0,`0,`0,`0,`,`,`被掃支付測試,`訂單額外描述,`0,`0.60%
總交易單數(shù),總交易額,總退款金額,總代金券或立減優(yōu)惠退款金額,手續(xù)費(fèi)總金額
`2,`0.02,`0.0,`0.0,`0
結(jié)算對賬單
|
|
錯(cuò)誤碼
錯(cuò)誤碼 | 名稱 | 描述 | 原因 | 解決方案 |
---|---|---|---|---|
100 | SYSTEMERROR | 下載失敗 | 系統(tǒng)超時(shí) | 請嘗試再次查詢。 |
20003 | SYSTEMERROR | 下載失敗 | 系統(tǒng)超時(shí) | 請嘗試再次查詢。 |
20001 | sign error | 簽名錯(cuò)誤 | 請求參數(shù)未按要求進(jìn)行填寫 | 簽名錯(cuò)誤,請重新檢查參數(shù)和簽名密鑰是否正確 |
nonce_str too long | 參數(shù)nonce_str錯(cuò)誤 | 請求參數(shù)未按要求填寫 | 參數(shù)nonce_str長度超長 | |
invalid tar_type, Only GZIP supported | 參數(shù)tar_type錯(cuò)誤 | 請求參數(shù)未按指引進(jìn)行填寫 | 請重新檢查參數(shù)invalid tar_typ是否正確 | |
invalid bill_type | 參數(shù)bill_type錯(cuò)誤 | 請求參數(shù)未按指引進(jìn)行填寫 | 請重新檢查參數(shù)bill_type是否正確 | |
invalid bill_date | 參數(shù)bill_date錯(cuò)誤 | 請求參數(shù)未按指引進(jìn)行填寫 | 請重新檢查參數(shù)bill_date是否符合要求 | |
require POST method | 請求方式錯(cuò)誤 | 請求方式不符合要求 | 請求檢查參數(shù)請求方式是否為post | |
empty post data | 請求報(bào)文錯(cuò)誤 | 請求報(bào)文為空 | 請重新檢查請求報(bào)文是否正確 | |
data format error | 參數(shù)格式錯(cuò)誤 | 請求參數(shù)要求為xml格式 | 請重新檢查請求參數(shù)格式是否為xml | |
missing parameter | 缺少參數(shù) | 有必傳的參數(shù)未上傳 | 請重新檢查是否所有必傳參數(shù)都上傳了,且不為空 | |
invalid appid | appid錯(cuò)誤 | 請求參數(shù)appid有誤 | 請重新檢查參數(shù)appid是否正確 | |
invalid parameter | 參數(shù)錯(cuò)誤 | 有未知的請求參數(shù) | 請重新檢查是否所有參數(shù)都與文檔相符 | |
20002 | NO Bill Exist | 賬單不存在 | 當(dāng)前商戶號沒有已成交的訂單,不生成對賬單 | 請檢查當(dāng)前商戶號在指定日期內(nèi)是否有成功的交易。 |
Bill Creating | 賬單未生成 | 當(dāng)前商戶號沒有已成交的訂單或?qū)~單尚未生成 | 請先檢查當(dāng)前商戶號在指定日期內(nèi)是否有成功的交易,如指定日期有交易則表示賬單正在生成中,請?jiān)谏衔?0點(diǎn)以后再下載。 | |
20007 | 當(dāng)前商戶號賬單API權(quán)限已經(jīng)關(guān)閉 | 當(dāng)前商戶號賬單API權(quán)限已經(jīng)關(guān)閉 | 當(dāng)前商戶號賬單API權(quán)限已經(jīng)關(guān)閉 | 當(dāng)前商戶號賬單API權(quán)限已經(jīng)關(guān)閉,請聯(lián)系微信支付解決 |
20100 | system error | 下載失敗 | 系統(tǒng)超時(shí) | 請嘗試再次查詢。 |