视频一区二区三区自拍_千金肉奴隷1985未删减版在线观看_国产成人黄色视频在线播放_少女免费播放片高清在线观看_国产精品v欧美精品v

申請(qǐng)二級(jí)商戶資金賬單API

最新更新時(shí)間:2020.08.10 版本說(shuō)明


微信支付按天提供微信支付賬戶的資金流水賬單文件,電商平臺(tái)可以通過(guò)該接口獲取二級(jí)商戶賬單文件的下載地址。文件內(nèi)包含電商平臺(tái)二級(jí)商戶資金操作相關(guān)的業(yè)務(wù)單號(hào)、收支金額、記賬時(shí)間等信息,供電商平臺(tái)進(jìn)行核對(duì)。

注意:

? 調(diào)用該接口前,電商平臺(tái)需提前開(kāi)通“下載二級(jí)商戶資金賬單”產(chǎn)品權(quán)限。

? 資金賬單中的數(shù)據(jù)反映的是電商平臺(tái)二級(jí)商戶微信支付賬戶資金變動(dòng)情況;

? 當(dāng)日賬單在次日上午9點(diǎn)開(kāi)始生成,建議商戶在上午10點(diǎn)以后獲取;

? 資金賬單中涉及金額的字段單位為“元”;

? 該接口只能下載三個(gè)月以內(nèi)的資金流水賬單。

接口說(shuō)明

適用對(duì)象:電商平臺(tái)

請(qǐng)求URL:https://api.mch.weixin.qq.com/v3/ecommerce/bill/fundflowbill

請(qǐng)求方式:GET

接口規(guī)則:http://www.tg885.com/wiki/doc/apiv3/wechatpay/wechatpay-1.shtml


path 指該參數(shù)為路徑參數(shù)

query 指該參數(shù)為URL參數(shù)

body 指該參數(shù)需在請(qǐng)求JSON傳參


請(qǐng)求參數(shù)

參數(shù)名 變量 類型[長(zhǎng)度限制] 必填 描述
賬單日期 bill_date string[1,10] query格式y(tǒng)yyy-MM-DD
示例值:2019-06-11
資金賬戶類型 account_type string[1,32] query 枚舉值:
ALL:所有賬戶
示例值:ALL
壓縮類型 tar_type string[1,32] query不填則以不壓縮的方式返回?cái)?shù)據(jù)流,枚舉值:
GZIP:GZIP格式壓縮
示例值:GZIP
加密算法 algorithm string[1,32] query 枚舉值:
AEAD_AES_256_GCM:AEAD_AES_256_GCM加密算法
示例值:AEAD_AES_256_GCM

請(qǐng)求示例


https://api.mch.weixin.qq.com/v3/ecommerce/bill/fundflowbill?bill_date=2019-06-11&account_type=BASIC&tar_type=GZIP&algorithm=AEAD_AES_256_GCM

{
JAVA示例代碼
}

返回參數(shù)

參數(shù)名 變量 類型[長(zhǎng)度限制] 必填 描述
下載信息總數(shù) download_bill_count int 下載信息總數(shù)
示例值:1
+下載信息明細(xì) download_bill_list array 下載信息明細(xì)
參數(shù)名 變量 類型[長(zhǎng)度限制] 必填 描述
賬單文件序號(hào) bill_sequence int 商戶將多個(gè)文件按賬單文件序號(hào)的順序合并為完整的資金賬單文件,起始值為1
示例值:1
哈希類型 hash_type string[1,32] 枚舉值:
SHA1:SHA1值
示例值:SHA1
哈希值 hash_value string[1,1024] 原始賬單(gzip需要解壓縮)的摘要值,用于校驗(yàn)文件的完整性
示例值:79bb0f45fc4c42234a918000b2668d689e2bde04
賬單下載地址 download_url string[1,2048] 供下一步請(qǐng)求賬單文件的下載地址,該地址5min內(nèi)有效。
示例值:https://api.mch.weixin.qq.com/v3/bill/downloadurl?token=xxx
加密密鑰 encrypt_key string[1,512] 加密賬單文件使用的加密密鑰。密鑰用商戶證書(shū)的公鑰進(jìn)行加密,然后進(jìn)行Base64編碼
示例值:YpkbxSne+mDwyXq//xYPmtr9eQ5LsH7zLMZSs+GSEcY4wjhlsfioS4n9X6q1ZBL0wM1v5qd7KhWuj0rFJ4N1FidP7Q8KDy25QDTt46wiKnsPKSCAXWRFNw1D2JmJBqZsc9y5g0DupONWKYB2GfRigRDEBVszj67uOIILPdxOKX1w3N4jvu0U9IFanJa7ldm70KVvYrMWVgQFDPbgjh1gVDbuTAjmPN88AobLdkiegnBUS2woDZW+PfhPo13kweOiR3h1gXIKRlnKnN3Jkkwpna/AFFijXrFphO3voSuiV0CfptfzTtcae4X3DYG3RSroKqmpa+5tuy2aU2VJUSIuFQ==
隨機(jī)字符串 nonce string[1,16] 加密賬單文件使用的隨機(jī)字符串
示例值:a8607ef79034c49c

返回示例


{
  "download_bill_count": 1,
  "download_bill_list": [
    {
      "bill_sequence": 1,
      "hash_type": "SHA1",
      "hash_value": "79bb0f45fc4c42234a918000b2668d689e2bde04",
      "download_url": "https://api.mch.weixin.qq.com/v3/bill/downloadurl?token=xxx",
      "encrypt_key": "YpkbxSne+mDwyXq//xYPmtr9eQ5LsH7zLMZSs+GSEcY4wjhlsfioS4n9X6q1ZBL0wM1v5qd7KhWuj0rFJ4N1FidP7Q8KDy25QDTt46wiKnsPKSCAXWRFNw1D2JmJBqZsc9y5g0DupONWKYB2GfRigRDEBVszj67uOIILPdxOKX1w3N4jvu0U9IFanJa7ldm70KVvYrMWVgQFDPbgjh1gVDbuTAjmPN88AobLdkiegnBUS2woDZW+PfhPo13kweOiR3h1gXIKRlnKnN3Jkkwpna/AFFijXrFphO3voSuiV0CfptfzTtcae4X3DYG3RSroKqmpa+5tuy2aU2VJUSIuFQ==",
      "nonce": "a8607ef79034c49c"
    }
  ]
}
                    

http://2323weixin.qq.com
                    

文件格式說(shuō)明

賬單文件包括明細(xì)數(shù)據(jù)和匯總數(shù)據(jù)兩部分,每一部分都包含一行表頭和若干行具體數(shù)據(jù)。 明細(xì)數(shù)據(jù)每一行對(duì)應(yīng)一筆資金操作,同時(shí)每一個(gè)數(shù)據(jù)前加入了字符`,以避免數(shù)據(jù)被Excel按科學(xué)計(jì)數(shù)法處理。如需匯總金額等數(shù)據(jù),可以批量替換掉該字符。

示例:《解密后的賬單示例


文件分割和合并

當(dāng)電商平臺(tái)的二級(jí)商戶資金賬單文件太大(未壓縮情況下約大于16GB)時(shí),微信支付會(huì)對(duì)賬單文件進(jìn)行分割,此時(shí)接口會(huì)返回多個(gè)下載地址。商戶分別根據(jù)下載地址下載賬單文件并解密。解密后,將多個(gè)文件按賬單文件序號(hào)(變量名:bill_sequence)的順序合并為完整的資金賬單文件。
商戶需要注意,當(dāng)返回多個(gè)下載地址時(shí),商戶依然需要在下載地址有效時(shí)間內(nèi)發(fā)起下載請(qǐng)求。因此建議商戶獲取到下載地址后,并發(fā)請(qǐng)求下載。

文件解密

解密流程

電商平臺(tái)二級(jí)商戶資金賬單文件采用商戶指定的加密算法(目前只支持AES-256-GCM算法)進(jìn)行加密,商戶需要進(jìn)行解密才能得到賬單明文。注意,使用GZIP格式獲取資金賬單后,先解密后解壓縮。解密流程是:
步驟一:下載賬單文件,得到賬單文件密文ciphertext;
步驟二:使用商戶證書(shū)私鑰解密從接口獲取的加密密鑰(變量名:encrypt_key)得到密鑰明文key;
步驟三:利用步驟一、二中得到的賬單密文ciphertext,密鑰key和接口返回的隨機(jī)字符串nonce解密賬單,得到賬單明文。

代碼示例

賬單文件解密代碼示例請(qǐng)參考[WechatPay-API-v3 證書(shū)和回調(diào)報(bào)文解密],注意:返回的賬單文件是二進(jìn)制密文,需以字節(jié)數(shù)組形式處理,不需要進(jìn)行Base64解碼。

下面對(duì)解密代碼中使用的參數(shù)進(jìn)行說(shuō)明:



 {
        // 密文
        "ciphertext": "下載得到的賬單文件密文",
        // 加密使用的密鑰
        "key": "用商戶證書(shū)私鑰解密加密密鑰得到的明文",
        // 加密使用的隨機(jī)字符串
        "nonce": "接口返回的隨機(jī)字符串", 
        // 附加數(shù)據(jù)包(填空)
        "associated_data": "" 
   } 
                    

http://2323weixin.qq.com
                    

下面對(duì)如何用商戶證書(shū)私鑰解密加密密鑰進(jìn)行說(shuō)明:
商戶從接口獲取的加密密鑰(變量名:encrypt_key)是使用商戶證書(shū)公鑰進(jìn)行RSA加密返回的密文,商戶解密后才能得到密鑰原文。
解密流程如下:對(duì)encrypt_key先做Base64解碼,然后對(duì)解碼結(jié)果使用商戶證書(shū)私鑰進(jìn)行RSA解密,指定填充方式為最優(yōu)非對(duì)稱加密填充(OAEP)。
下面我們使用命令行演示如何解密,更多的示例可以參考[WechatPay-API-v3 敏感信息加密]。 解密AES密鑰得到key:



 $ echo -n { encrypt_key }  | openssl enc -A -base64 -d | openssl rsautl -decrypt -oaep -inkey {商戶證書(shū)私鑰文件} 
                    

http://2323weixin.qq.com
                    

錯(cuò)誤碼公共錯(cuò)誤碼

狀態(tài)碼 錯(cuò)誤碼 描述 解決方案
500 SYSTEM_ERROR 系統(tǒng)錯(cuò)誤 系統(tǒng)異常,請(qǐng)使用相同參數(shù)稍后重新調(diào)用
403 NO_AUTH 權(quán)限異常 請(qǐng)檢查mchid是否為電商平臺(tái)
403 NO_AUTH 權(quán)限異常 請(qǐng)電商平臺(tái)在產(chǎn)品中心開(kāi)通下載二級(jí)商戶資金賬單產(chǎn)品權(quán)限
400 PARAM_ERROR 參數(shù)錯(cuò)誤 請(qǐng)使用正確的參數(shù)重新調(diào)用
400 INVALID_REQUEST 參數(shù)錯(cuò)誤 請(qǐng)檢查bill_date,僅支持下載3個(gè)月以內(nèi)的資金流水賬單
400 NO_STATEMENT_EXIST 請(qǐng)求的賬單文件不存在 請(qǐng)檢查電商平臺(tái)二級(jí)商戶在指定日期是否有資金操作
400 STATEMENT_CREATING 賬單生成中 請(qǐng)先檢查電商平臺(tái)二級(jí)商戶在指定日期內(nèi)是否有資金操作,若有,則在T+1日上午10點(diǎn)后再重新下載
429 FREQUENCY_LIMITED 請(qǐng)求過(guò)于頻繁 請(qǐng)降低調(diào)用頻率


版本說(shuō)明

關(guān)閉
V1.0
2020年08月10
申請(qǐng)二級(jí)商戶資金賬單接口上線

技術(shù)咨詢

文檔反饋