淺析微信支付:下載對賬單和資金賬單

本文是【淺析微信支付】系列文章的第九篇,主要講解商戶下載對賬單接口和資金賬單接口的實現和一些注意事項。

淺析微信支付系列已經更新九篇了喲~,沒有看過的朋友們可以看一下哦。

淺析微信支付:申請退款、退款回調接口、查詢退款

淺析微信支付:查詢訂單和關閉訂單

淺析微信支付:支付結果通知

在商戶平臺中,商家也可以下載資金對賬單,歷史的交易清單,具體位置:商戶平臺 -> 交易中心 -> 賬單管理。

如果要查看實時的流水記錄,可以在微信APP中搜索小程序 微信支付商戶助手 即可查看。

1、下載對賬單

以下爲微信官方的下載對賬單文檔:

https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=9_6

根據接口下載歷史的交易賬單,數據以文本表格的方式返回,第一行爲表頭,後面各行爲對應的字段內容,字段內容跟查詢訂單或退款結果一致,具體字段說明可查閱相應接口。

此接口方便商家在自身系統中下載,不依賴於微信商戶平臺。

1.1. 應用場景

商戶可以通過該接口下載歷史交易清單。比如掉單、系統錯誤等導致商戶側和微信側數據不一致,通過對賬單核對後可校正支付狀態。

注意:
1、微信側未成功下單的交易不會出現在對賬單中。支付成功後撤銷的交易會出現在對賬單中,跟原支付單訂單號一致;
2、微信在次日9點啓動生成前一天的對賬單,建議商戶10點後再獲取;
3、對賬單中涉及金額的字段單位爲“元”。
4、對賬單接口只能下載三個月以內的賬單。
5、對賬單是以商戶號緯度來生成的,如一個商戶號與多個appid有綁定關係,則使用其中任何一個appid都可以請求下載對賬單。對賬單中的appid取自交易時候提交的appid,與請求下載對賬單時使用的appid無關。

1.2. 接口鏈接

https://api.mch.weixin.qq.com/pay/downloadbill

1.3. 是否需要證書

不需要

1.4. 調用接口

調用參數:

字段名稱 變量名 必填 類型 描述
賬單日期 bill_date String(8) 下載對賬單的日期,格式:20140603
賬單類型 bill_type String(8) ALL,返回當日所有訂單信息,默認值SUCCESS,返回當日成功支付的訂單REFUND,返回當日退款訂單RECHARGE_REFUND,返回當日充值退款訂單
壓縮賬單 tar_type String(8) 非必傳參數,固定值:GZIP,返回格式爲.gzip的壓縮包賬單。不傳則默認爲數據流形式。

以下爲調用示例代碼:

/**
 * 對賬單下載
 */
private void doDownloadBill() {
    HashMap<String, String> data = new HashMap<String, String>();
    data.put("bill_date", "20161102");
    data.put("bill_type", "ALL");
    try {
        Map<String, String> r = wxpay.downloadBill(data);
        System.out.println(r);
    } catch (Exception e) {
        e.printStackTrace();
    }
}

1.5. 返回結果

成功時,數據以文本表格的方式返回,第一行爲表頭,後面各行爲對應的字段內容,字段內容跟查詢訂單或退款結果一致,具體字段說明可查閱相應接口。

第一行爲表頭,根據請求下載的對賬單類型不同而不同(由bill_type決定),目前有:

當日所有訂單
交易時間,公衆賬號ID,商戶號,子商戶號,設備號,微信訂單號,商戶訂單號,用戶標識,交易類型,交易狀態,付款銀行,貨幣種類,總金額,代金券或立減優惠金額,微信退款單號,商戶退款單號,退款金額,代金券或立減優惠退款金額,退款類型,退款狀態,商品名稱,商戶數據包,手續費,費率

當日成功支付的訂單
交易時間,公衆賬號ID,商戶號,子商戶號,設備號,微信訂單號,商戶訂單號,用戶標識,交易類型,交易狀態,付款銀行,貨幣種類,總金額,代金券或立減優惠金額,商品名稱,商戶數據包,手續費,費率

當日退款的訂單
交易時間,公衆賬號ID,商戶號,子商戶號,設備號,微信訂單號,商戶訂單號,用戶標識,交易類型,交易狀態,付款銀行,貨幣種類,總金額,代金券或立減優惠金額,退款申請時間,退款成功時間,微信退款單號,商戶退款單號,退款金額,代金券或立減優惠退款金額,退款類型,退款狀態,商品名稱,商戶數據包,手續費,費率

從第二行起,爲數據記錄,各參數以逗號分隔,參數前增加`符號,爲標準鍵盤1左邊鍵的字符,字段順序與表頭一致。

倒數第二行爲訂單統計標題,最後一行爲統計數據

總交易單數,總交易額,總退款金額,總代金券或立減優惠退款金額,手續費總金額

舉例如下:

交易時間,公衆賬號ID,商戶號,子商戶號,設備號,微信訂單號,商戶訂單號,用戶標識,交易類型,交易狀態,付款銀行,貨幣種類,總金額,代金券或立減優惠金額,微信退款單號,商戶退款單號,退款金額,代金券或立減優惠退款金額,退款類型,退款狀態,商品名稱,商戶數據包,手續費,費率
`2014-11-1016:33:45,`wx2421b1c4370ec43b,`10000100,`0,`1000,`1001690740201411100005734289,`1415640626,`085e9858e3ba5186aafcbaed1,`MICROPAY,`SUCCESS,`CFT,`CNY,`0.01,`0.0,`0,`0,`0,`0,`,`,`被掃支付測試,`訂單額外描述,`0,`0.60%
`2014-11-1016:46:14,`wx2421b1c4370ec43b,`10000100,`0,`1000,`1002780740201411100005729794,`1415635270,`085e9858e90ca40c0b5aee463,`MICROPAY,`SUCCESS,`CFT,`CNY,`0.01,`0.0,`0,`0,`0,`0,`,`,`被掃支付測試,`訂單額外描述,`0,`0.60%
總交易單數,總交易額,總退款金額,總代金券或立減優惠退款金額,手續費總金額
`2,`0.02,`0.0,`0.0,`0

2、下載資金賬單接口

以下爲微信官方的下載資金賬單文檔:

https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=9_18&index=7

2.1. 應用場景

商戶可以通過該接口下載自2017年6月1日起 的歷史資金流水賬單。

說明:

1、資金賬單中的數據反映的是商戶微信賬戶資金變動情況;
2、當日賬單在次日上午9點開始生成,建議商戶在上午10點以後獲取;
3、資金賬單中涉及金額的字段單位爲“元”。

2.2. 接口鏈接

https://api.mch.weixin.qq.com/pay/downloadfundflow

2.3. 是否需要證書

請求需要雙向證書

2.4. 調用接口

調用參數:

字段名稱 變量名 必填 類型 描述
簽名類型 sign_type String(32) 簽名類型,目前僅支持HMAC-SHA256
資金賬單日期 bill_date String(8) 下載對賬單的日期,格式:20140603
資金賬戶類型 account_type String(8) 賬單的資金來源賬戶:Basic 基本賬戶、Operation 運營賬戶、Fees 手續費賬戶
壓縮賬單 tar_type String(8) 非必傳參數,固定值:GZIP,返回格式爲.gzip的壓縮包賬單。不傳則默認爲數據流形式。

此接口不常用,推薦使用微信商戶平臺下載。具體的實現請參考上面的官方文檔。

結語

以上爲下載對賬單、資金賬單相關的解釋和源碼,特別需要注意的是下載資金賬單接口需要特定的簽名類型HMAC-SHA256,小夥伴們一定要注意哦,具體的源碼可以看作者的github,裏面對每個方法有詳細的註釋。

預告:下一篇文章 如何使用沙箱環境測試,敬請期待!!!

​如果想要提前一覽源碼的小夥伴,可以先看看我的 github,地址如下:

`
https://github.com/YClimb/wxp...
`

關注作者微信公衆號,點擊下方討論羣,掃碼即可加入微信支付討論羣與小夥伴一起探討哦~

到此本文就結束了,關注公衆號查看更多推送!!!


關注我的公衆號


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章