下载账单
更新时间:2024.12.27下载账单API为通用接口,交易/资金账单都可以通过该接口获取到对应的账单。
注意
- 账单文件的下载地址的有效时间为30s。
- 强烈建议商户将实际账单文件的哈希值和之前从接口获取到的哈希值进行比对,以确认数据的完整性。
# 接口说明
支持商户: 【普通服务商】
请求方式: 【GET】
请求URL: 调用申请账单接口,返回参数“download_url”对应的URL
前置条件: 调用申请账单接口并获取到“download_url”
# 请求参数
当获取到账单文件资源的下载地址信息后,如:
1{2 "hash_type": "SHA1",3 "hash_value": "79bb0f45fc4c42234a918000b2668d689e2bde04",4 "download_url": " https://api.mch.weixin.qq.com/v3/billdownload/file?token=xxx"5}
可以通过微信支付API v3标准对download_url进行签名,并发起请求,即可下载到账单文件的数据流。
请求示例
1$ curl https://api.mch.weixin.qq.com/v3/billdownload/file?token=xxx -H '2Authorization: WECHATPAY2-SHA256-RSA2048 mchid="1900009191",3nonce_str="593BEC0C930BF1AFEB40B4A08C8FB242",4signature="uOVRnA4qG/MNnYzdQxJanN+zU+lTgIcnU9BxGw5dKjK+VdEUz2FeIoC+D5sB/LN+nGzX3hfZg6r55wT1pl2ZobmIc6p0ldN7J6yDgUzbX8Uk3sD4a4eZVPTBvqNDoUqcYMlZ9uuDdCvNv4TM3c1WzsXUrExwVkI61XO5jCNbgDJ25nkT/c1gIFvqoogl7MdSFGc4W4xZsqCItnqbypR3RuGIlR9h9vlRsy7zJR9PBI83X8al7LDIfR1ukt1P7tMnmogZ0cuDY8cZsd8ZlCgLadmvej58SLsIkVxFJ8XyUgx9FmutKSYTmYtWBZ0+tNvfGmbXU7cob8H/84nLBiCwIUFluw==",timestamp="1554208460",serial_no="1DDE55AD98ED71D6EDD4A4A16996DE7B47773A8C"'
# 返回信息
# 文件格式说明
账单文件包括明细数据和汇总数据两部分,每一部分都包含一行表头和若干行具体数据。 明细数据每一行对应所下载账单的一条具体数据,同时明细数据中每一个字段前都加入了`字符(重音符,为标准键盘1左边键的字符),以避免数据被Excel按科学计数法处理。如需汇总金额等数据,可以批量替换掉该字符。 不同类型的账单文件的明细数据和汇总数据的格式是不同的,具体示例如下:
# 账单样例
《ALL.xlsx》 (opens new window) 《REFUND.xlsx》 (opens new window) 《SUCCESS.xlsx》 (opens new window)
# 资金流水账单
《资金账单.xlsx》 (opens new window)
# 错误码
# 公共错误码
状态码 | 错误码 | 描述 | 解决方案 |
---|---|---|---|
400 | PARAM_ERROR | 参数错误 | 请根据错误提示正确传入参数 |
400 | INVALID_REQUEST | HTTP 请求不符合微信支付 APIv3 接口规则 | 请参阅 接口规则 |
401 | SIGN_ERROR | 验证不通过 | 请参阅 签名常见问题 |
500 | SYSTEM_ERROR | 系统异常,请稍后重试 | 请稍后重试 |
# 业务错误码
状态码 | 错误码 | 描述 | 解决方案 |
---|---|---|---|
400 | INVALID_REQUEST | 参数错误 | 请检查bill_date,并重新调用 |
400 | 参数错误 | 请检查sub_mchid,并重新调用 | |
403 | NO_AUTH | 权限异常(无该特约商户账单的权限) | 请使用正确的sub_mchid再重新调用 |
403 | NO_AUTH | 权限异常,小微商户不单独提供对账单下载 | 可以不传sub_mch_id,以获取服务商下全量特约商户(包括小微商户和非小微商户)的对账单 |
400 | NO_STATEMENT_EXIST | 账单文件不存在 | 请检查当前商户号是否在指定日期有交易或退款发生 |
400 | STATEMENT_CREATING | 账单生成中 | 请先检查当前商户号在指定日期内是否有成功的交易或退款,若有,则在T+1日上午8点后再重新下载 |
400 | NO_STATEMENT_EXIST | 账单文件不存在 | 请检查当前商户号请求的微信支付账户在指定日期是否有资金操作 |
400 | STATEMENT_CREATING | 账单生成中 | 请先检查当前商户号的微信支付账户在指定日期内是否有资金操作,若有,则在T+1日上午10点后再重新下载 |
400 | INVALID_REQUEST | 参数错误 | 请按第一步申请账单的API指引,重新获取账单地址后再请求 |
403 | NO_AUTH | 权限异常 | 请检查本次请求的商户是否与第一步申请账单API的请求商户一致 |
文档是否有帮助