银联POS规范总结 |
TPDU | 报文头 | 应用数据 | ||||||
ISO8583 Msg | ||||||||
ID | 目的 地址 | 源地址 | 应用类别定义 | 软件 总版本号 | 终端 状态 | 处理 要求 | 软件分版本号 | 交易数据 |
60H | NN NN | NN NN | N2 | N2 | N1 | N1 | N6 | 不定长度 |
应用类别定义:
60:磁条卡金融支付类
61:IC卡金融支付类
62:磁条卡增值业务类支付
63:IC卡增值业务类支付
处理要求:
0:无处理要求
1:下传终端磁条卡参数
2:上传终端磁条卡状态信息
3:重新签到
4:通知终端发起更新公钥信息操作
5:下载终端IC卡参数
6:TMS参数下载
7:卡BIN黑名单下载
8:币种汇率下载(仅在境外使用)/助弄取款手续费比率下载(仅在境内使用)
2.交易
查询
消费
消费冲正
消费撤销
消费撤销冲正
退货
预授权
预授权撤销
预授权撤销冲正
预授权完成(请求)
预授权完成(通知)
预授权完成(请求)冲正
预授权完成撤销
预授权完成撤销冲正
基于PBOC借/贷记标准IC卡脚本处理结果通知(含小额支付应用)
基于PBOC电子钱包/存折标准的IC卡指定账户圈存
基于PBOC电子钱包/存折标准的IC卡指定账户圈存冲正
基于PBOC电子钱包/存折标准的IC卡现金充值
基于PBOC电子钱包/存折标准的IC卡现金充值冲正
基于PBOC电子钱包/存折标准的IC卡非指定账户转账圈存
基于PBOC电子钱包/存折标准的IC卡非指定账户转账圈存冲正
基于PBOC借/贷记标准的IC卡电子现金指定账户圈存
基于PBOC借/贷记标准的IC卡电子现金指定账户圈存冲正
基于PBOC借/贷记标准的IC卡电子现金现金充值
基于PBOC借/贷记标准的IC卡电子现金现金充值冲正
基于PBOC借/贷记标准的IC卡电子现金非指定账户转账圈存
基于PBOC借/贷记标准的IC卡电子现金非指定账户转账圈存冲正
磁条卡现金充值账户验证
磁条卡现金充值
磁条卡现金充值确认
磁条卡账户充值(转账)
基于PBOC借/贷记标准的IC卡电子现金现金充值撤销
基于PBOC借/贷记标准的IC卡电子现金现金充值撤销冲正
3.离线类和脱机类
离线结算
结算调整
基于PBOC电子钱包/存折标准的IC卡离线交易
基于PBOC借/贷记标准的IC卡离线交易
4.管理类
签到
收银员积分签到
签退
批结算
批上送金融交易/批上送结束
批上送通知交易
基于PBOC借/贷记IC卡批上送通知交易
POS参数传递
回响测试
POS状态上送
IC卡公钥/参数/TMS参数/卡BIN黑名单下载结束
基于PBOC电子钱包/存折标准的IC卡圈存批上送通知
名称 | 中文标题 | 英文标题 | 要求 | 格式 | 来源 |
特约商户名称 | 商户名称 | MERCHANT NAME | 必须 |
| POS终端 |
特约商户编号 | 商户编号 | MERCHANT NO. | 必须 |
| 42域 |
终端机编号 | 终端机编号 | TERMINAL NAME | 必须 |
| 41域 |
收单行标识码 | 收单机构 | ACQ INSTITUTE | 必须 |
| 44域 |
发卡行标识码 | 发卡机构 | ISS . | 必须 |
| 44域 |
POS中心标识码 |
|
| 可选 |
| 32域 |
卡号 | 卡号 | CARD NO. | 必须 |
| 2域 |
卡片序列号 | 卡片序列号 | CARD SEQUENCE NUMBER | 可选(基于PBOC借/贷记应用的小额支付必选) |
| 23域 |
操作员号 | 操作员号 | OPERATOR NO. | 必须 |
| POS终端 |
交易类型 | 交易类型 | TRANS TYPE | 必须 | 消费(SALE) | 0域, 注 1 |
卡有效期 | 有效期 | EXP DATE | 可选 | YYYYMM | 14域 |
交易批次号 | 批次号 | BATCH NO. | 必须 |
| 60域 |
交易凭证号 | 凭证号 | VOUCHER NO. | 必选 |
| 11域 |
交易日期和时间 | 日期/时间 | DATE/TIME | 必选 | YYYY/MM/DD hh:mm:ss | 12,13域 |
授权码 | 授权码 | AUTH NO. | 可选 |
| 38域 |
参考号 | 参考号 | REFER NO. | 必选 |
| 37域 |
交易金额 | 金额 | AMOUNT | 必选 | ¥1234.56或RMB1234.56 | 4域-48域 |
小费金额 | 小费 | TIP | 可选 | ¥1234.56或RMB1234.56 | 48域 |
累计金额 | 累计 |
|
| ¥1234.56或RMB1234.56 | 54域 |
总金额 | 总计 | TOTAL | 可选 | ¥1234.56或RMB1234.56 | 4域 |
国际信用卡公司代码 | 卡组织 |
| 外卡必选 | MCC(万事顺) | 63域 |
不可预知数 | 不可预知数 | Unpredictable Number | 可选(基于PBOC借/贷记应用的小额支付脱机消费交易必选) |
| 55域 Tag9F37 |
应用交互特征(AIP) | 应用交互特征 | Application Interchange Profile | 可选(基于PBOC借/贷记应用的小额支付脱机消费交易必选) |
| 55域 Tag9F82 |
备注 | 备注 | REFERENCE | 可选 |
| 注 2 |
持卡人签名栏 | 持卡人签名栏 | CARDHOLDER SIGNATURE | 必选 |
| 注 3 |
IC卡交易证书 | IC卡交易证书 | TXN CERT. | 可选(EMV/PBOC标准借/贷记应用必选,基于PBOC借/贷记应用的小额支付脱机消费交易必选) |
| EMV/PBOC借/贷记卡 |
终端验证结果(TVR) | 终端验证结果 | TVR | 可选(EMV/PBOC标准借/贷记应用、基于PBOC借/贷记应用的小额支付脱机消费交易必选) |
| EMV/PBOC借/贷记卡 |
交易状态信息(TSI) | 交易状态信息 | TSI | (EMV/PBOC标准借/贷记应用、基于PBOC借/贷记应用的小额支付脱机消费交易必选) |
| EMV/PBOC借/贷记卡 |
应用标识(AID) | 应用标识 | AID | 可选(EMV/PBOC标准借/贷记应用、指定账户圈存交易必选) |
| EMV/PBOC借/贷记卡 |
应用交易计数器(ATC) | 应用交易计数器 | ATC | 可选(EMV/PBOC标准借/贷记应用、基于PBOC借/贷记应用的小额支付、IC卡指定帐户圈存、非指定帐户圈存、现金充值必选) |
| EMV/PBOC借/贷记卡 |
发卡行应用数据 | 发卡应用数据 | IAD | 可选(基于PBOC借/贷记应用的小额支付脱机消费交易必选) |
| PBOC借贷记卡 |
应用标签 | 应用标签 | Appl Label | 可选(EMV/PBOC标准借/贷记应用必选) |
| EMV/PBOC借/贷记卡 |
应用首选名称 | 应用标签 | Appl Name | 可选(EMV/PBOC标准借/贷记应用必选) |
| EMV/PBOC借/贷记卡 |
交易验证码(TAC) | 交易验证码 | TAC | 可选(基于PBOC电子钱包标准的IC卡必选) |
| 基于PBOC电子钱包标准的IC卡交易 |
充值后卡片余额 | 充值后卡片余额 | ECA | 可选(基于PBOC借/贷记应用的小额支付IC卡指定帐户圈存、非指定帐户圈存、现金充值必选) |
| 基于PBOC借/贷记应用的小额支付IC卡交易 |
授权请求密文(ARQC) | 授权请求密文 | ARQC | 可选(快速PBOC借/贷记应用的联机交易必选) |
| 快速PBOC借/贷记应用联机交易 |
扣持卡人金额 | 扣持卡人金额 |
| 可选(折扣消费交易必选) |
| 折扣消费交易 |
分期付款期数 | 分期付款期数 | Installment Period | 可选(分期付款消费交易必选) | n2 | 分期付款消费交易请求 |
分期付款持卡人首期金额 | 分期付款首期金额 | Initial Installment Payment | 可选(分期付款消费交易必选) | n12 | 分期付款消费交易应答 |
分期付款持卡人还款币种 | 分期付款还款币种 |
| 可选(分期付款消费交易必选) | N3 | 分期付款消费交易应答 |
分期付款持卡人手续费 | 持卡人手续费 | Installment Charge | 可选(分期付款消费交易必选) | n12 | 分期付款消费交易应答 |
商品代码 | 商品代码 |
| 可选(积分消费交易中,发卡行与商户约定的情况下可选) | ans30 | 积分消费交易请求 |
兑换积分 | 兑换积分数 | Exchange Points | 可选(积分消费交易必选) | n10 | 积分消费交易应答 |
积分余额 | 积分余额数 | Points Banlance | 可选(积分消费交易必选) | n10 | 积分消费交易应答 |
自付金额 | 自付金额 | Outstanding Amount | 可选(积分消费交易必选) | n12 | 积分消费交易应答 |
注 1:交易类型 说明:根据8583 中MESSAGE TYPE 和PROCESSING CODE 唯一确认交易类型, 如果终端可以打印中英文,应选择如下内容: 消费(SALE)、消费撤销(VOID)、退货(REFUND)、预授权(AUTH)、预授权撤销(CANCEL)、预授权完成(通知)(AUTH SETTLEMENT)、预授权完成(请求)(AUTH COMPLETE)、预授权完成撤销(COMPLETE VOID)、电子钱包消费(EP SALE)、分期付款消费(INSTALLMENT)、分期付款消费撤销(VOID)、积分消费(BONUS)、积分消费撤销(VOID)、离线结算(OFFLINE)、结算调整(ADJUST)、电子现金消费(EC SALE)、电子现金退货(EC REFUND)、预约消费(RESERVATION SALE)、预约消费撤销(VOID)、订购消费(MOTO SALE)、订购消费撤销(VOID)、订购退货(REFUND)、电子现金指定账户圈存(EC LOAD)、电子现金非指定账户圈存(EC LOAD)、电子现金现金充值(EC LOAD)、电子现金充值撤销(EC LOAD VOID)、磁条卡现金充值(ACCOUNT LOAD)、磁条卡账户充值(ACCOUNT LOAD)。 如果终端只能打印英文,可以选择上述内容中英文。 对于刷卡的交易,应在交易类型之后打印“(S)”;对于芯片卡接触式插入交易,应在交易类型之后打印“(I)”;对于芯片卡非接触式挥卡交易,应在交易类型之后打印“(C)”;对于手输卡号交易,应在交易类型之后打印“(M)”;对于无卡交易,应在交易类型之后打印“(N)”。
注 2: 备注栏 用于打印一些参考信息,这些信息是否需要打印一般与交易类型相关。可能出现的备注信息有: 1、 原交易凭证信息:撤销交易,打印原交易凭证号;退货交易,打印原交易参考号和原交易日期。 2、 预授权码:预授权撤销、预授权完成(请求)、预授权完成(请求)撤销时输入的原预授权码。 3、 重打印标志:重打印功能印出的凭证,必须在备注栏打印该标志。 4、 收单方需要持卡人了解的信息(域63.2.3)。 5、 PBOC标准借/贷记IC卡消费和预授权交易,应打印应用标识(AID)、IC卡交易证书(TC)。 6、 快速PBOC借/贷记联机应用,应打印应用标识(AID)、IC卡交易证书(TC)、打印授权请求密文(ARQC)。 7、 基于PBOC借/贷记应用的小额支付,应打印卡片序列号、应用标识(AID)、IC卡交易证书(TC)、终端验证结果(TVR)、交易状态信息(TSI)、应用交易计数器(ATC)、不可预知数、应用交互特征(AIP)、卡片余额和发卡行应用数据(包括卡片验证结果(CVR))。 8、 基于PBOC借/贷记应用的小额支付指定帐户圈存、非指定帐户圈存、现金充值交易,应打印应用标识(AID)、充值后卡片余额、应用交易计数器(ATC),其中非指定账户圈存需要打印转出卡卡号(应隐去转出(磁条)卡卡号校验位前4位数字)。 9、 对于PBOC电子钱包的IC卡消费交易,还应打印发卡方标识、IC卡脱机交易序号(CTC)、密钥版本号、密钥索引号、PSAM卡的终端机编号、PSAM卡的终端交易序号(TTC)和TAC. 10、 对于PBOC电子钱包的IC卡圈存交易,还应打印发卡方标识、IC卡联机交易序号(CTC)、密钥版本号、密钥索引号和TAC。 11、 对于折扣消费还应打印实扣持卡人金额。 12、 对于部分扣款应在交易金额处打印承兑金额。 13、 对于分期付款消费交易和分期付款消费撤销交易,还应打印分期付款期数、分期付款首期金额、分期付款还款币种(156为人民币)和持卡人手续费。当为一次性支付手续费时,不用打印个性化信息中的“首期手续费”和“每期手续费”;当为分期支付手续费时,不用打印“持卡人手续费”。 14、 对于积分消费交易,还应打印商品代码、兑换积分数、积分余额(以应答报文的54域为准)和自付金金额;对于积分消费撤销交易,还应打印兑换积分数和自付金金额。 15、 对于磁条预付费卡的消费、消费撤销、预授权、预授权撤销、预授权完成、预授权完成撤销交易和联盟积分卡的消费、消费撤销交易,需打印可用余额(域54) 16、 对于小额支付脱机消费,签购单打印张数可设为1张。 17、 备注栏的打印要确保汉字不断行,如果出现只剩下一个字节的空间,移到下一行开始打印。 18、 对于预约消费交易,根据请求报文信息打印手机号码(手机号码屏蔽,除前三位和后三位以外全部显示星号) 其中: 1、 原交易凭证号:“原凭证号/VOUCHER:”+原交易凭证号(6位数字) 2、 预授权码:“预授权码/AUTH NO:”+预授权码(数字或字母) 3、 重打印标志:“重打印凭证/DUPLICATED” 4、 发卡行回传信息:原样打印。 5、 POS中心回传信息:原样打印。 6、 收单方回传信息:原样打印。 注:以上存在多个组合的情况下,分多行打印。 样例: 预授权码/AUTH NO:453521 重打印凭证/DUPLICATED
注 3:持卡人签名栏 说明:在持卡人签名栏的适当位置,一般有以下说明: “本人确认以上交易,同意将其记入本卡账户/ I ACKNOWLEDGE SATISFATORY RECEIPT OF RELATIVE GOODS/SERVICES”。 在签名档的最后一行,允许打印一行(8个汉字或16个英文字符)与交易无关的信息,套打可以不支持。 | |||||
|
字母 | 交易类型 |
S | 消费 |
T | 分期付款消费 |
B | 积分消费电子钱包/存折 |
E | 电子现金(钱包)消费 |
R | 退货 |
P | 预授权完成(请求) |
C | 预授权完成(通知) |
L | 离线结算 |
Q | 圈存类、充值类交易 |
1.双工连接
建立连接过程:
建立连接时序:
2.每个端口只对应一个客户端
3.监控报文的格式
报文长度位(2Byte) | TPDU(5Byte) | LRI首标志位(5Byte) | ANI主叫号码(8Byte 右BCD) | DNIS被叫号码(8Byte右BCD) | LRI尾标志位(12Byte) | 报文头+报文数据 |
1.MAC的算法
MTI到63域的信息构成MAB,将MAB按每8个字节做异或,最后如果不满8位则添加0X00.
比如:MAB= M1 M2 M3 M4
M1=MS11 MS12 MS13 MS14 MS15 MS16 MS17 MS18
M2=MS21 MS22 MS23 MS24 MS25 MS26 MS27 MS28
M3=MS31 MS32 MS33 MS34 MS35 MS36 MS37 MS38
M4=MS41 MS42 MS43 MS44 MS45 MS46 MS47 MS48
然后,M1与M2异或,得到TM1,再与M3异或,得到TM2,再与M4异或,得到TM3。
将TM3扩展成16个字节,得到TM3=TM31 TM32
将TM31用MAK加密得到EN1,将EN1与TM32异或,得到TE1
将TE1用MAK加密得到EN2,将EN2扩展成16个字节,得到EN2=EN21 EN22
则MAC=EN21
2.磁道信息加密算法
对于磁道数据,从结束符向左第二个字节开始,再向左取8个字节,作为参与加密的TDB。
比如:
二磁道数据(37):1234567890123456789=0508201781999168302
表示为:0x12 0x34 0x56 0x78 0x90 0x12 0x34 0x56 0x78 0x9D 0x05 0x08 0x20 0x17 0x81 0x99 0x91 0x68 0x30 0x20
则TDB2表示为:0x08 0x20 0x17 0x81 0x99 0x91 0x68 0x30
采用TDK对TDB2进行TDES加密,加密后的磁道信息为:
ENC BLOCK1 = eTDK(0x08 0x20 0x17 0x81 0x99 0x91 0x68 0x30)
3.PIN的加解密
PIN的长度为6位,可扩展到12位。
加密算法示例:
例如:明文PIN为: 123456,
假设: 磁卡上的PAN:1234 5678 9012 3456 78
截取下的PAN:6789 0123 4567
则用于PIN加密的PAN为:0x00 0x00 0x67 0x89 0x01 0x23 0x45 0x67
PIN BLOCK为:0x06 0x12 0x34 0x56 0xFF 0xFF 0xFF 0xFF
异或:0x00 0x00 0x67 0x89 0x01 0x23 0x45 0x67
结果为:0x06 0x12 0x53 0xDF 0xFE 0xDC 0xBA 0x98
解密算法,步骤倒置即可。
参数大类 | 参数名称 | 参数格式、取值 | 备注 |
终端参数 | 商户编号 | N15 |
|
终端编号 | AN8 |
| |
安全密码 | N6 | 控制商户编号与终端编号修改的权限 | |
商户名称 | Ans40 |
| |
当前年份 | N4,YYNN | 下拉框实现 | |
流水号 | N6 |
| |
批次号 | N6 |
| |
最大退货金额 |
|
| |
结算打印明细设置 | 是/否 | 缺省为否 | |
英文设置 | 是/否 | 热敏时出现,缺省为是 | |
签购单设置 | 新/旧 | 针打时出现,缺省为新 | |
默认交易设置 | 消费/预授权 | 默认消费 | |
消费撤销是否刷卡 | 是/否 | 默认否 | |
消费撤销是否输密 | 是/否 | 默认否 | |
预授权完成撤销是否刷卡 | 是/否 | 默认否 | |
预授权完成撤销是否输密 | 是/否 | 默认是 | |
预授权撤销是否输密 | 是/否 | 默认是 | |
预授权完成(请求)是否输密 | 是/否 | 默认是 | |
通讯参数 | 拨号、串口、GPRS、CDMA、以太网 | 可选 |
|
通讯参数-共有参数 | TPDU |
| 默认60 |
是否预拨号 | 是/否 | 默认是 | |
交易超时时间 |
| 默认60S | |
交易重拔次数 |
| 默认3次 | |
通讯参数-拨号 | 外线号码 |
|
|
中心交易号码1 |
|
| |
中心交易号码2 |
|
| |
中心交易号码3 |
|
| |
通讯参数-GPRS | 接入号码 |
|
|
APN1名称 |
|
| |
主机1 IP地址 |
|
| |
主机1 端口 |
|
| |
主机2 IP地址 |
|
| |
主机2 端口 |
|
| |
用户名设置 | 是/否 | 默认为否 | |
| 用户名 |
|
|
密码 |
|
| |
通讯参数-CDMA | 接入号码 |
|
|
主机1 IP地址 |
|
| |
主机1 端口 |
|
| |
主机2 IP地址 |
|
| |
主机2 端口 |
|
| |
用户名 |
|
| |
密码 |
|
| |
通讯参数-以太网 | 本机IP地址 |
|
|
子网掩码 |
|
| |
网关 |
|
| |
主机1 IP地址 |
|
| |
主机1 端口 |
|
| |
主机2 IP地址 |
|
| |
主机2 端口 |
|
| |
交易功能设置 | 屏蔽设置 |
| 面对所有支持的交易 |
交易功能设置-屏蔽支持设置 | 消费撤销 | 是/否 | 默认是 |
查询 | 是/否 | 默认是 | |
预授权 | 是/否 | 默认是 | |
离线结算 | 是/否 | 默认是 | |
结算调整 | 是/否 | 默认是 | |
退货 | 是/否 | 默认是 | |
预授权撤销 | 是/否 | 默认是 | |
预授权完成请求 | 是/否 | 默认是 | |
预授权完成撤销 | 是/否 | 默认是 | |
圈存类 | 是/否 | 默认是 | |
预授权完成通知 | 是/否 | 默认是 | |
电子现金消费 | 是/否 | 默认是 | |
电子钱包消费 | 是/否 | 默认是 | |
分期付款消费 | 是/否 | 默认是 | |
积分消费 | 是/否 | 默认是 | |
手机芯片消费 | 是/否 | 默认是,UpCard应用 | |
预约消费 | 是/否 | 默认是 | |
订购消费 | 是/否 | 默认是 | |
订购授权类 | 是/否 | 默认是 | |
磁条卡现金充值 | 是/否 | 默认是 | |
磁条卡账户充值 | 是/否 | 默认是 | |
电子现金退货 | 是/否 | 默认是 | |
交易功能设置-签退设置 | 结算后自动签退 | 是/否 | 默认是 |
交易功能设置-小费比例 | 可设置 | 数值 |
|
交易功能设置-消息重发次数 | 重发次数 | N1 | 默认3 |
交易功能设置-打印张数 | 打印张数 | N1 | 默认为2 |
交易功能设置-最大交易笔数 | 最大交易笔数 | N3 | 默认为500 |
其他功能 | 终端密钥索引 | N2 | (00,99) |
修改管理员密码 |
|
| |
修改安全密码 |
|
| |
清除交易流水 | 是/否 | 默认为是 | |
参数打印 |
|
| |
快捷键设置 |
| 弹出二级界面 显示可以通过快捷键配置的交易类型 |
学习了整篇规范,很多知识要点需要掌握,主要分为九点,也就是前九章的内容。对于应用开发的人员来说,最需要关注的就是消息域和报文格式以及配置参数,当然,还要熟悉交易的流程以及功能,知道整个交易采用的通信方式以及安全加密策略。因此,不断地熟读规范,是很有必要的。
|
来自: 精髓_感知力 > 《1507WTs概念概念》