目录

查询结算账单

  1. 获取结算账单API接口能力需要管理员到“华为支付商户平台>功能设置",开启“结算单接口开启开关”,开启后次日开始生成前一日的账单。

  2. 无论是否产生交易,每日自动生成账单。如果查询日期超限或未生成,则不返回文件下载信息。其他情况会返回。
  3. 账单下载后,建议遍历附件目录以获取csv后缀的文件进行解析。
  4. 解析表单内容时,需考虑表单更新,如新增列等场景。

功能介绍

提供给商户下载结算账单。

接口原型

承载协议

HTTPS GET

接口方向

开发者服务器-> 华为支付服务器

接口URL

https://petalpay-developer.cloud.huawei.com.cn/api/v1/bill/settle-bill/downloadInfo?billDate=xxxxxx

数据格式

请求消息:Content-Type: application/json

响应消息:Content-Type: application/json

请求参数

响应参数

错误码

(result_code非400000的错误码请看公共错误码说明)

错误码

result_code

result_desc

sub_code

sub_desc

solution

400000

业务处理失败

NOT_SETTLEMENT_DATE

非结算日,账单未生成

请选择结算日重试

400000

业务处理失败

BILL_SWITCH_NOT_TURN_ON

账单开关没有打开

请检查并打开账单开关

400000

业务处理失败

INVALID_ARGUMENTS

参数不合法

请检查请求参数

400000

业务处理失败

UNKNOWN_ERROR

服务暂不可用, 请稍后重试

请稍后重试

下载文件示例

RestTemplate restTemplate = new RestTemplate(new HttpComponentsClientHttpRequestFactory(HttpClients.createSystem()));
HttpHeaders headers = new HttpHeaders();
// billResponse为请求账单接口响应的对象
billResponse.getBillDownloadParam().getHeaders().forEach(headers::add);
HttpEntity<?> httpEntity = new HttpEntity<>(headers);
ResponseEntity<byte[]> responseEntity = restTemplate.exchange(billResponse.getBillDownloadParam().getDownloadUrl(), HttpMethod.GET, httpEntity, byte[].class, new Object[0]);
if (responseEntity.getStatusCode() == HttpStatus.OK) {
    // ./结算账单2022xxxxxx.zip 路径可自定义
    Files.write(Paths.get("./结算账单2022xxxxxx.zip"), responseEntity.getBody());
}

结算账单文件说明

字段名

是否必填

描述

示例值

结算单号

是

指商户号结算时,华为支付为该次结算分配的订单号。

71306c214b2d486199e3c19a6******X

结算日

是

依据该商户号结算周期,华为支付将交易款结算给该商户号结算账户的日期,格式为yyyyMMdd。

20220826

商户名称

是

发起该笔交易下单的华为支付商户主体名称。

测试******商户

商户号

是

发起该笔交易下单的华为支付商户号。

1015******89

交易创建时间

是

指该笔交易的创建时间,格式为yyyyMMdd。

20220825

交易完成时间

是

指该笔交易的支付成功时间,格式为yyyy-MM-dd HH:mm:ss。

2022-08-25 10:29:19

系统交易订单号

是

华为支付为该笔订单分配的订单号。

1220825102620000******857556

商户订单号

是

商户传入的该笔订单的商户订单号,对应下单接口里的mercOrderNo字段。

Imagazine_1661394******

交易类型

是

该笔订单类型,包括但不限于(后续可能新增):

  • 收单:通过华为支付收款的订单
  • 退款:给用户退款的订单
  • 分账:收款资金分账给合作方的订单
  • 分账回收入金:分账后从合作方分账回收的订单
  • 分账回收出金:分账后被合作方分账回收的订单
  • 冻结:争议交易冻结结算款的订单
  • 解冻:争议交易解冻结算款的订单
  • 商户收单:通过华为支付收款的订单
  • B2C转账:转账给用户支付账户的订单
  • 分账回收撤回出金:分账后从合作方分账回收撤回的订单
  • 分账回收撤回入金:分账后从合作方分账回收撤回的订单
  • 部分解冻:争议交易部分解冻结算款的订单
  • 营销补差:营销账户的营销支出
  • 营销补差回退:从营销账户回退的营销支出

收单

产品实例编号

否

指该笔订单使用的交易产品编号。

87178478298******0

产品名称

否

指该笔订单使用的交易产品名称。

借记卡快捷支付

银行名称

否

指该笔订单发生交易的银行。

工商银行

卡类型

否

指该笔订单发生交易的银行卡类型:

  • 借记卡
  • 贷记卡

借记卡

交易币种

是

指该笔订单的交易币种。

  • CNY(人民币,默认值)

CNY

结算金额(元)

是

指该笔订单的实际应结算金额,保留小数点后2位。

5

订单金额(元)

是

该笔订单的总金额,包括用户支付金额、优惠金额,保留到小数点后2位。

5

优惠金额(元)

否

指该笔订单在用户支付时的减免金额,保留到小数点后2位。

0

手续费金额(元)

是

该笔订单产生的交易手续费,保留小数点后2位。

0.03

手续费收取方式

是

指华为支付对当笔订单的手续费收取方式,一般以商户号维度配置。

支持方式:

  • 手续费轧差收取
  • 手续费后收
  • 手续费账户收取

手续费轧差收取

分账类型

是

指分账订单的分账方式:

  • 不分账
  • 分账
  • 分账回收
  • 协议分账
  • 分账回收撤回
  • 协议分账回收
  • 混合分账

不分账

合作方商户名称

否

指分账订单的发起方商户主体名称。

xyz

合作方商户号

是

指分账订单的发起方商户号。

1015******89

原系统交易订单号

否

退款或者分账原华为支付系统订单号。

124042317******0740873494880

原商户订单号

否

退款或者分账原商户订单号。

czl00120******554112

商户预留信息

否

预下单时的商户预留信息。

payload test

AppID

否

应用ID。

如果商户交易未配置AppID校验,则该字段信息为空。

5765880******8652727

用户标识

否

商户AppID生成的对应的openid。

如果商户交易未配置AppID校验,则该字段信息为空。

2248554******3012454

备注

否

订单备注。

-

备用

否

预留字段。

-

手续费收取方

否

指手续费收取所归属商户号。

1135******82

结算账单样例文件

结算单样例.zip