财付通合作银行网上快捷支付技术标准V1.5.5(4)

2019-03-10 19:46

第4章 网上支付报文结构

合作银行网上快捷支付报文规范是网上支付技术标准中重要的组成部分,规定了合作银行与财付通平台之间交换报文的顺序、格式、语义与处理规范。本章中介绍网上支付报文的一般结构与公共元素,这些规范适用于所有的网上支付协议报文。具体合作银行网上快捷支付中使用的报文,在各个业务实现规范中分别进行阐述。

4.1 报文基本规则约定

在请求-应答模式中,当请求在应答方成功完成时,须采用具体业务的成功报文进行响应;当请求因系统或业务原因不能得到满足时,应答方须采用4.5.1所述的错误消息统一报文格式进行应答,不可采用具体业务的成功报文进行响应。

4.2 报文结构

合作银行网上快捷支付报文统一采用xml格式(见附录)。所有的网上支付报文均以Tenpay作为根元素,每个Tenpay元素中可以包含多个Message元素。Message元素中包含代表具体的业务的元素,比如SReq、SRes等。每个业务元素由一系列属性元素构成,不同的业务元素中包含的属性元素有所不同。对于涉及到签约状态修改或者资金变动的业务元素,必须要有与之匹配的Signature元素进行数字签名。

作为约定,Tenpay元素、Message元素与业务元素均是首字母大写的CamelCase形式,所有的属性元素均是首字母小写的CamelCase形式。

以柜台签约报文为例,请求报文的格式如下: 16

应答报文格式如下: 在下文中出现的具体报文格式描述中,“出现要求”列包含的值的含义如下表所示: 值 R C O 含义 Required(必须的) Conditional(有条件的) Optional(可选的) 请求方约束 必须包含该域 如果条件符合必须包含该域 该域可选 具体的报文格式请参见附录1。 服务方约束 必须校验该域是否存在和内容的合法性 ? 当条件满足时,必须校验该域是否存在 ? 当该域存在时,必须检查其内容的合法性 当该域存在时,必须检查其内容的合法性 4.3 报文分类

合作银行网上快捷支付协议中的报文按照交互模式的不同,分为以下几类:

? 服务请求类报文

服务请求类报文用于请求-应答交互模式,由服务使用者向服务提供者发送。服务请求类报文的命令规范是XXReq,其中XX是报文代表的业务的首字母缩略,Req是Request的缩写。比如对于柜台签约请求报文,命名为SReq,代表Card Sign Request。

? 服务应答类报文

服务应答类报文用于请求-应答交互模式,由服务提供者向服务使用者返回。服务应答类报文的命令规范是XXRes,其中XX是报文代表的业务的首字母缩略,Res是Response的缩写。比如对于柜台签约应答报文,命名为SRes,代表Card Sign Response。

? 通知类报文

通知类报文用于单向通知交互模式,由通知发送者向通知接收者发送。通知类报文的命令规范是XXNotify,其中XX是报文代表的业务的首字母缩略。比如对于“签约对账”通知报文,命名为SCNotify,代表Sign Check Notify。

? 通用报文

通用报文适用于所有的合作银行网上快捷支付。网上支付协议中有两种通用报文,一种是Error报文,用于返回处理错误;另一种是NotifyAccept,代表单向通知已被接受。

17

对于业务相关的服务请求类、服务应答类与通知类报文的具体格式,将放在具体的业务实现规范中加以描述。报文的通用结果与通用报文将在本章描述。

4.4 报文扩展

报文扩展用于未来协议的扩展,表示任何需要但尚未定义在网上支付早期协议的消息域中的数据。报文扩展数据为XML数据格式或者Base64编码的二进制数据格式,包含下表所列属性: 属性名称 id 属性特征 含义 必填属性 报文扩展域元素的唯一标识 critical 可选属性 布尔值,用于告诉报文接收方是否只有理解了报文扩展域中的内容才能理解整个报文中的内容。 属性critical的值为小写的true或false。如果只有理解了报文扩展域中的内容才能理解整个报文中的内容,那么报文扩展域就应被视为关键性的,且critical属性值应该设置为“true”;否则报文扩展域就被视为非关键性的,且critical属性值应该设置为“false”。

报文的接收方可以将critical属性视为可选属性,如果该属性未提供,将该属性缺省视为“false”。但是为了保证交互有效性,即使该属性的值为“false”,报文的发送方也必须包含该属性。如果一个报文扩展域是关键性的,报文的所有接收者都必须能够识别并处理该报文扩展域。如果一个报文扩展域是是非关键性的,报文的接收者可以忽略不能识别或处理的报文扩展。

4.5 通用报文

4.5.1 错误消息报文Error

? 功能

用来当请求或者应答不能被正确处理时返回。 ? Error域

下表列举了Error消息域的定义: 中文域名 版本号 机构标识 数字证书标识 错误代码 错误描述 详细错误信息 对应DTD元素 version instId certId char(16) errorCode errorMessage errorDetail char(4) char(256) char(512) R R O 18

类型 char(7) char(16) 出现要求 R R R 说明 目前版本”1.5.0” 报文发送方的机构标识,见数字签名 对报文进行签名的数字证书标识,见数字签名 服务方代码 消息扩展 vendorCode Extension char(256) O O 消息创建者特有的代码 ? 示例: ? 错误代码说明

下表列举了标准的错误代码: 错误代码 错误描述 解释 根元素无法识别 消息不是SReq、SRes等;或者消息发送给了一个错误的组件 例如,非数字,或者不是有效的日期格式等等。 instId域中的银行标识不正确 报文签名校验不通过 加密密钥不存在 签名密钥不存在 系统导入文件时发现格式不对,导入失败 业务日期格式不对,一般情况下业务日期必须是昨日,不过系统也支持以前日期的数据处理 0302 0303 0304 0305 文件已锁定 文件不存在 文件无法解密 文件已处理 当文件上传通知发送後,不允许再次上传相同文件 下载文件时,找不到指定的文件 上传的文件无法正确解密 对于不允许重复处理的业务的文件,如果已处理过,就发生此错误 程序类错误 0000 无效的根元素 0001 0002 0003 0004 0005 0006 0007 0008 0009 0300 0301 未定义的消息域 必填域缺失 无法识别关键域 根据规范,一个或多个域不符合格式要求 银行标识不正确 协议版本有误 签名无效 加密密钥不存在 签名密钥不存在 文件格式不正确 业务日期不正确 19

0306 0307 0308 0400 0401 0402 文件无法解压缩 文件无法删除 文件摘要不正确 支付流水重复 原支付流水不存在 查询范围太大 上传的文件无法正确解压缩 上传文件无法删除 文件上传通知报文中的文件摘要不正确 重复的网上支付流水 申请退货的原支付流水不存在 查询时间跨度太大 用户类错误(可以将错误信息显示给用户) 1000 协议号已经签约成功 1001 1002 1200 1201 1202 1203 1204 1205 1206 1207 1301 1302 1303 1304 1305 1306 1401 1402 1403 1404 1405 1406 卡代号无效 网上支付签约状态不正确 身份证已经被使用 年龄不满足 身份证格式不正确 真实姓名不正确 证件类型不正确 身份证号码不匹配 认证信息不匹配 该银行卡号已经成功签约 财付通账户不存在 财付通账户状态不正确 财付通账户类型不正确 财付通账户已经申请 财付通账号绑定的网上支付数量超限 合作银行账号通过的认证数量超过最大值 密码校验次数超限 银行卡状态不正确 银行账户状态不允许该操作 银行支付校验码输入错误 银行支付校验码失效 原支付申请流水号已经支付 财付通账号通过的认证数量超过最大值。 密码校验次数超限 银行卡状态不正确 银行账户状态不允许该操作 银行支付校验码输入错误 支付校验码超过输入时间范围限制,失效 支付流水号已经支付过 卡代号不对应有效的网上支付签约记录。 网上支付签约状态不允许执行当前的业务 身份证已经被其它用户使用,并签约 如:用户未满18岁 身份证不是有效的身份证 真实姓名与合作银行中的不一致 证件类型与合作银行中的不一致 身份证号码与合作银行中登记的身份证号码不匹配 认证信息与合作银行通过认证的信息不匹配 该银行卡号对应的合作银行账号已经签约成功。 财付通账户标识(email)不对应有效的合作银行账户。 财付通账户的状态不允许签约。 财付通账户的类型不允许签约。 财付通账号绑定的银行卡已经超过最大数量。 20


财付通合作银行网上快捷支付技术标准V1.5.5(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:oeasy教你玩转ps笔记 - 图文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: