二代支付系统常见应用问题及故障处置指引业务系统开放系统Word格式文档下载.docx
《二代支付系统常见应用问题及故障处置指引业务系统开放系统Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《二代支付系统常见应用问题及故障处置指引业务系统开放系统Word格式文档下载.docx(64页珍藏版)》请在冰豆网上搜索。
日期
变更人
批准日期
批准人
A
新增
2012.08.31
注:
变化状态:
A—增加,M—修改,D—删除
修改记录
序号
修改日期
修改说明
1.
2010-3-30
[C]创建第一稿作为文档模板;
说明:
[C]-创建;
[M]-修改;
[A]-增加;
[D]-删除;
1通用问题
1.1字符集类
1.1.1字符集转码失败
●错误信息
File'
CodeConvt.cpp'
Line29,Level0:
CodeConvtCannotcreateconvertorfrom[GBK]to[UTF-8]!
●错误解释
集成问题,操作系统未安装相关中文字符集。
2代系统中:
1代大额报文CMT使用GB2312字符集
1代小额报文CMT/PKG使用GBK16字符集
2代xml报文,部报文cc接口串omXX使用unicode字符集utf-8编码方式
2代主机系统使用EBCDIC字符集
●处理方法
1、确认操作系统字符环境。
/usr/lib/nls/loc/iconv目录下存在UTF-8_GBK和GBK_UTF-8文件,存在IBM-1388_UTF-8和UTF-8_IBM-1388。
-rw-r--r--1binbin98404Dec062009UTF-8_GBK
-rw-r--r--1binbin97908Dec062009GBK_UTF-8
lrwxrwxrwx1rootsystem41May072011IBM-1388_UTF-8->
/usr/lib/nls/loc/iconv/Universal_UCS_Conv
lrwxrwxrwx1rootsystem41May072011UTF-8_IBM-1388->
2、出现此错误时,IBPS-NPC拒绝受理该报文,返回系统错,重试3次后转错误队列ERRMSG。
3、需使用操作系统安装光盘重新安装中文字符集。
1.1.2报文域值非法
xmloperator.cpp'
Line2605,Level0:
8122CU0O0115报文域值非法!
--E41在4列非x字符集
E41为流水号,规定字符集为20x。
其中x-字符集由以下86个字符组成
abcdefghijklmnopqrstuvwxyz
ABCDEFGHIJKLMNOPQRSTUVWXYZ
0123456789
.,-_()/='
+:
?
!
"
%&
*<
>
;
#
(cr)(lf)(space)
x-字符集中的:
和%以及'
(半角)和"
(半角)四个字符为支付系统报文保留字符,所以组织支付系统报文容时,不得再使用这四个字符,否则报文解析将会出错。
注:
2代系统中增加%[]作为x字符集保留字符
1、本错误是报文格式检查错。
2、无须人工干预。
但如该错误频繁提示,建议联系报文发起清算行,提醒该清算行。
3、无须报告。
●补充说明CMT配置文件字符集
i
表示0至9的数字整型值,不补0
n
表示0至9的数字左补0
d
8位日期类型YYYYMMDD
a
有符号货币金额类型
Y+1位符号位+数字
其中1位符号位(+or-)是可选的。
即可以为:
RMB/Y+数字
b
无符号货币金额类型RMB/Y+数字
x
表示x-字符集中的任意字符
s
带符号的数值型例如+12-34
g
XG字符集utf-8编码
G
全角型utf-8编码
r
货币金额型RMB/Y+数值
f
无符号浮点型例如12.34
m
带符号数值型例如+12-34
z
Unicode字符集
Z
k
xG字符集GB1300
K
全角型GBK
●补充说明XML配置文件字符集
带符号位的货币金额类型Y+10000.00|Y-10000.00
无符号位的货币金额类型Y10000.00
无符号位的货币金额类型,含属性Ccy例如
<
AmtCcy="
Y"
>
123451234.00<
/Amt>
j
带符号位的货币金额类型,含属性Ccy,正数没有符号位,货币类型可以非Y例如:
BalCcy='
Y'
1234.56<
/Bal>
<
AmtCcy='
-1234.56<
等,而
+1234.56<
为非法
无符号浮点数12.34
CheckMoneyNumber(tagDef.sTagCode,sTagValue,FALSE,'
f'
);
带符号浮点数+12.34-12.34
10位日期类型YYYY-MM-DD
1.2报文类
1.2.1参与者发送错误报文
报文[ccms.900W]没有配置相应的处理程序!
aps2受理商业银行提交的业务报文时,为每一个报文类型的业务分配响应的处理程序。
如果收到设计外的业务类型,aps2将拒绝处理该报文。
根究设计,报文[ccms.900]为通用处理确认报文,用于NPC在收到参与机构发来的报文后,根据业务处理情况,将该笔业务处理结果通知相关机构。
不应该由参与机构发起。
1、出现此错误时,NPC拒绝受理该报文。
但如该错误频繁提示,建议联系报文发起清算行,通知该清算行发起业务有错误。
1.2.2报文域长度非法
File'
Line1875,Level0:
8112CU0O0113报文域长度非法!
--报文域[B02]值长度非法,最大长度[32],实际长度[41]
H02为收款人账号。
参照《网上支付跨行清算系统报文交换标准》报文说明,报文结构中报文类型列定义了每个元素的类型,例如H02为Max32Text,标示为32个字符。
1.2.3报文域强制项没有指定值
xmloperator.cpp:
***[THROW_OUT]File'
Line1766,Level0:
2216CU0O0110报文域强制项没有指定值!
--TAG[A22]
A22为发起参与机构,参考报文格式标准说明。
报文结构的属性列定义了改字段的属性,例如[1..1],表示该字段最少为1个,最大也为一个,[0..1]表示该字段最少为0个,最大为1个,[1..n]表示最小为1个,最大为n个。
1、本错误是正常业务检查错。
1.2.4报文域值非空检查失败
checkfunction.sqC'
Line5993,Level0:
30041616PU1O0117报文域值非空检查失败!
--当tag[F45][PR09]=[PR09]时,[H01|]中有空值!
F45为退回应答结果,PR09为已拒绝,H01为附言。
参考报文格式标准。
当退回应答结果为已拒绝时附言必须填写。
2、出现此错误时,NPC拒绝受理该报文,并返回拒绝应答报文给原报文发起方。
3、无须人工干预。
4、无须报告。
1.2.5报文域值不在指定的枚举围
[THROW_OUT]File'
procbase.cpp'
Line249,Level0:
30020551PU1O1035检查一个值是否在指定枚举围未通过--[F38]7不在指定枚举围!
***
F38为报头中发起系统号。
参考报格式标准报文说明。
报头中发起系统号固定填写子系统号如HVPS,BEPS等
1.3核押核签类
1.3.1核全国押不符
CProcPKGBase:
procpkgbase.cpp'
Line258,Level0:
30024705PU1O4006核全国押不符--核全国押不符
一代参与机构发送报文时,需加编地方押,通过ccpc’后转化成全国押,npc对全国押进行核验,只有核验通过的报文,才会被正常处理。
2、出现此错误时,aps2拒绝受理该报文,并返回拒绝应答报文给原报文发起方。
但如该错误频繁提示,建议联系报文发起清算行,提醒该清算行加押模块。
1.3.2核二代全国押不符
30024705PU1O4006核全国押不符--核二代全国押不符
二代参与机构向一代参与机构发送一代CMT,PKG报文时,需加编全国押。
npc对全国押进行核验,只有核验通过的报文,才会被正常处理。
但如该错误频繁提示,建议联系报文发起清算行,提醒该清算行检查加押模块。
●补充说明
第一代支付系统密押,密钥
过渡期间,第二代参与者在与第一代参与者间进行业务往来时,需按照第一代报文标准在行系统对往账业务报文进行加押,对来账业务报文进行核押,编、核押规则参考《第二代支付系统报文交换标准》文档集中的《第一代支付系统报文编核押规则》。
编、核押设备仍可使用原第一代支付系统的密押服务器/密押卡,编、核押接口API可联系密押设备生产厂家获取。
但需注意,区别于第一代支付系统中参与者与支付系统交互采用地方押密钥的模式,第二代参与者与支付系统交互需使用全国押密钥。
上线切换时,人民银行将统一更换第二代参与者密押服务器/密押卡的密钥。
1.3.3数字签名