代码 微信支付 v3 与支付宝对账单下载接口:链接 5 分钟与 30 秒,账不平按四类归因

2026-09-08 09:03:12

微信支付 v3 与支付宝对账单下载接口:链接 5 分钟与 30 秒,账不平按四类归因

对账先对源:微信侧拉交易账单走 GET /v3/bill/tradebill,支付宝侧走 alipay.data.dataservice.bill.downloadurl.query 拿下载地址。两边接口的账单口径、生成时间和下载链接时效都不同,先把这些行为钉死,再处理对不平。

以下为商家自调用方式;支付宝下载地址查询接口明确不支持服务商代调用。

微信支付 v3:GET /v3/bill/tradebill

bill_date 格式 yyyy-MM-ddbill_type 取值 ALLSUCCESSREFUND,默认 ALLtar_type=GZIP

三种账单类型注意口径:

  • ALL:当日所有订单信息(不含充值退款订单)
  • SUCCESS:当日成功支付订单(不含充值退款订单)
  • REFUND:当日退款订单(不含充值退款订单)

只可下载近 3 个月内的账单。

返回参数:

  • hash_type:SHA1
  • hash_value:账单文件 SHA1 摘要,用于校验完整性
  • download_url:下载地址,5 分钟内有效

下载时直接 GET download_url 即可,响应请求头不含签名值,无需按 v3 接口方式验签;但建议下载后比对文件实际哈希与返回的 hash_value,确认下载内容完整。

生成时间上,微信次日 9 点开始生成前一天账单,建议次日 10 点后再获取,避免撞上 STATEMENT_CREATING 或拿到半成品。

错误码:

  • NO_STATEMENT_EXIST:指定日期无账单,说明该日无交易,无需重试
  • STATEMENT_CREATING:账单生成中;有交易时在 T+1 日上午 10 点后再下载
  • SYSTEM_ERROR:系统错误,等 1 分钟再重试
  • FREQUENCY_LIMITED:频率受限
  • SIGN_ERROR:签名错误

支付宝:alipay.data.dataservice.bill.downloadurl.query

调用入口走 gateway.do。业务参数 bill_typebill_date 必填,smid 可选。

bill_type 区分两类账单:

  • trade:商家基于支付宝交易收单的业务账单,对应账务中心的交易账单
  • signcustomer:基于商家支付宝余额收入及支出等资金变动的账务账单,对应资金账单

bill_date 按日或按月:

  • 日账单格式 yyyy-MM-dd,不支持当日,只能下载前一日 24 点前数据,即 T+1;当日数据一般次日 9 点前生成,特殊情况可能延迟,建议次日 9 点后下载
  • 月账单格式 yyyy-MM,次月 3 日生成

返回 bill_download_url,获取链接后 30 秒未下载即失效。下载下来的账单文件是 Excel,默认 GBK 编码,别用 UTF-8 直接解析。

这个接口是交易辅助接口,不用单独签约,但商家账号需已签约支付产品之一:当面付、App 支付、手机网站支付、电脑网站支付等。仅支持商家自调用,不支持服务商代调用。接口频次 QPS 为 3。

时间窗与对账口径

两侧下载时间落在同一天,但取数时间点不一样:

  • 微信:次日 9 点开始生成,建议 10 点后再下载
  • 支付宝:日账单一般次日 9 点前生成,建议 9 点后下载

编排定时任务时,不要把两边放在同一个整点触发,较早触发的平台可能仍处于生成中状态。

对账前先把金额单位归一,统一到元或分再比。退款订单注意微信 ALLSUCCESSREFUND 都不包含充值退款订单;支付宝侧想对资金流水就用 signcustomer,并对准交易账单和资金账单两套口径,不要拿交易账单去比资金变动。

账单对不平的归因清单

出现差异,按四类排查:

  1. 本地有流水,对账单没有
    先看是不是账单口径取错:微信 ALLSUCCESSREFUND 与支付宝 tradesigncustomer 不是一一对应关系;其次看充值退款是否落在账单覆盖范围之外;再看凌晨跨天的交易是否被归到相邻自然日。

  2. 对账单有,本地没有入账
    大概率是本地漏处理支付结果通知,这类走查单接口主动捞回,不要只依赖回调。

  3. 金额不一致
    优先检查分/元换算和数据库字段精度,再核对退款单与原交易单的金额正负号口径。

  4. 退款单没对上
    微信退款订单单独在 REFUND 账单里;支付宝日账单与交易要对应到退款原单,必要时用退款接口的返回单号和账单单号互相核。

错误码、生成时间在不同版本或商户类目下可能有更新,接入时以实际调用返回和官方文档为准。

复制全文 生成海报 支付 对账 微信支付 支付宝 接口对接 API

推荐文章

程序员茄子在线接单