获取对账单(服务商模式)
获取对账单(服务商模式)
获取对账单
服务ID | zjrcuoip.payment.uas.bill.downloadurl.query |
---|---|
VERSION | 1.0.0 |
服务详细描述
oss方式获取对账单下载地址。
注:对账单跑批生成时间位每日12:00左右,获取对账单应在每日12:05之后获取,且建议频率应控制在60S一次。
示例代码
UasGetOssBillDemoOp.java
/**
*
*
* @author
*/
@Service
public class UasGetOssBillDemoOp {
@SuppressWarnings({ "rawtypes", "unchecked" })
public static void execute() {
// 1.获取通讯连接对象
INetTools netTools = NetToolsHttpFactory.getHttpInstance();
// 2.生成公共请求报文对象
OipReqBean oipReqBean = new OipReqBean();
// 设置应用id
oipReqBean.setAppId("应用id");
// 设置开发者id
oipReqBean.setDlpId("开发者id");
// 设置产品id
oipReqBean.setProdId("产品id");
// 设置api方法名
oipReqBean.setMethod("zjrcuoip.payment.uas.bill.downloadurl.query");
// 设置api版本
oipReqBean.setVersion("1.0.0");
// 设置时间戳
SimpleDateFormat sfs = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
oipReqBean.setTimestamp(sfs.format(new Date()));
// 3.生成请求配置对象,配置请求地址/url等信息
NetReqConfBean netReqConfBean = new NetReqConfBean();
// 应用私钥
netReqConfBean.setAppPrivateKey("应用私钥");
// 请求地址
netReqConfBean.setNetUrl("请求地址");
// 开发者公钥
netReqConfBean.setPublicKey("开发者公钥");
// 设置业务报文
Date d=new Date();
SimpleDateFormat sf=new SimpleDateFormat("yyyyMMddHHmmss");
//以map接收所有参数生成业务报文,主要是必输项,具体参考接口文档
Map map =new HashMap();
map.put("输入项必输字段", "字段值");
String bizContent = JSON.toJSONString(map);
// 生成业务报文json对象
oipReqBean.setBizContent(bizContent);
// 通讯获取报文对象
OipRspBean oipRspBean = netTools.execute(oipReqBean, netReqConfBean);
// 响应成功
if (oipRspBean.isSuccess()) {
String bizJson = oipRspBean.getBizContent();
if (StringUtils.isNotBlank(bizJson)) {
Map bizData = JSON.parseObject(bizJson, Map.class);
System.out.println(bizData);
}
}
}
}
公共报文
业务输入项
序号 | key | 中文名称 | 是否必输 | 类型 | 长度 | 说明 |
---|---|---|---|---|---|---|
1 | mchSeq | 商户号识别号 | String | 32 | C | 商户直连模式下,必输 |
2 | isvSeq | 服务商识别号 | String | 32 | C | 服务商模式下,必输 |
3 | billDate | 对账单日期 | String | 8 | M | 下载对账单的日期,格式:yyyyMMdd |
4 | billType | 账单类型 | String | 8 | M | 默认送:ALL、STA(特约商户对账单类型)、FIN(特约商户结算单类型)、RVN(分账收入方结算单类型) |
5 | tarType | 压缩账单 | String | 4 | M | 固定值:GZIP,返回格式为.gz的压缩包账单 |
业务输出项
序号 | key | 中文名称 | 是否必输 | 类型 | 长度 | 说明 |
---|---|---|---|---|---|---|
1 | billDownloadUrl | 账单下载地址链接 | String | 2048 | M | 账单下载地址链接,获取连接后30秒后未下载,链接地址失效。 |
服务商模式下,系统日终出3个文件,分别为:
1.特约商户对账单,文件命名规范:商户识别号_statement.txt
2.特约商户结算单,文件命名规范:商户识别号_finStatement.txt
3.分账收入方结算单,文件命名规范:商户识别号_rvnStatement.txt
所有文件内容中各字段均以|分隔。
特约商户对账单包含交易类型为消费、退款且交易状态为成功的数据。
如2021年1月4日生成的文件夹名称为20210104,特约商户对账单中包含的是交易日期tradeDate为1月3日的交易数据,偶有1月1日或1月2日的数据补发。
具体字段如下:
序号 | 数据项名称 | 是否必输 | 类型 | 长度 | 说明 |
---|---|---|---|---|---|
1 | 服务商识别号 | M | String | 20 | 对应联机交易接口输入项中的isvSeq |
2 | 服务商名称 | M | String | 100 | |
3 | 商户识别号 | M | String | 32 | 对应联机交易接口输入项中的mchSeq |
4 | 特约商户编号 | M | String | 32 | |
5 | 特约商户名称 | M | String | 100 | |
6 | 特约商户简称 | M | String | 100 | |
7 | 商户APPID | O | String | 20 | 对应联机交易接口输入项中的mchAppId |
8 | 商户原始订单号 | O | String | 32 | 对应联机交易接口输入项中的mrchOrderNo |
9 | 商户订单号/退款单号 | M | String | 32 | 对应联机交易接口输入项中的txId |
10 | 收单系统交易流水号 | M | String | 32 | 对应联机交易接口输出项中的msgId |
11 | 支付流水号 | M | String | 32 | 对应联机交易接口输出项中的tradeNo |
12 | 银联流水号 | O | String | 64 | 对应联机交易接口输出项中的tnltxId |
13 | 交易类型 | M | String | 2 | 对应联机交易接口输入项中的txTp |
14 | 收单产品编号 | O | String | 20 | |
15 | 收单产品名称 | O | String | 100 | |
16 | 交易金额 | M | String | 15 | 对应联机交易接口输入项中的amt |
17 | 交易币种 | O | String | 3 | 对应联机交易接口输入项中的ccy |
18 | 交易通道 | M | String | 10 | 对应联机交易接口输出项中的tunnel |
19 | 交易日期 | M | Date | 8 | 对应联机交易接口输出项中的tradeDate |
20 | 交易完成时间 | M | Datetime | 8 | 对应联机交易接口输出项中的timeEnd |
21 | 交易状态 | M | String | 4 | 02-交易成功 |
22 | 附加数据 | O | String | 127 | 对应联机交易接口输入项中的attach |
23 | 应结金额 | M | String | 15 | 对应联机交易接口输出项中的settleAmt |
最后一行为汇总行,内容包含交易总笔数、消费笔数、退款笔数、消费交易金额、退款交易金额。
特约商户结算单包含成功结算给特约商户的交易明细。
如特约商户结算周期为D+0,2021年1月3日生成的结算单放在20210103下面,包含的是1月2日入账到特约商户结算账户的资金对应的交易明细。 如特约商户结算周期非D+0,2021年1月3日生成的结算单放在20210103下面,包含的是1月3日入账到特约商户结算账户的资金对应的交易明细。
具体字段如下:
序号 | 数据项名称 | 是否必输 | 类型 | 长度 | 说明 |
---|---|---|---|---|---|
1 | 服务商识别号 | M | String | 20 | 对应联机交易接口输入项中的isvSeq |
2 | 服务商名称 | M | String | 100 | |
3 | 商户识别号 | M | String | 32 | 对应联机交易接口输入项中的mchSeq |
4 | 特约商户编号 | M | String | 32 | |
5 | 特约商户名称 | M | String | 100 | |
6 | 特约商户简称 | M | String | 100 | |
7 | 商户APPID | O | String | 20 | 对应联机交易接口输入项中的mchAppId |
8 | 商户原始订单号 | O | String | 32 | 对应联机交易接口输入项中的mrchOrderNo |
9 | 商户订单号/退款单号 | M | String | 32 | 对应联机交易接口输入项中的txId |
10 | 收单系统交易流水号 | M | String | 32 | 对应联机交易接口输出项中的msgId |
11 | 支付流水号 | M | String | 32 | 对应联机交易接口输出项中的tradeNo |
12 | 银联流水号 | O | String | 64 | 对应联机交易接口输出项中的tnltxId |
13 | 交易类型 | M | String | 2 | 对应联机交易接口输入项中的txTp |
14 | 业务类型 | M | String | 4 | 对应联机交易接口输入项中的bizCgy |
15 | 业务种类 | M | String | 7 | 对应联机交易接口输入项中的purpPrtry |
16 | 收单产品编号 | O | String | 20 | 交易所属行内收单产品编号 |
17 | 收单产品名称 | O | String | 100 | 交易所属行内收单产品名称 |
18 | 交易金额 | M | String | 15 | 对应联机交易接口输入项中的amt |
19 | 交易币种 | O | String | 3 | 对应联机交易接口输入项中的ccy |
20 | 交易通道 | M | String | 10 | 对应联机交易接口输出项中的tunnel |
21 | 交易日期 | M | Date | 8 | 对应联机交易接口输出项中的tradeDate |
22 | 交易完成时间 | O | Datetime | 8 | 对应联机交易接口输出项中的timeEnd |
23 | 交易状态 | M | String | 4 | |
24 | 附加数据 | O | String | 127 | 对应联机交易接口输入项中的attach |
25 | 应结金额 | O | String | 15 | 对应联机交易接口输出项中的settleAmt |
26 | 结算金额 | M | String | 15 | 指实际出入账金额 |
27 | 结算币种 | O | String | 3 | |
28 | 结算日期 | M | Date | 8 | |
29 | 应收手续费 | O | String | 15 | 仅消费交易有值 |
30 | 实收/退手续费 | O | String | 15 | |
31 | 手续费币种 | O | String | 3 | |
32 | 商户补贴分期手续费金额 | O | String | 15 | |
33 | 商户补贴分期手续费币种 | O | String | 3 |
最后一行为汇总行,包括交易总笔数、消费笔数、退款笔数、消费交易金额、退款交易金额、消费结算金额、退款结算金额、消费实收手续费、退款实退手续费、结算总金额,手续费总金额。
分账收入方结算单包含成功结算给各分账收入方的交易明细。如果一笔交易涉及多个分账收入方,则文件中包含多条数据。
如2021年1月3日生成的文件夹名称为20210103,分账收入方结算单中包含的是1月3日入账到分账收入方结算账户的资金对应的交易明细。
具体字段如下:
序号 | 数据项名称 | 是否必输 | 类型 | 长度 | 说明 |
---|---|---|---|---|---|
1 | 服务商识别号 | M | String | 20 | 对应联机交易接口输入项中的isvSeq |
2 | 服务商名称 | M | String | 100 | |
3 | 分账收入方商户号 | M | String | 32 | |
4 | 分账收入方商户名称 | M | String | 100 | |
5 | 商户识别号 | M | String | 32 | 对应联机交易接口输入项中的mchSeq |
6 | 特约商户编号 | M | String | 32 | |
7 | 特约商户名称 | M | String | 100 | |
8 | 特约商户简称 | M | String | 100 | |
9 | 商户APPID | O | String | 20 | 对应联机交易接口输入项中的mchAppId |
10 | 商户原始订单号 | O | String | 32 | 对应联机交易接口输入项中的mrchOrderNo |
11 | 商户订单号/退款单号 | M | String | 32 | 对应联机交易接口输入项中的txId |
12 | 收单系统交易流水号 | M | String | 32 | 对应联机交易接口输出项中的msgId |
13 | 支付流水号 | M | String | 32 | 对应联机交易接口输出项中的tradeNo |
14 | 银联流水号 | O | String | 64 | 对应联机交易接口输出项中的tnltxId |
15 | 交易类型 | M | String | 2 | 对应联机交易接口输入项中的txTp |
16 | 收单产品编号 | O | String | 20 | 交易所属行内收单产品编号 |
17 | 收单产品名称 | O | String | 100 | 交易所属行内收单产品名称 |
18 | 交易金额 | M | String | 15 | 对应联机交易接口输入项中的amt |
19 | 交易币种 | O | String | 3 | 对应联机交易接口输入项中的ccy |
20 | 交易通道 | M | String | 10 | 对应联机交易接口输出项中的tunnel |
21 | 交易日期 | M | Date | 8 | 对应联机交易接口输出项中的tradeDate |
22 | 交易完成时间 | O | Datetime | 8 | 对应联机交易接口输出项中的timeEnd |
23 | 交易状态 | M | String | 4 | |
24 | 附加数据 | O | String | 127 | 对应联机交易接口输入项中的attach |
25 | 应结金额 | O | String | 15 | 对应联机交易接口输出项中的settleAmt |
26 | 结算金额 | M | String | 15 | 指实际出入账金额 |
27 | 结算币种 | O | String | 3 | |
28 | 结算日期 | M | Date | 8 | |
29 | 应收手续费 | O | String | 15 | 仅消费交易有值 |
30 | 实收/退手续费 | O | String | 15 | |
31 | 手续费币种 | O | String | 3 |
最后一行为汇总行,包括结算总金额。