银联公共支付平台项目

更新时间:2024-01-14 22:17:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

二 公共支付平台

1.公共支付平台简称PPP,即Public Payment Platform,银联

用于接收、处理和转发公共支付交易的系统,一端通过CUPS连接成员银行,一端为SP、渠道、终端等提供接入途径。 2.公共支付平台的结构如下:

泛伟通平台 银联公共支付平 台 CUPS 成员机 构

(1) 中间业务平台发送各类报文(签到,余额查询,,消费,消费撤销,冲正等)到公共支付平台。

(2) 公共支付平台对报文进行相应的记录和处理,根据业务逻辑生成应答报文到工行或者生成转发报文到cups。 (3) Cups处理后生成应答公共支付平台或者转发给成员机构处理。

三 项目用到的报文结构

1. 报文结构说明

交易报文包含两个组成部分:报文长度和应用数据。其结构如下图所示:

报文长度 N4 应用数据(ISO8583) 交易数据(不定长度)

报文长度占4个字节,是以ASCII码表示的十进制数,右靠左补‘0’。 应用数据各个域结构和标准的2.0报文一致(该报文除了没有报文头外,其他格式和2.0报文结构一致)。

2. 域结构

各个域结构请参考附件《2.0域结构描述》。

3. 接口报文说明

网络报文主要涉及到签到报文;

扣费报文主要是余额查询报文和扣费报文、扣费撤销,冲正; 各个报文格式如下:

(1)签到

位 - - 11 12 13 33 39 41 48 请求 0820 n4 报文类型 b128 位元表 M n6 系统跟踪号 M n6(hhmmss) 本地交易时间 M 本地交易日期 n4(MMDD) M 发送机构标识码 n..11(LLVAR) M 响应码 An2 受卡机终端标识码 ans8 M ans…512(LL 签到交换数据 LVAR) M 网络管理信息码 n3 数据元 类型 响应 0830 M M M M M M M C M 备注 当39域为“00”时必选 “001”或“161”; 001:仅在天津实现; 161:以后新做的用此值;与商户签到保持一致; 70 48域说明:

ID 1 2 3 4 数据元名称 长度 加密的PIN密钥 PIN密钥的验证码 加密的MAC密钥 MAC密钥的验证码 类型 an3 an16/32 an8 an16 an8 说明 “048/064” 8/16字节的PIK 4字节的PIN CHECK VALUE 8字节的MAK 4字节的MAC CHECK VALUE

注:对于单倍长的密钥,前12个字节为PIN的工作密钥的密文,后12个字节为MAC的工作密钥的密文(其中,前8个字节是密文,后4个字节使checkvalue;前8个字节解出明文后,对8个数值0做des,取结果的前四位与checkvalue 的值比较应该是一致的)。

对于双倍长密钥算法,前20个字节为PIN的工作密钥的密文,后12个字节为MAC的工作密钥的密文(其中,“PIN工作密钥”前16个字节是密文,后4个字节是checkvalue;前16个字节解出明文后,对8个数值0做双倍长密钥算法,取结果的前四位与checkvalue 的值比较应该是一致的;“MAC工作密钥”前8个字节是密文,再8个字节是二进制零,后4个字节是checkvalue;前8个字节解出明文后,对8个数值0做单倍长密钥算法,取结果的前四位与checkvalue 的值比较应该是一致的)。

(3)银行卡余额查询

位 - - 2 3 7 11 12 13 14 15 22 25 26 32 33 35 36 37 39 41 42 43 49 52 53 54 60.1 60.2 100 128 数据元 报文类型 位元表 主账号 处理码 传输日期和时间 系统跟踪号 本地交易时间 本地交易日期 卡片有效日期 清算日期 服务点输入方式码 服务点条件码 服务点PIN 采集代码 受理机构标识码 发送机构标识码 第二磁道数据 第三磁道数据 检索参考号 响应码 受卡机终端标识码 受卡方标识码 受卡方名称地址 交易货币代码 个人密码 安全控制信息 附加金额 交易类型码 批次号 接收机构标识码 MAC 类型 n4 b128 n..19(LLVAR) n6 n10(MMDDhhmmss) n6 n6(hhmmss) n4(MMDD) n4 n4 n3 n2 n2 n..11(LLVAR) n..11(LLVAR) Z..37(LLVAR) Z?104(LLLVAR) an12 an2 ans8 ans15 ans40 an3 b64 n16 an..040(LLVAR) n2 n6 n..11(LLVAR) b64 请求 0200 M M M M M M M M M M M M C1 C2 M M M M M C3 M M 响应 0210 M M M M M M M M M+ M M M M+ M+ M M M M+ M M M C 备注 “30xxxx” “00” 填接入渠道代码 响应消息中39域为“00”时必选

(4)扣费交易(消费交易)

位 数据元 - - 2 3 4 7 11 12 13 14 15 22 25 26 32 33 35 36 37 39 41 42 43 48 49 52 53 报文类型 位元表 主账号 处理码 交易金额 传输日期和时间 系统跟踪号 本地交易时间 本地交易日期 卡片有效日期 清算日期 服务点输入方式码 服务点条件码 服务点PIN 采集代码 受理机构标识码 发送机构标识码 第二磁道数据 第三磁道数据 检索参考号 响应码 受卡方标识码 受卡方名称地址 代理业务系统数据 交易货币代码 个人密码 安全控制信息 类型 n4 b128 n..19(LLVAR) n6 n12 n10(MMDDhhmmss) n6 n6(hhmmss) n4(MMDD) n4 n4 n3 n2 n2 n..11(LLVAR) n..11(LLVAR) Z..37(LLVAR) Z?104(LLLVAR) an12 an2 ans8 ans15 ans40 ans..512(LLLVAR) an3 b64 n16 请求 响应 备注 0200 M M M M M M M M M M M M M C1 C2 M M M M M C C 0210 M M M M M M M M M M+ M M M M+ M+ M M M M “19xxxx” “81” 填接入渠道代码 有PI 时必选 有安全要求时必选。DES算法:1000000000000000 3DES算法:1600000000000000 返回缴费明细 格式自定义 59 60.1 60.2 63 查询明细 交易类型码 批次号 自定义域 ans...600(LLLVAR) n2 n6 ans...512(LLLVAR) O M O O M M O

100 接收机构标识码 128 MAC n..11(LLVAR) b64 M M C 响应消息中39域为“00”时必选 48域说明

位置 0 2 4 24 长度 2 2 20 6 格式 ans ans ans ans 内容 用法标志 帐单号码类型 帐单号码 缴费月份 说明 “PA”:帐单缴费 左对齐,右补空格 YYYYMM,当本子域填写“000000”时,用于缴纳全部帐单费用。仅当附加子域中不存在费用索引值时,本域有效。 附加子域长度,右靠,不足位前补“0”。若无附加子域,本域不存在 填写实际长度的附加子域内容。若无内容,则本域不存在 “#”。附加子域不存在时,紧接前面缴费月份填写 30 3 n 附加子域长度 33 33+x x 1 ans…150 ans 附加子域内容 结束标志

(5)扣费撤销

位 域名定义 消息类型 位元表 属性 n4 b64 n..19 n6 n12 n10 n6 n6 n4 格式 LLVAR MMDDhhmmss hhmmss MMDD 4 交易金额 7 传输日期和时间 11 受卡方系统跟踪号 12 受卡方所在地时间 13 受卡方所在地日期 BCD BCD BCD BCD BCD M M M M M M 同原缴费交易 1 类型 Ascii BCD BCD 请求 响应 M BIT MAP M M 28XXXX 备 注 0200 0210 MSG-TYPE-ID M M BINARY M 2 主帐号 3 交易处理码 M 交易流水号 M M 14 卡有效期 15 清算日期 22 服务点输入方式码 25 服务点条件码 26 服务点PIN获取码 32 受理方标识码 33 发送方标识码 35 2磁道数据 36 3磁道数据 37 检索参考号 n4 n4 n3 n2 n2 n..11 n..11 z..37 z...104 an12 YYMM MMDD LLVAR LLVAR LLVAR LLLVAR BCD BCD BCD BCD BCD BCD BCD BCD BCD ASCII M M C M M C C M M M M “81” 22域指明PIN可输入且持卡人 输入了PIN M M 22域磁条输入且存在二磁道信 息 22域磁条输入且存在三磁道信息 38 授权标识应答码 an6 ASCII C1 M 请求时为原消费交易参考号 C1:如果原始交易的应答中有授权码,则须填入原交易授权C2 码 C2:交易承兑时由发卡行自定 M M 同原交易 M 同原交易 同原交易 M 格式同缴费交易 M 22域指明PIN可输入且持卡人 输入了PIN C 有安全要求必选 O 格式自定义 M M O 格式自定义 39 应答码 41 受卡机终端标识码 42 受卡方标识码 43 受卡方名称地址 48 行业特定信息 49 交易货币代码 52 个人标识码数据 53 安全控制信息 59 自定义域 60.1 交易类型码 60.2 批次号 63 自定义域 90 原始信息域 100 接收机构标识码 128 MAC an2 ans8 ans15 ans40 ASCII ASCII ASCII ASCII ASCII ASCII M M M M M ans...512 LLLVAR an3 b64 n16 BINARY C BCD ASCII ASCII BCD ASCII BINARY C O M O M ans…600 LLLVAR n2 n6 ans…512 LLLVAR n…029 n..11 b64 LLLVAR LLVAR M 响应消息中39域为“00”时必C 选 M 2

(6)冲正类交易

说明:交易冲正这里是指公共支付系统在规定时限内未收到交换系统或商户应答时,引发的冲正。冲正类交易包括服务内容定制/服务内容定制取消冲正交易、提醒定制/提醒定制取消冲正交易、扣费交易冲正、打印票据冲正。

公共支付系统以90域来匹配原交易。 位 - - 2 3 4 7 11 12 13 15 25 32 33 37 39 41 42 43 48 49 90 100 128 数据元 报文类型 位元表 主账号 处理码 交易金额 传输日期和时间 系统跟踪号 本地交易时间 本地交易日期 清算日期 服务点条件码 受理方标识码 发送机构标识码 检索参考号 响应码 受卡机终端标识码 受卡方标识码 受卡方名称地址 代理业务系统数据 交易货币代码 原始数据元 接收机构标志码 MAC 类型 n4 b128 n..19(LLVAR) n6 n12 n10(MMDDhhmmss) n6 n6(hhmmss) n4(MMDD) n4 N2 n..11(LLVAR) n..11(LLVAR) an12 an2 ans8 ans15 ans40 ans..512(LLLVAR) an3 n42 n..11(LLVAR) b64 请求 0400 M C M M M M M M M M M M M M M M M M M 响应 0410 M C M M M M M M M M M M M M M M M M M C 备注 同原交易 同原交易 同原交易 同原交易 同原交易 同原交易 同原交易 同原交易 填接入渠道代码 同原交易 同原交易 同原交易 90#说明:

原始消息类型 n4 原始系统跟踪号(原11域) n6 原始系统日期时间(原13、12域) n10

原始受理方标志码(原32域) n11,右对齐,左补零

原始发送方标志码(原33域) n11,右对齐,左补零

1.1.1、 退货

位 域名定义 消息类型 属性 n4 b64 n..19 n6 n12 n10 n6 n6 n4 n4 n4 n3 n2 n..11 n..11 z..37 z...104 格式 类型 BCD 请求 0220 M M M M M M M M M M M M C C 3 响应 M M M BIT MAP 20xxxx 备 注 0230 MSG-TYPE-ID 位元表 2 主帐号 3 交易处理码 4 交易金额 7 传输日期和时间 11 受卡方系统跟踪号 12 受卡方所在地时间 13 受卡方所在地日期 14 卡有效期 15 清算日期 22 服务点输入方式码 25 服务点条件码 32 受理方标识码 33 发送方标识码 35 2磁道数据 36 3磁道数据 BINARY LLVAR BCD MMDDhhmmss hhmmss MMDD YYMM MMDD LLVAR LLVAR LLVAR LLLVAR BCD BCD BCD BCD BCD BCD BCD BCD BCD BCD BCD BCD BCD BCD M M M M M M M M M 交易流水 00 22域磁条输入且存在二磁道信息 22域磁条输入且存在三磁道信息 请求时同原始交易 原交易存在授权码时 同原交易 同原交易 格式同缴费交易 M+ 37 检索参考号 38 授权标识应答码 39 应答码 41 受卡机终端标识码 42 受卡方标识码 43 受卡方名称地址 48 附加响应数据 an12 an6 an2 ans8 ans15 ans40 ASCII 4 ASCII ASCII ASCII ASCII ASCII ASCII M C1 M M M M M M M M M ans..512 LLLVAR 49 交易货币代码 59 自定义域 60.1 交易类型码 60.2 批次号 63 自定义域 90 原始信息域 100 接收机构标识码 128 MAC

an3 ASCII ASCII ASCII BCD ASCII BINARY M O M O M M 5 M O M M O M C 格式自定义 格式自定义 响应消息中39域为“00”时必选 ans…600 LLLVAR n2 n6 ans…512 LLLVAR n…029 n..11 b64 LLLVAR LLVAR

(7)补充说明

终端号和商户号一一对应,公共支付系统会在系统中检查41#,42#是否对应。

帐单号码类型是唯一确定缴费上送的商户号的。

要开发业务的时候,根据下面表格填入商户名称,我们根据公共支付平台的录入情况分配对应的商户号码,终端号和帐单 商户名称 水厂 商户号 终端号 帐单类型 在填充报文的时候,根据不同的商户,填写相应的商户号,终端号和帐单类型号。

(8)pin和mac算法

密码加密算法:

密码明文=2位密码长度+密码明文(若不足8位补’F’) 帐户密码密文=DES(密码明文,PIN密钥)

若个人密码是“123456”, 则帐户密码明文为“06123456” 密文为:

密文=DES(0x060x12/0x34/0x56/0xFF/0xFF/0xFF/0xFF, PINKEY) MAC算法:

MAC算法采用密文块链接(CBC)的模式。 (a):用法

计算出的8个字节的二进制MAC,还需取前4个字节扩展转换成16进制表示的字符串存放在本域中。

扩展方法如下:HEX(2345ABCD) ? “2345ABCD”

一般交易报文中MAC表示成ASCⅡ码是可见的字符(即“0” — “9”、 “A” — “F” 且“A” — “F”是大写)。

(b):MAC消息域的选择

应严格按照消息交换格式定义中规定的域进行选择,以下域出现或条件成立时,就应该包含在MAC计算中。金融类消息包括定制类交易、支付类交易及其冲正和成功的应答。

序号 1 2 3 域 0 2 3 域名 消息类型 主账号 交易处理码 属性 n4 n...19(n+PAN) n6 4 5 6 7 8 9 10 11 12 13 14 15 4 7 11 18 25 32 33 38 39 41 42 90 交易金额 交易传输时间 系统跟踪号 商户类型 服务点条件码 代理机构标识码 发送机构标识码 授权标识应答码 应答码 受卡方终端标识码 受卡方标识码 原始数据元 n12 n10 n6 n4 n2 n..11(LLVAR) n..11(LLVAR) an6 an2 ans8 ans15 n20

(c):.MAC BLOCK 的构成规则

MAC域的构成将根据bitmap中上述域是否出现在消息中来确定。上述域只要出现在消息中,应截下送入MAC计算域;域和域之间应插入一个空格。 ? MAC字符的选择

对所选择的MAC消息域,应进一步作字符处理。除去一些冗余信息,以提高MAC的质量。处理方法如下: ? 在域和域之间插入一个空格; ? 所有的小写字母转换成大写字母;

? 除了字母(A-Z),数字(0-9),空格,逗号(,)和点号(.)以外的字母都删去;

? 删去所有域的打头空格和结尾空格; ? 多余一个的连续空格,由一个空格代替。

? 构成MAC块(MAB)

数据从消息中选择出来后,经MAC字符选择处理,然后构成MAB。构成MAB的方法是:

将MAC字符选择处理后的数据按64BIT划分成64BIT的块,一直划分到数据的最后一块,它的位数小于或等于64BIT,不满64BIT时用“NULL”填充。

(d):MAC计算方法

MAC域(128域)为按照DES算法计算MAC得到的8字节二进制数据的前半部分(4字节二进制数),表示成16进制字符串形式(8个16进制字符)。具体如下:

参与报文校验码(MAC)的数据由三部分产生:初始数据,原始数据,补位数据。

MAC算法如下:

1)算法定义:采用DES CBC算法。

2)初始数据:0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00。 3)原始数据:

4)补位数据:若原始数据不是8的倍数,则右补齐0x00。若原 始数据为8的整数倍,则不用补齐0x00。 5)密 钥:MAC密钥。

MAC的产生由以下方式完成:(最后一组数据长度若不足8的倍数,则右补齐0x00;若数据长度为8的整数倍,则无需补充0x00)。

MAC签名计算流程图:

初始数据Block #1Block #2Block #3Block #NXORXORXORXORDESDESDESDESMACKEYKEYKEYKEY

四 通讯线路

工行连接公共支付平台的通讯物理线路复用现有工行的atm,pos系统连接银联的物理线路。

连接公共支付平台的线路是可以最多4对的单工长连接。端口号及端口数量待测试和上线的时候双方协调分配。

五 清算模式

待定。

本文来源:https://www.bwwdw.com/article/0kjo.html

Top