IC卡交易结果上送-服务商
大约 4 分钟
IC卡交易结果上送-服务商
IC卡交易结果上送
服务ID | zjrcuoip.pay.uas.terminal.notice |
---|---|
VERSION | 1.0.0 |
服务详细描述
终端收到响应的AC值后,上送TC值。若有写卡操作,则通知发卡方脚本处理结果。
注:参数中的必填要求:M为必填项,O为非必填项,C为条件选填项。
示例代码
UasTerminalDemoOp.java
/**
* 脚本处理结果通知-服务商
*
* @author
*/
@Service
public class UasTerminalDemoOp {
@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.pay.uas.terminal.notice");
// 设置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 | 商户识别号 | M | String | 32 | |
2 | txId | 商户订单号 | M | String | 32 | 当前交易的请求流水号,也是交易唯一标识,可包含数字、大小写字母、下划线,需保证在商户端不重复。 编号规则为系统编号(2位)+年月日(8位数字)+序号(最长22位)。 |
3 | orglTxId | 原商户订单号 | M(二选一) | String | 32 | orglTxId为原交易的商户订单号 |
4 | orglMsgId | 原交易流水号 | M(二选一) | String | 32 | orglMsgId为原交易由收单系统生成的流水号 |
5 | rtrvlRefNb | 检索参考号 | M | String | 12 | 对应银联卡交换规范的第37域,12位定长 |
6 | txTp | 交易类型 | M | String | 2 | 18-脚本处理结果通知 |
7 | txDtTm | 交易时间 | M | Datetime | 14 | 交易发起时间,格式yyyyMMddHHmmss |
8 | tunnel | 交易通道 | M | String | 10 | UNIONPAY-银联 |
9 | acctNo | 账号 | M | String | 32 | |
10 | cardSqncNb | 卡序列号 | C | String | 3 | IC卡序列号,IC卡必送。 对应银联卡交换规范的第23域,3位定长 |
11 | iccDt | IC卡数据域 | C | String | 510 | IC卡必送。 对应银联卡交换规范的第55域 |
12 | issScrRslt | 发卡行脚本结果 | C | String | 21 | 发卡方脚本结果df31字段存在必送 |
13 | etryMdCd | 服务点输入方式码 | M | String | 3 | 对应银联卡交换规范的第22域,3位定长 |
14 | cdtnCd | 服务点条件码 | M | String | 2 | 00-正常提交 |
15 | termId | 银联终端号 | M | String | 8 | 银联报备的终端号,对应银联卡交换规范的第41域 |
业务输出项
序号 | key | 中文名称 | 是否必输 | 类型 | 长度 | 说明 |
---|---|---|---|---|---|---|
1 | bizSts | 交易状态 | M | String | 4 | 指交易结果。02-交易成功,03-交易失败 |
2 | bizStsDesp | 交易状态描述 | M | String | 255 | 如:交易成功 |
3 | rjctRsnCd | 错误码 | O | String | 32 | |
4 | rjctRsn | 错误描述 | O | String | 255 |
以下字段在bizSts为02-交易成功时有返回:
序号 | key | 中文名称 | 是否必输 | 类型 | 长度 | 说明 |
---|---|---|---|---|---|---|
1 | txId | 商户订单号 | O | String | 32 | 请求的txId原样返回 |
2 | msgId | 交易流水号 | O | String | 32 | 收单交易系统生成的流水号 |