对账中心功能简介
支付宝 对账中心 记录了支付宝账号所有交易行为,包含了收单、转账、充值等多种类型的交易记录。其中与转账交易相关的对账功能主要有以下几个:
资金业务
资金业务主要用于即时的交易流水查询与确认,并且提供线上下载电子回单功能。
账务明细
账务明细主要用于即时的余额账号资金流水的查询与确认,并提供线上下载回单功能。
账单下载
账单下载功能主要用于余额户资金明细对账,日账单一般T+1日8点左右生成,月账单T+(3~4)日生成。
账单获取
商家平台获取账单
日汇总/月汇总交易明细:可选择 商家平台 > 对账中心
> 账单下载,下载日/月离线账单用于对账。鼠标悬停还可查看商家账号日/月历史余额信息。
接口获取账单
商家可调用 alipay.data.dataservice.bill.downloadurl.query(查询对账单下载地址接口)查询商家对账单下载地址,可通过地址下载离线账单用于对账。
注意:不支持服务商代理商家下载账单,只能付款方自己对接此接口或前往 商家平台 人工下载。
重要入参说明
参数 | 是否必填 | 描述 |
bill_type | 必选 | 账单类型,开发者可通过接口以获取以下业务/账务对应的日/月账单。
转账对账单下载固定传参 signcustomer。 |
bill_date | 必选 | 账单时间:
|
请求示例
CertAlipayRequest certAlipayRequest = new CertAlipayRequest(); certAlipayRequest.setServerUrl(gateway); certAlipayRequest.setAppId(app_id); certAlipayRequest.setPrivateKey(app_privateKey); certAlipayRequest.setFormat("json"); certAlipayRequest.setCharset(charset); certAlipayRequest.setSignType(sign_type); certAlipayRequest.setCertPath(app_cert_path); certAlipayRequest.setAlipayPublicCertPath(alipay_cert_path); certAlipayRequest.setRootCertPath(alipay_root_cert_path); DefaultAlipayClient alipayClient = new DefaultAlipayClient(certAlipayRequest); AlipayDataDataserviceBillDownloadurlQueryRequest request = new AlipayDataDataserviceBillDownloadurlQueryRequest(); request.setBizContent("{" + "\"bill_date\":\"2021-03-04\"," + "\"bill_type\":\"signcustomer\"" + " }"); AlipayDataDataserviceBillDownloadurlQueryResponse response = alipayClient.certificateExecute(request); if (response.isSuccess()) { System.out.println("调用成功"); } else { System.out.println("调用失败"); }
重要入参说明
- bill_type:账单类型,开发者可通过接口以获取以下业务/账务对应的日/月账单。
- trade:商家基于支付宝交易收单的业务账单。
- signcustomer:基于商家支付宝余额收入及支出等资金变动的帐务账单。示例详情见下方 账务账单文件示例。
- bill_date:账单时间:
- 日账单时间格式为 yyyy-MM-dd,最早可下载 2016 年 1 月 1 日开始的日账单。
- 月账单时间格式为 yyyy-MM,最早可下载 2016 年 1 月开始的月账单。
账务账单文件示例
账务账单汇总
账务账单明细
电子回单下载获取
电子回单是支付宝提供的用于证明收付款双方发生了相关资金交易行为的凭证文件。在转账场景中一般用于企业向收款人证明企业真实的转账行为。
商家平台获取电子回单
商家平台获取回单:可选择 商家平台 > 对账中心
> 资金业务,查看资金业务的转账业务信息。单笔转账电子回单下载
接口获取电子回单
注意:为保护收款人身份信息,防止不法分子通过回单信息非法获取个人支付宝账号信息,电子回单展示设置了脱敏规则,具体规则如下:
- 转账接口中 identity_type 传入 ALIPAY_LOGON_ID + name,则姓名、支付宝账号明文展示。
- 转账接口中 identity_type 为ALIPAY_USER_ID,则姓名、支付宝账号脱敏展示。
单笔转账电子回单申请
第一步:申请电子回单
开发者可调用 alipay.data.bill.ereceipt.apply(申请电子回单(incubating)接口)申请电子回单。
注意:电子回单最远可以申请到一年以内的业务单据。
请求示例
CertAlipayRequest certAlipayRequest = new CertAlipayRequest(); certAlipayRequest.setServerUrl(gateway); certAlipayRequest.setAppId(app_id); certAlipayRequest.setPrivateKey(app_privateKey); certAlipayRequest.setFormat("json"); certAlipayRequest.setCharset(charset); certAlipayRequest.setSignType(sign_type); certAlipayRequest.setCertPath(app_cert_path); certAlipayRequest.setAlipayPublicCertPath(alipay_cert_path); certAlipayRequest.setRootCertPath(alipay_root_cert_path); DefaultAlipayClient alipayClient = new DefaultAlipayClient(certAlipayRequest); AlipayDataBillEreceiptApplyRequest request = new AlipayDataBillEreceiptApplyRequest(); request.setBizContent("{" + "\"type\":\"FUND_DETAIL\"," + "\"key\":\"20210420110070001506070009986201\"" + " }"); AlipayDataBillEreceiptApplyResponse response = alipayClient.certificateExecute(request); if (response.isSuccess()) { System.out.println("调用成功"); } else { System.out.println("调用失败"); }
重要入参说明:
- type:必填,申请的类型。固定为
FUND_DETAIL
(资金业务回单)。 - key:必填,申请的类型为
FUND_DETAIL
时,传入 pay_fund_order_id(资金单号)可通过转账接口获取)。
同步响应示例
{ "alipay_data_bill_ereceipt_apply_response": { "code": "10000", "msg": "Success", "file_id": "12345" }, "sign": "ERITJKEIJKJHKKKKKKKHJEREEEEEEEEEEE" }
响应参数说明:
file_id:必填,必填,文件申请号 file_id 信息。使用 file_id 可以查询处理状态,file_id 申请成功后2天内有效。
第二步:查询电子回单状态
开发者申请电子回单后,需通过 alipay.data.bill.ereceipt.query(查询电子回单状态(incubating)接口)查询电子回单状态,当电子回单申请成功后(即 status 为 SUCCESS)将返回电子回单pdf下载地址。
接入说明
单个回单申请建议每 5 分钟查询一次状态。
请求示例
CertAlipayRequest certAlipayRequest = new CertAlipayRequest(); certAlipayRequest.setServerUrl(gateway); certAlipayRequest.setAppId(app_id); certAlipayRequest.setPrivateKey(app_privateKey); certAlipayRequest.setFormat("json"); certAlipayRequest.setCharset(charset); certAlipayRequest.setSignType(sign_type); certAlipayRequest.setCertPath(app_cert_path); certAlipayRequest.setAlipayPublicCertPath(alipay_cert_path); certAlipayRequest.setRootCertPath(alipay_root_cert_path); DefaultAlipayClient alipayClient = new DefaultAlipayClient(certAlipayRequest); AlipayDataBillEreceiptQueryRequest request = new AlipayDataBillEreceiptQueryRequest(); request.setBizContent("{" + "\"file_id\":\"12345\"" + " }"); AlipayDataBillEreceiptQueryResponse response = alipayClient.certificateExecute(request); if (response.isSuccess()) { System.out.println("调用成功"); } else { System.out.println("调用失败"); }
重要入参说明:
- file_id:必填,上文 第一步:申请电子回单 时获取的申请单 ID。
响应示例
{ "alipay_data_bill_ereceipt_query_response": { "code": "10000", "msg": "Success", "status": "SUCCESS", "download_url": "https://dwbillcenter.alipay.com/xxx", "error_message": "key不存在" }, "sign": "ERITJKEIJKJHKKKKKKKHJEREEEEEEEEEEE" }
响应参数说明:
- status:必填,申请单处理状态。枚举值如下:
- INIT:初始化。
- PROCESS:处理中。
- SUCCESS:成功。
- FAIL:失败。
- download_url:可选,下载链接,status 为 SUCCESS 时返回,有效时间为 20s。用户可以使用此 http 链接下载 pdf 文件内容。
- error_message:可选,如果生成失败,则会返回失败原因。
电子回单示例