“全部异常待处理”指的是受理终端当前处于正常受理状态,并不处于3.4 节所述状态(等待或正在恢复刚刚发生的异常),但存储有过去发生的“疑似闪卡”异常。可以理解为,终端此时保存有一个“异常池”,在每一次有卡片受理时,终端均会确认是否与池中的某一个异常记录相匹配。
具体流程如图6所示。
步骤1:终端显示返回初始界面,选择交易、输入交易金额,终端进行IC 卡预处理,提示请持卡人出示卡片开始交易,终端对卡片上电并应用选择(上述各步骤与正常交易相同),进入步骤2。
步骤2:限时控制模块判断每一条异常记录是否已超过“异常记录可处理时间”(设为T2),在异常记录模块中删除超时的记录。如模块中仍存在未超时的异常记录,则进入步骤3;如不存在,则进行应用初始化,进入正常交易流程。根据具体场景的特点,方案部署时根据实际情况可选择不设置T2 限制。
图6 全部异常待处理
步骤3:在异常记录中以一定顺序(如时间上由近及远)选择第一条记录,判断该记录中的交易金额与当前交易的金额是否一致,如一致,将该记录作为“当前待处理(恢复)异常记录”,进入步骤5;如不一致,则进入步骤4。
步骤4:判断是否存在下一条未超时且金额一致的异常记录(依然按同样顺序,以下均以由近及远方式举例),如存在,将该记录作为“当前待处理异常记录”,同时继续进行限时控制,删除超时记录,进入步骤5;如不存在,则进入应用初始化,进入正常交易流程。(www.xing528.com)
步骤5:判断当前待处理异常记录的应用标识是否与当前交易选中的应用标识一致,如一致,进入步骤6;如不一致,进入步骤4。
步骤6:终端读取卡片卡号,判断是否与当前待处理异常记录中的卡号一致,如一致,则终端读取卡片应用交易计数器、第一币种应用货币代码、第一币种脱机账户余额,进入步骤7;如不一致,进入步骤4。因通信等原因导致读取数据(卡号、应用交易计数器、货币代码、余额等)失败时,则在异常记录模块中保留该异常记录,在交易记录模块中保留该失败交易记录,回到终端初始界面,进入步骤1。
步骤7:判断卡片应用交易计数器与当前待处理异常记录中的应用交易计数器是否一致,如一致,进入步骤8;如不一致,且卡片应用交易计数器小于当前异常记录应用交易计数器值,则删除异常记录模块中该异常记录、删除交易记录模块中该失败交易记录,进入正常处理流程的卡片应用初始化步骤;如不一致,且卡片应用交易计数器大于当前异常记录应用交易计数器值,则删除异常记录模块中该异常记录,保留交易记录模块中该失败交易记录,显示和提示模块提示交易失败。
步骤8:判断卡片第一应用货币代码是否与当前异常记录的货币代码一致,且卡片脱机账户余额是否与记录中余额一致,如两项均一致,则终端读取卡片最后一条记录,进入步骤10;如两项中至少有一项不一致,则进入步骤9。
步骤9:终端读取卡片第二币种应用货币代码和第二币种脱机账户余额,判断卡片第二币种应用货币代码是否与当前待处理异常记录中的货币代码一致,且卡片第二币种余额是否与记录中余额一致,如两项均一致,则终端读取卡片最后一条记录,进入步骤10;如两项中至少有一项不一致(无法读取上述两项数据等同于数据不一致),则删除异常记录模块中该异常记录,保留交易记录模块中该失败交易记录,显示和提示模块提示交易失败。
步骤10:终端进行脱机数据认证,如认证成功,则在异常记录模块中删除该异常记录,在交易记录模块中删除该失败交易记录,终端提示交易成功;如不成功,则删除该异常记录,保留交易记录模块中该失败交易记录,显示和提示模块提示交易失败。
注意,读取数据失败(如卡号、应用交易计数器、第一应用货币代码、第一币种余额、最后一条记录等)时,终端界面提示读卡失败,回到请刷卡界面,异常记录和失败交易记录均不产生变化。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。