1、531分行业务平台POS清算系统实施手册分行业务平台项目组12月31日文档修改历史版本号修改日期编写评审同意修改内容 1.0.0-08-06余浩新建1.0.1-01-17吴发进1. 系统概述1.1. 编写目标本文档对交通银行POS特色清算业务系统功效需求和关键非功效性需求进行了说明,将作为后续系统设计、开发、测试等工作依据。1.2. 读者对象本文档预期读者为:l 交通银行相关项目参与人员和后期维护人员;l 其它经过授权相关组织或个人。1.3. 编写标准本文档遵照软件开发中心开发规范和文档编写标准,从业务人员角度出发,从输入输出界面、业务步骤和数据步骤等多个方面对系统功效需求进行了具体叙述。此文
2、档将在开发过程伴随需求变更而更改和修订。1.4. 业务功效描述POS特色清算业务系统,是实现对线下商户收单业务资金按分行特定规则实施清算平台,即指使用本行借记卡、本行贷记卡、她行卡在我行受理终端消费后,总行自动清算满足不了分行需求,需要进行特色清算一系列账务处理平台。关键包含将资金清算给一级商户结算账户,资金清算给一级商户下挂终端(二级商户)结算户,手续费分润,退货等业务。1.5. 适用业务范围1. 支持多个清算品种 ,直联POS、间连POS、直联家易通、第三方支付等类POS交易清算。2. 支持集群商户方法入账。3. 支持灵活入账周期方法,一级商户和二级商户可采取不一样入账周期进行入账。4.
3、支持多类账户入账,包含本行对公账户、内部账户、个人借记卡账户、贷记卡账户及她行账户。5. 支持商户二级清算。6. 支持终端组清算。7. 支持二级清算手续费分润。8. 退货报表。1.6. 术语及定义1. 一级清算依据商户清算策略参数设置,将清算资金清算至一级商户或一级集群商户清算账户。2. 一级清算账户商户接收我行清算账户,该账户能够是我行对公账户、内部账户、确保金账户、对私账户借记账户、对私贷记账户及她行结算账户。假如该商户需要进行二级清算,则其一级清算账户必需是交行对公账户、内部账户或确保金账户。3. 二级清算一个一级商户下能够有多个子商户(二级商户),可按要求进行分层资金清算。资金先清算至
4、一级商户对公结算账户上(也可能是专业市场所对应分行确保金账户或内部户),再自动清分给二级商户(二级清分)。在二级清算模式下,一级清算完成后才能够进行二次清算。4. 二级清算账户是我行二级清算时将资金清算给二级子商户账户,该账户能够是交行对公账户,也能够是交行对私户(借记卡、贷记卡)或她行结算账户。5. 手续费内扣是指向商户清算资金中,已扣除我行应收手续费,只能采取同时扣收。6. 手续费外扣是指向商户清算资金为交易原金额,商户需在我行另外开立手续费扣收专户,或依据我行要求,主动划拨手续费,可选择同时扣收或异步扣收。7. 手续费同时扣收是指在手续费扣收和商户入账金额处理同时进行,即每次向商户清算资
5、金时,同时进行手续费扣收。8. 手续费异步扣收是指手续费扣收可不和商户交易原金额入账处理同时进行,可在收单系统尚单独设置扣收周期。手续费“异步扣收”周期通常可设置为“周、月、季”,也可设为任一工作日进行手续费扣收。9. 清算本金清算交易金额去掉手续费即是清算本金。10. 商户手续费分润依据商户分润参数设置进行分润,支持两级账户分润。2. POS清算业务步骤3. 功效模块3.1. 功效模块图3.2. 功效模块描述 详见POS清算需求规格说明书。3.3. 系统设计POS特色清算标准版采取可扩展策略模式实现,主体交易步骤由标准版实现,规范业务步骤,统一行内处理;步骤中预留策略接口,由分行实现,提供可
6、扩展性,满足分行特色需求。标准版提供前端交易画面源码、标准版jar及可运行项目原型。前端源码已联调经过,可编译展示,可由分行进行调整,如增加或删除画面要素。标准版Jar中包含接口wsdl、后台process、后台步骤处理,经过调用分行实现策略Action完成份行特色交易逻辑。项目原型是基于标准版jar、包含示例策略实现、可运行工程,分行可定义并实现分行特色策略Action,完成标准交易,或在改工程中定义并实现标准版未涵盖分行特色交易,如特色报表。3.3.1. 标准版策略接口 说明: POS特色清算标准版对所涵盖功效点步骤和前端接入接口进行了控制,而且实现了其中绝大部分。对于比较特色部分则提供了
7、策略模式由分行实现。分行经过实现对应策略Action满足本身实施版POS特色清算特色需求。 POS特色清算标准版采取策略模式为分行提供可自由实现策略Action。在标准版中会调用分行实现策略Action完成对应步骤,从而完成每一个功效点。 POS清算标准版接口总览以下:功效模块接口名接口说明清算数据导入模块stlDataImportStrategyAction清算数据导入策略stlFileDownloadStrategyAction清算文件下载策略入账模块chlAccountBeforeStrategyAction单笔渠道入账交易前置检验策略chlAccountAfterStrategyAct
8、ion单笔渠道入账交易后置处理策略chlAccountCallBackStrategyAction整个入账批次完成回调策略3.3.2. 数据库设计3.3.2.1. 数据库库表总览 POS清算标准版提供了张库表,总览以下:序号数据表名汉字名称备注1ACP_JOURNAL代收付渠道入账流水表2AGENT_BANK_REL代理行映射关系表3BANK_FEE_JOURNAL手续费入银行帐流水表4BASIC_SPL_INFO基础商户信息表5BASIC_TERMINAL_INFO基础终端信息表6BASIC_TRAN_INFO原始交易流水表7BATCH_CONTROL_INFO批次状态信息表8BK_SPL_
9、ACCT_INFO分行商户账户信息表9BK_SPL_DETL分行商户基础信息表10BKU_ACOMA_JNL收单机构通常交易流水文件表11BKU_AERR_JNL差错交易受理方流水文件表12BKU_DLFEE银联品牌费文件表13BKU_ERR_JNL差错交易发卡方流水文件表14BKU_FLE_CTL银联文件控制表15BKU_FLE_RULE银联文件规则表16BKU_ICOM_JNL发卡方通常交易流水文件表17BKU_INFBIC卡电子现金应用脱机消费受理方成功清算文件18BKU_RPT_TYP分行报表类型表19BKU_SEAC银联商户汇总文件表20CLUSTER_RELATIONSHIP集群关
10、系对照表21DATA_RESOURCE_INFO数据起源表22FEE_DETAINED_INFO手续费暂留信息表23FILE_IMPORT_JOURNAL文件导入流水表24FLOW_CONTROL步骤状态表25FLOW_INF步骤信息表26GEMS_JOURNAL主机渠道入账流水表27ITA_JOURNAL同城渠道入账流水表28PNO_JOURNAL二代支付渠道入账流水表29PRO_INF交易信息表30PROCESS_STATE交易状态信息表31RET_REG退货登记簿32RETURN_DEAL_INFO退货信息表33RISK_PEND_INFO风险暂挂汇总表34SETTLE_TYPE_INF
11、O清算品种信息表35SPL_BASIC_RULE商户特色清算规则信息表36SPL_FEE_RULE一清手续费规则表37SPL_FEE_STRATEGY_TYPE商户手续费策略表38SPL_RULE_INFO一级可清算规则表39SPL_SETTLE_BATCH_DETAIL清算批次明细表40SPL_SETTLE_DATA_DETAIL一级可清算数据表41SPL_VIRTUAL_RELATIONSHIP实体商户虚拟关系映射表42STRATEGY_MODEL手续费模式43SUBSIDY_JOURNAL资金贴付流水表44TERMINAL_BASIC_RULE终端清算基础规则信息表45TERMINAL_
12、INFO终端信息表46TML_FEE_RULE手续费计算规则表47TML_SETTLE_DATA_DETAIL二级可清算数据表48VIRTUAL_SPL_INFO虚拟商户信息表49RULE_MODEL附加规则模式表50RULE_TYP附加规则类型表51RULE_DETAILS附加规则详情表3.3.2.2. 建表脚本 3.3.2.3. 数据库对照表 说明,数据库对照表对POS清算系统表中字段进行了简明说明。 详见 4. BBIP环境搭建请参考平台开发手册:注:这里是为了方便查看,将文档放在这里,最新文档以下发平台开发手册为准。5. BBOS环境搭建请参考BBOS开发手册:注:这里是为了方便查看,
13、将文档放在这里,最新文档以下发BBOS开发手册为准。6. CPOS项目原型请参考文档:原型生成器:7. CPOS前端源码分行自行维护前端代码。8. 需要分行实施模块8.1. 数据初始化8.1.1. 清算品种初始化注:使用标准版,必需进行清算品种初始化1. 清算品种初始化I、确定清算品种清算品种通常分为:Z-直联清算,J-间联清算,R-直联家易通实时,F-直联家易通非实时,T-第三方,品种类别中还能够细分。II、在清算品种表里插入统计在清算品种表里需要插入字段以下:字段字段名称必输性说明STL_TYP_ID清算品种编号必输主键STL_TYP清算品种必输清算品种代号,可采取24个字母来定义,如直联
14、清算为Z,这个代号对应下面配置介绍中清算品种mapping中keySTL_TYP_NME清算品种名称必输BR机构号必输BK分行号必输STM_AC_TYP出账账号类型非必输一级清算时必输STM_AC出账账号非必输清算内部户,业务提供,一级清算时必输STM_AC_NME出账账号户名非必输一级清算时必输ADV_AC_TYP垫付账号类型非必输 直联家易通时必输ADV_AC垫付银行入账账号非必输 直联家易通时必输ADV_AC_NME垫付账号户名非必输直联家易通时必输STM_AC_BK_NME出账账号行名非必输STM_AC_BK_NO出账账号行号非必输8.1.2. 银联文件导入数据初始化注:现在支持解析银
15、联文件以下,假如不是这些银联文件,标准版不支持,参数就不用配了,银联文件由分行自行解析。1、银联代理清算商户结算行入账文件(SEAC)2、银联代理清算收单机构通常交易流水文件(ACOMA)3、IC卡电子现金应用脱机消费受理方成功清算文件(INF)4、差错交易受理方文件(AERR)5、通常交易发卡方流水文件(ICOM)6、差错交易发卡方流水文件(ERR)7、品牌服务费总表(DLFEE)配置步骤:n FTP配置:在BBIP.PLAT_FTP_TBL表中配置;表字段说明:字段名说明FTP_IDFTP_ID,命名规则: BKU_FTP_BK(分行号),如BKU_FTP_IPFTP服务器地址PORT端口
16、,默认21MDE模式,默认1BK分行号USR_NMEFTP用户名PSWFTP密码DST_DIR远程路径,配置固定值#dstDirDST_FLE远程文件名,配置固定值#dstFleLOC_DIR当地路径,配置固定值#locDirLOC_FLE当地文件名,配置固定值#locFleRMK备注例子:BKU_FTP_182.217.8.53211weblogicweblogic#dstDir#dstFle#locDir#locFlecpos银联文件FTPSQL语句insert into BBIP.PLAT_FTP_TBL (FTP_ID, IP, PORT, MDE, BK, USR_NME, PSW,
17、 DST_DIR, DST_FLE, LOC_DIR, LOC_FLE, RMK) values (BKU_FTP, 182.217.8.53, 21, 1, , weblogic, weblogic, #dstDir, #dstFle, #locDir, #locFle, cpos银联文件FTP);注:分行只需要修改SQL语句中:FTP_ID : BKU_FTP_+分行号,IP ,PORT , BK , USR_NME , PSWn 文件路径配置:在BBIP.PLAT_PRM_TBL表中配置。这一步是设置#dstDir,#locDir具体值,每个银联文件对应一组#dstDir,#locDir
18、,有多少个银联文件,就配多少组#dstDir,#locDir。表字段说明:字段名说明SYSTEM_CODE系统码PARAM_NAME变量名称PARAM_VALUE变量值PARAM_DESC变量描述例子: CHNCPOSbkufile_DLFEE_remote/home/weblogic/bkufile/CHNCPOSbkufile_DLFEE_local /home/bbipadm/CPOS/bkufile/SQL语句insert into BBIP.PLAT_PRM_TBL (SYSTEM_CODE, PARAM_NAME, PARAM_VALUE, PARAM_DESC) values (
19、CHNCPOS, bkufile_DLFEE_remote, /home/weblogic/bkufile/, );insert into BBIP.PLAT_PRM_TBL (SYSTEM_CODE, PARAM_NAME, PARAM_VALUE, PARAM_DESC) values (CHNCPOS, bkufile_DLFEE_local, /home/bbipadm/CPOS/bkufile/, );注意:CHNCPOS需改成份行系统码,PARAM_NAME : bkufile_+分行号+文件类型+_remote , 每个分行每种文件全部需配置银联文件规则配置:CPOS.BKU_F
20、LE_RULE 银联文件规则表:SQL语句insert into CPOS.BKU_FLE_RULE (ID, BK, BR, IN_FLAG, SN, BUSS_TYP, DETL_TYP, INP_TAB, BKU_FLE_TYP, BKU_FLE_NME) values (1, , , INO, 99, DLFEE, null, BKU_DLFEE, 001, 品牌服务费总表);insert into CPOS.BKU_FLE_RULE (ID, BK, BR, IN_FLAG, SN, BUSS_TYP, DETL_TYP, INP_TAB, BKU_FLE_TYP, BKU_FLE_
21、NME) values (2, , , IND, 01, IERR, null, BKU_ERR_JNL, 002, 差错交易发卡方流水文件);insert into CPOS.BKU_FLE_RULE (ID, BK, BR, IN_FLAG, SN, BUSS_TYP, DETL_TYP, INP_TAB, BKU_FLE_TYP, BKU_FLE_NME) values (3, , , INH, 01, SEAC, null, BKU_SEAC, 003, 银联代理清算商户结算行入账文件);insert into CPOS.BKU_FLE_RULE (ID, BK, BR, IN_FLA
22、G, SN, BUSS_TYP, DETL_TYP, INP_TAB, BKU_FLE_TYP, BKU_FLE_NME) values (4, , , IND, 32, ACOMA, null, BKU_ACOMA_JNL, 004, 银联代理清算收单机构通常交易流水文件);insert into CPOS.BKU_FLE_RULE (ID, BK, BR, IN_FLAG, SN, BUSS_TYP, DETL_TYP, INP_TAB, BKU_FLE_TYP, BKU_FLE_NME) values (5, , , IND, 01, ICOM, null, BKU_ICOM_JNL,
23、005, 通常交易发卡方流水文件);insert into CPOS.BKU_FLE_RULE (ID, BK, BR, IN_FLAG, SN, BUSS_TYP, DETL_TYP, INP_TAB, BKU_FLE_TYP, BKU_FLE_NME) values (6, , , INF, 51, B, null, BKU_INF_B, 006, IC卡电子现金应用脱机消费受理方成功清算文件);insert into CPOS.BKU_FLE_RULE (ID, BK, BR, IN_FLAG, SN, BUSS_TYP, DETL_TYP, INP_TAB, BKU_FLE_TYP,
24、BKU_FLE_NME) values (7, , , IND, 01, AERR, null, BKU_AERR_JNL, 007, 差错交易受理方文件);insert into CPOS.BKU_FLE_RULE (ID, BK, BR, IN_FLAG, SN, BUSS_TYP, DETL_TYP, INP_TAB, BKU_FLE_TYP, BKU_FLE_NME) values (12, , , INO, 99, DLFEE, null, BKU_DLFEE, 001, 品牌服务费总表);注意:分行需要那种银联文件可依据需要配置,只需将BK ,BR改成自己分行BK,BR即可。8.1
25、.3. 交易状态数据初始化1. 交易状态现只支持一清可清算数据生成,清算数据导入2. CPOS.PRO_INF 交易信息表:SQL语句insert into CPOS.PRO_INF (PRO_CDE, PRO_NME, PRO_ID) values (01, 清算数据导入, cpos.settleDataProcessProcess);insert into CPOS.PRO_INF (PRO_CDE, PRO_NME, PRO_ID) values (02, 一清可清算数据生成, cpos.splStlDataGenProcess);注: 直接实施该语句就能够8.1.4. 步骤状态数据初始
26、化1 CPOS.FLOW_INF 步骤信息表:SQL语句insert into CPOS.FLOW_INF (PRO_ID, PRO_NAME, DIS_IN_STS, DIS_FIN_STS) values (cpos.settleDataProcessProcess , 清算数据导入, 0 , 1 );insert into CPOS.FLOW_INF (PRO_ID, PRO_NAME, DIS_IN_STS, DIS_FIN_STS) values (cpos.splStlDataGenProcess , 一级可清算数据生成, 2 , 3 );insert into CPOS.FLOW
27、_INF (PRO_ID, PRO_NAME, DIS_IN_STS, DIS_FIN_STS) values (cpos.generateTmlSettleDataProcess , 二级可清算数据生成, 4 , 5 );insert into CPOS.FLOW_INF (PRO_ID, PRO_NAME, DIS_IN_STS, DIS_FIN_STS) values (cpos.settlAccountProcess , 一级清算入账, 6 , 7 );insert into CPOS.FLOW_INF (PRO_ID, PRO_NAME, DIS_IN_STS, DIS_FIN_ST
28、S) values (cpos.tmlSettlAccountProcess , 二级清算入账, 8 , 9 );注: 直接实施该语句就能够8.1.5. 代理行映射关系数据初始化1. CPOS.AGENT_BANK_REL代理行映射关系表分行必需需配置分行号BK,假如该分行银联数据是由代理行导入,则应配代理行号AGENT_BANK,假如没有则NULL8.1.6. 清算报表下载初始化1. CPOS.STL_RPT_TYP清算报表类型表SQL语句insert into CPOS.STL_RPT_TYP (ID, STL_RPT_TYP, STL_RPT_TYP_NME) values (1 , 0
29、10, 一清具体报表);insert into CPOS.STL_RPT_TYP (ID, STL_RPT_TYP, STL_RPT_TYP_NME) values (2 , 011, 一清算入账成功报表);insert into CPOS.STL_RPT_TYP (ID, STL_RPT_TYP, STL_RPT_TYP_NME) values (3 , 012, 一清算入账失败报表);insert into CPOS.STL_RPT_TYP (ID, STL_RPT_TYP, STL_RPT_TYP_NME) values (4 , 013, 一清算入账未知状态报表);insert int
30、o CPOS.STL_RPT_TYP (ID, STL_RPT_TYP, STL_RPT_TYP_NME) values (5 , 020, 二清具体报表);insert into CPOS.STL_RPT_TYP (ID, STL_RPT_TYP, STL_RPT_TYP_NME) values (6 , 021, 二清算入账成功报表);insert into CPOS.STL_RPT_TYP (ID, STL_RPT_TYP, STL_RPT_TYP_NME) values (7 , 022, 二清算入账失败报表);insert into CPOS.STL_RPT_TYP (ID, STL
31、_RPT_TYP, STL_RPT_TYP_NME) values (8 , 023, 二清算入账未知状态报表);insert into CPOS.STL_RPT_TYP (ID, STL_RPT_TYP, STL_RPT_TYP_NME) values (12 , 20 , 清具体报表);注:分行如需下载功效,直接实施该语句就能够。8.2. 清算模块8.2.1. 模块介绍8.2.1.1. 前端服务接口:CHNCPOSService 说明:该服务对应接口文档为 对应schema文件为8.2.1.2. 操作和process对应关系前端操作名称前端操作后台process备注清算数据导入settle
32、DataProcesscpos.settleDataProcessProcess8.2.1.3. 包含表结构 包含表结构:清算品种表 SETTLE_TYPE_INFO,原始交易流水表BASIC_TRAN_INFO,一级可清算数据表SPL_SETTLE_DATA_DETAIL。8.2.2. 清算数据导入8.2.2.1. 功效说明柜员在柜面录入清算品种和清算文件日期,系统进行清算数据导入预处理,清算数据导入方法判定,查找清算数据导入方法策略进行清算数据导入,清算数据导入后置处理,返回前端交易处理凭证。Process配置以下:8.2.2.2. 步骤描述及实施关键点清算数据导入预处理从cpos.stl
33、DataImportPrepareAction进入清算数据导入预处理。注:这一步不用分行实施。清算数据导入方法判定在cpos.judgeImportWayAction中判定清算数据导入方法判定然后匹配策略。注:这一步需要实施版配置清算品种Mapping和配置清算品种参数,配置步骤为:1、配置清算品种Mapping(具体参考请参考参考下面8.2.2.3节中配置清算品种mapping)2、经过清算品种Mapping找到具体配置清算品种参数。(具体请参考参考下面8.2.2.3节中配置清算品种参数)1) 从清算品种参数配置中获取清算数据导入方法。/* 导入方法:1,文件导入(默认) 2,自定义 */2
34、) 文件导入,策略值为Default,标准版已实现,只需配置对应清算品种参数和回调函数。3) 自定义导入,策略值为stlTyp(清算品种代号),需实施版中配置对应Action并实现将数据导入到标准版库表Action配置为: stlDataImportStrategyAction+stlTyp, 如:stlDataImportStrategyActioZ。(标准版中有默认Action,若无特殊要求,可直接引用)查询清算数据导入方法策略进行清算数据导入1. stlDataImportStrategyAction策略调用。 1) 文件导入v 依据清算品种参数配置获取文件下载策略(不需要FTP下载文件则不需要配置,要下载则要配置)GY000 v 有文件后,解析文件入库(实施版需配置清算品种参数)标准版中有两种默认解析入库实现,实施版需配置在对应品种清算品种参数中,配置以下:1.解析文件入原始流水表/x:b