本文是【淺析微信支付】系列文章的第九篇,主要講解商戶下載對帳單接口和資金帳單接口的實現和一些注意事項。
淺析微信支付系列已經更新九篇了喲~,沒有看過的朋友們能夠看一下哦。php
淺析微信支付:查詢訂單和關閉訂單github
在商戶平臺中,商家也能夠下載資金對帳單,歷史的交易清單,具體位置:商戶平臺 -> 交易中心 -> 帳單管理。api
若是要查看實時的流水記錄,能夠在微信APP中搜索小程序 微信支付商戶助手
便可查看。微信
如下爲微信官方的下載對帳單
文檔:app
https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=9_6
根據接口下載歷史的交易帳單,數據以文本表格的方式返回,第一行爲表頭,後面各行爲對應的字段內容,字段內容跟查詢訂單或退款結果一致,具體字段說明可查閱相應接口。測試
此接口方便商家在自身系統中下載,不依賴於微信商戶平臺。微信支付
商戶能夠經過該接口下載歷史交易清單。好比掉單、系統錯誤等致使商戶側和微信側數據不一致,經過對帳單核對後可校訂支付狀態。spa
注意: 一、微信側未成功下單的交易不會出如今對帳單中。支付成功後撤銷的交易會出如今對帳單中,跟原支付單訂單號一致; 二、微信在第二天9點啓動生成前一天的對帳單,建議商戶10點後再獲取; 三、對帳單中涉及金額的字段單位爲「元」。 四、對帳單接口只能下載三個月之內的帳單。 五、對帳單是以商戶號緯度來生成的,如一個商戶號與多個appid有綁定關係,則使用其中任何一個appid均可以請求下載對帳單。對帳單中的appid取自交易時候提交的appid,與請求下載對帳單時使用的appid無關。
https://api.mch.weixin.qq.com/pay/downloadbill
不須要
調用參數:
字段名稱 | 變量名 | 必填 | 類型 | 描述 |
---|---|---|---|---|
帳單日期 | 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(); } }
成功時,數據以文本表格的方式返回,第一行爲表頭,後面各行爲對應的字段內容,字段內容跟查詢訂單或退款結果一致,具體字段說明可查閱相應接口。
第一行爲表頭,根據請求下載的對帳單類型不一樣而不一樣(由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
如下爲微信官方的下載資金帳單
文檔:
https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=9_18&index=7
商戶能夠經過該接口下載自2017年6月1日起 的歷史資金流水帳單。
說明:
一、資金帳單中的數據反映的是商戶微信帳戶資金變更狀況; 二、當日帳單在第二天上午9點開始生成,建議商戶在上午10點之後獲取; 三、資金帳單中涉及金額的字段單位爲「元」。
https://api.mch.weixin.qq.com/pay/downloadfundflow
請求須要雙向證書
調用參數:
字段名稱 | 變量名 | 必填 | 類型 | 描述 |
---|---|---|---|---|
簽名類型 | 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...
`
關注做者微信公衆號,點擊下方討論羣
,掃碼便可加入微信支付討論羣
與小夥伴一塊兒探討哦~
到此本文就結束了,關注公衆號查看更多推送!!!