德陽銀行應(yīng)用集成平臺ESB-移動代收與核心接口文檔-V1.0_第1頁
德陽銀行應(yīng)用集成平臺ESB-移動代收與核心接口文檔-V1.0_第2頁
德陽銀行應(yīng)用集成平臺ESB-移動代收與核心接口文檔-V1.0_第3頁
德陽銀行應(yīng)用集成平臺ESB-移動代收與核心接口文檔-V1.0_第4頁
德陽銀行應(yīng)用集成平臺ESB-移動代收與核心接口文檔-V1.0_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

移動代收ESB與核心系統(tǒng)接口說明書德陽銀行應(yīng)用集成平臺ESB工程組2011-11-0文檔信息工程名稱文檔編號德陽銀行應(yīng)用集成平臺ESB工程用戶信息用戶名稱德陽銀行合作開發(fā)方信息合作開發(fā)方名稱北京先進(jìn)數(shù)通信息技術(shù)修訂記錄版本號日期修訂說明編寫或修訂人審核2011-11-初稿李海超2012-2-9與中間業(yè)務(wù)前置人員討論后確定李海超孫開乾目錄TOC\o"1-2"\h\z\u1 引言 4 編寫目的 4 工程背景 4 參考資料 42 移動代收系統(tǒng)架構(gòu) 5 系統(tǒng)結(jié)構(gòu)圖 52.2 協(xié)議 5 SOAP報(bào)文封裝 6 交易報(bào)文格式 7 文件傳輸 9 平安控制 93 交易列表 104 ESB與核心接口 11 接口說明 11 簽到〔交易號900001〕 11 簽退〔交易號900002〕 12 繳費(fèi)查詢〔交易碼100012〕 13 繳費(fèi)〔交易號200010〕 15 退費(fèi)〔交易號100013〕 15 查詢已交費(fèi)〔交易碼100010〕 16 對賬處理〔交易碼900003〕 17引言編寫目的本文檔為德陽銀行應(yīng)用集成平臺ESB工程編寫的移動代收業(yè)務(wù)ESB系統(tǒng)與核心系統(tǒng)之間的接口說明。本文檔為德陽銀行應(yīng)用集成平臺ESB所需的其他設(shè)計(jì)文件編制提供參考,也可作為有關(guān)技術(shù)主管部門、專家對本系統(tǒng)進(jìn)行評審、審批的參考資料。主要讀者包括:本次工程所有相關(guān)的設(shè)計(jì)、開發(fā)、測試及維護(hù)人員。工程背景工程名稱:應(yīng)用集成平臺ESB工程系統(tǒng)代號:ESB任務(wù)的提出者:德陽銀行系統(tǒng)的開發(fā)者:北京先進(jìn)數(shù)通信息技術(shù)系統(tǒng)使用部門:德陽銀行參考資料《移動代收接口文檔.doc》移動代收系統(tǒng)架構(gòu)系統(tǒng)結(jié)構(gòu)圖通訊協(xié)議:移動代收系統(tǒng)采用協(xié)議,對WEBSERVICE的調(diào)用采用SOAP調(diào)用方法,即所有與核心之間請求或相應(yīng)的交互信息封裝為SOAP消息,所有SOAP消息均用XML形式編碼(UTF-8)。協(xié)議ESB與核心系統(tǒng)通訊采用綁定與協(xié)議的SOAP方式,所有SOAP消息均包含于消息。消息主要內(nèi)容如下。請求在TCP/IP之上進(jìn)行通信??蛻魴C(jī)使用TCP連接到效勞器。在建立連接之后,客戶機(jī)可向效勞器發(fā)送請求消息,主要包含以下內(nèi)容:POSTESB與核心之間對WebService的調(diào)用采用SOAP調(diào)用方法,承載SOAP調(diào)用的請求頭中使用POST命令。URLESB要求目的地址的URL格式均為/交易碼。例如交易碼為cc0003,那么URL為/cc0003。Host不做特定要求。Content-TypeESB支持SOAP消息絕大局部常見的MIME類型,例如text/plain、application/soap+xml等。XML編碼采用UTF-8,即charset=”utf-8”。Content-LengthSOAP的請求和響應(yīng)的Content-Length頭規(guī)定請求或響應(yīng)主體的字節(jié)數(shù)。請求頭實(shí)例: POST/cc0003 Host: Content-Type:text/plain;charset=”utf-8 Content-Length:200響應(yīng)效勞器收到客戶機(jī)的請求后,效勞器會處理此請求,然后向客戶機(jī)發(fā)送一個響應(yīng)。此響應(yīng)包含了如下信息:1.1超文本傳輸協(xié)議版本。200OK應(yīng)答信息,處理成功返回200OK,假設(shè)效勞器無法對請求進(jìn)行解碼,它可能會返回類似這樣的信息:400BadRequest。Content-Type響應(yīng)報(bào)文的MIME類型以及響應(yīng)報(bào)文的XML編碼方式。Content-LengthSOAP的請求和響應(yīng)的Content-Length頭規(guī)定請求或響應(yīng)主體的字節(jié)數(shù)。響應(yīng)頭實(shí)例: 1.1200OK Content-Type:text/plain; charset=”utf-8 Content-Length:200SOAP報(bào)文封裝一條SOAP消息就是一個普通的XML文檔,包含以下元素:必需的Envelope元素,可把此XML文檔標(biāo)識為一條SOAP消息可選的Header元素,包含頭部信息必需的Body元素,包含所有的調(diào)用和響應(yīng)信息可選的Fault元素,提供有關(guān)在處理此消息所發(fā)生錯誤的信息、ESB采用的SOAP報(bào)文封裝例如:<?xmlversion="1.0"?><soapenv:Envelopexmlns:soapenv=":///2001/12/soap-envelope"soapenv:encodingStyle=":///2001/12/soap-encoding"><soapenv:Header>......</soapenv:Header><soapenv:Body>......<soapenv:Fault>......</soapenv:Fault></soapenv:Body></soapenv:Envelope>交易報(bào)文格式本章節(jié)所討論報(bào)文格式均包含于SOAP報(bào)文封裝的Body元素下,即上層標(biāo)記為:<soapenv:Body>。請求報(bào)文請求報(bào)文根元素為ns:Request。請求報(bào)文頭請求報(bào)文頭標(biāo)記為RequestHeader,其父標(biāo)記為ns:Request。主要字段如下(此處字段為暫定,需討論后決定。第五章節(jié)的交易接口中將不再列出請求報(bào)文頭字段)。注:標(biāo)記名前橫線數(shù)量表示包含與被包含層次,下同。請求信息體請求信息體以RequestBody作為根元素,其父標(biāo)記為ns:Request。根元素下即為交易元素。如有多條記錄的情況,每條記錄標(biāo)記為RecMsg。請求報(bào)文例如暫未提供響應(yīng)報(bào)文響應(yīng)報(bào)文根元素為ns:Response。響應(yīng)報(bào)文頭響應(yīng)報(bào)文頭標(biāo)記為ResponseHeader。其父標(biāo)記為ns:Response。字段待定。(第五章節(jié)的交易接口中不再給出報(bào)文頭字段)。響應(yīng)信息體請求信息體以ResponseBody作為根元素,其父標(biāo)記為ns:Response。根元素下即為交易元素。如有多條記錄的情況,每條記錄標(biāo)記為RecMsg。錯誤報(bào)文每個響應(yīng)報(bào)文必須包含一個錯誤報(bào)文。其父標(biāo)記為ns:Response。錯誤報(bào)文以soapenv:Fault為根元素,包含一個錯誤代碼字段、一個錯誤信息字段以及一個Detail子標(biāo)記,Detail包含一個交易狀態(tài)字段。序號域名稱數(shù)據(jù)類型中文描述必輸說明-soapenv:Body請求\響應(yīng)報(bào)文封裝元素--ns:Response響應(yīng)報(bào)文根元素Fault錯誤報(bào)文標(biāo)記FaultCodeChar(15)錯誤代碼FaultStringChar(255)錯誤信息Detail錯誤報(bào)文子標(biāo)記TxnStatusChar(8)交易處理狀態(tài)SUCCESSFAIL響應(yīng)報(bào)文例如暫未提供文件傳輸平安控制ESB通過對XML報(bào)文體(即去除頭之后的報(bào)文內(nèi)容)字串進(jìn)行MD5信息摘要計(jì)算來防止被篡改以及認(rèn)證交易的合法性。請求報(bào)文由ESB生成MD5值并提交核心校驗(yàn),并對核心返回的應(yīng)答報(bào)文獲取核心提交的MD5值并校驗(yàn)。MD5值存放于頭中Content-Md5字段中。交易列表序號交易名稱描述功能描述900001簽到900002簽退100012繳費(fèi)查詢200010繳費(fèi)100013退費(fèi)100010查詢已交費(fèi)900003對賬處理ESB與核心接口接口說明IPP-綜合前置平臺ESB-企業(yè)效勞總線業(yè)務(wù)流程中藍(lán)色字體標(biāo)識接口所屬區(qū)域,如IPP->ESB標(biāo)識綜合前置平臺到ESB之間的接口簽到〔交易號900001〕(IPP調(diào)用S004046110900001)柜臺->ESB(穿透)->IPP->ESB->中間業(yè)務(wù)小前置->移動公司請求信息體序號標(biāo)記屬性中文描述數(shù)據(jù)類型必輸數(shù)據(jù)元素說明-soapenv:Body請求\響應(yīng)報(bào)文封裝元素--ns:Request請求報(bào)文根元素RequestBody請求報(bào)文體標(biāo)記交易碼Char(7)TxnCd固定為’900001’報(bào)文明細(xì)Char(217)ListDtl文件名Char(40)FileNme未用報(bào)文類型Char(1)MsgKind固定值為’1’是否等待標(biāo)識Char(1)WaitFlg用于某些交易如:現(xiàn)金繳費(fèi)確認(rèn)交易報(bào)文明細(xì)組成格式memcpy(send_mb.dts,"68",2);memcpy(send_mb.dts+2,sbuf,16);sbuf有下面方式生成:sprintf(sbuf,"%s%02X",sbuf,m_rzm[i]);DES_64(0,mbexchkey,a_rzm,m_rzm,8);intDES_64(intop,unsignedchar*key,unsignedchar*in,unsignedchar*out,intlen){des_ctxdc;unsignedlong*xkey,work[2];inti,x;/*printf("desmac--%s-%d;\n",__FILE__,__LINE__);*/des_key(&dc,key);xkey=op==0?dc.ek:dc.dk;x=len/8;if(len%8)x++;for(i=0;i<x;i++){scrunch(in,work);desfunc(work,xkey);unscrun(work,out);in+=8;}returnx*8;}響應(yīng)信息體序號標(biāo)記屬性中文描述數(shù)據(jù)類型必輸數(shù)據(jù)元素說明-soapenv:Body請求\響應(yīng)報(bào)文封裝元素--ns:Response響應(yīng)報(bào)文根元素ResponseBody響應(yīng)報(bào)文體標(biāo)記返回碼Char(5)FaultCode認(rèn)證碼Char(17)AuthIDMac校驗(yàn)碼Char(17)HMac簽退〔交易號900002〕(IPP調(diào)用S004046070900002)柜臺->ESB(穿透)->IPP->ESB->中間業(yè)務(wù)小前置->移動公司請求信息體序號標(biāo)記屬性中文描述數(shù)據(jù)類型必輸數(shù)據(jù)元素說明-soapenv:Body請求\響應(yīng)報(bào)文封裝元素--ns:Request請求報(bào)文根元素RequestBody請求報(bào)文體標(biāo)記交易碼Char(7)TxnCd固定為’900002’報(bào)文明細(xì)Char(217)ListDtl文件名Char(40)FileNme未用報(bào)文類型Char(1)MsgKind固定值為’1’是否等待標(biāo)識Char(1)WaitFlg用于某些交易如:現(xiàn)金繳費(fèi)確認(rèn)交易報(bào)文明細(xì)組成格式與簽到相同,請參照簽到響應(yīng)信息體序號標(biāo)記屬性中文描述數(shù)據(jù)類型必輸數(shù)據(jù)元素說明-soapenv:Body請求\響應(yīng)報(bào)文封裝元素--ns:Response響應(yīng)報(bào)文根元素ResponseBody響應(yīng)報(bào)文體標(biāo)記返回碼Char(5)FaultCode假設(shè)為’-1’,buff為0601返回內(nèi)容Char(37)FaultString包含返回碼、認(rèn)證碼的信息繳費(fèi)查詢〔交易碼100012〕(IPP調(diào)用S004046010100012)柜臺->ESB(穿透)->IPP->ESB->中間業(yè)務(wù)小前置->移動公司請求信息體序號標(biāo)記屬性中文描述數(shù)據(jù)類型必輸數(shù)據(jù)元素說明-soapenv:Body請求\響應(yīng)報(bào)文封裝元素--ns:Request請求報(bào)文根元素RequestBody請求報(bào)文體標(biāo)記號Char(14)MbPhnNo代理工程編號Char(3)ProjCd固定值‘01’操作員號Char(9)OperNo代理行號Char(9)AgtBkNo固定值‘68010141’響應(yīng)信息體下傳的文件名在報(bào)文的公共局部的RcvFileNme標(biāo)記中序號標(biāo)記屬性中文描述數(shù)據(jù)類型必輸數(shù)據(jù)元素說明-soapenv:Body請求\響應(yīng)報(bào)文封裝元素--ns:Response響應(yīng)報(bào)文根元素ResponseBody響應(yīng)報(bào)文體標(biāo)記姓名Char(12)CustNme客戶姓名狀態(tài)Char(1)CustStat0-正常1-高頻3-欠停4-報(bào)停5-掛失6預(yù)拆7-預(yù)銷8-強(qiáng)開9-強(qiáng)關(guān)a-銷號b-拆機(jī)未出單話費(fèi)Char(12)NoChagAcctAmt預(yù)存Char(12)RmnAmt補(bǔ)收月租費(fèi)Char(12)Fee文件明細(xì)條數(shù)Char(4)DetlNum返回碼Char(4)FaultCode‘0000’響應(yīng)下傳文件文件格式:序號域名數(shù)據(jù)類型說明年Char(4)月Char(2)本月欠費(fèi)Char(12)應(yīng)收款Char(12)滯納金Char(12)優(yōu)惠款Char(12)預(yù)存款劃撥Char(12)新交款Char(12)月租費(fèi)Char(12)特服費(fèi)Char(12)本網(wǎng)費(fèi)Char(12)漫游Char(12)長途費(fèi)Char(12)附加費(fèi)Char(12)其它費(fèi)Char(12)代收信息費(fèi)Char(12)頻占費(fèi)Char(12)農(nóng)話費(fèi)Char(12)補(bǔ)收費(fèi)Char(12)假設(shè)條數(shù)為多條,那么記錄依次循環(huán)。繳費(fèi)〔交易號200010〕(IPP調(diào)用S004046030200010)柜臺->ESB(穿透)->IPP->ESB->中間業(yè)務(wù)小前置->移動公司請求信息體序號標(biāo)記屬性中文描述數(shù)據(jù)類型必輸數(shù)據(jù)元素說明-soapenv:Body請求\響應(yīng)報(bào)文封裝元素--ns:Request請求報(bào)文根元素RequestBody請求報(bào)文體標(biāo)記號Char(14)MbPhnNo代理工程編號Char(3)ProjCd固定值‘01’操作員Char(9)OperNo實(shí)繳金額Char(13)DpstAmt交易流水號Char(9)TxnSeqNo交易日期Char(9)TxnDt交易時(shí)間Char(7)TxnTm代理行號Char(9)BrchNo固定為’68010141’Mac碼Char(9)HMac報(bào)文明細(xì)組成格式memcpy(send_mb.dts,"b000",4);//交易區(qū)分碼memcpy(send_mb.dts+4,"17",2);//地區(qū)碼memcpy(send_mb.dts+6,"01",2);memcpy(send_mb.dts+8,srcv.brno,8);//機(jī)構(gòu)號memcpy(send_mb.dts+16,srcv.tlsrno,8);//流水號memcpy(send_mb.dts+24,srcv.agekey,11);//號碼memcpy(send_mb.dts+35,srcv.txamt,12);//金額,12位串memcpy(send_mb.dts+47,srcv.cdate,8);//系統(tǒng)日期memcpy(send_mb.dts+55,srcv.ctime,6);//時(shí)間memcpy(send_mb.dts+61,sbuf,16);sbuf由下面方法生成:sprintf(macInBlock,"%8.8s%8.8s%11.11s%12.12s%8.8s%6.6s",srcv.brno,srcv.tlsrno,srcv.agekey,srcv.txamt,srcv.cdate,srcv.ctime);memcpy(todaymac,srcv.mackey,sizeof(todaymac));/*if(MacKey(todaymac,"01"))return_200010("0608")todaymac[8]='\0';*/PRN("\ntlsrno=%s;srcv.mackey=%s;\n",srcv.tlsrno,todaymac);if(genMAC(MAC_STAND,macInBlock,strlen(macInBlock),todaymac,vMac))return_200010("0609")memset(sbuf,'\0',sizeof(sbuf));for(i=0;i<8;i++)sprintf(sbuf,"%s%02X",sbuf,vMac[i]);PRN("sbuf=%s\n",sbuf);memcpy(send_mb.dts+61,sbuf,16);響應(yīng)信息體序號標(biāo)記屬性中文描述數(shù)據(jù)類型必輸數(shù)據(jù)元素說明-soapenv:Body請求\響應(yīng)報(bào)文封裝元素--ns:Response響應(yīng)報(bào)文根元素ResponseBody響應(yīng)報(bào)文體標(biāo)記返回碼Char(1)FaultCode‘0’標(biāo)識正確返回信息Char(5)FaultString機(jī)構(gòu)號Char(9)BrchNo交易流水號Char(9)_HostSeqNo校驗(yàn)字符串Char(86)ChkMsg退費(fèi)〔交易號100013〕(IPP調(diào)用S004046030100013)柜臺->ESB(穿透)->IPP->ESB->中間業(yè)務(wù)小前置->移動公司請求信息體序號標(biāo)記屬性中文描述數(shù)據(jù)類型必輸數(shù)據(jù)元素說明-soapenv:Body請求\響應(yīng)報(bào)文封裝元素--ns:Request請求報(bào)文根元素RequestBody請求報(bào)文體標(biāo)記號Char(12)MbPhnNo代理工程編號Char(3)ProjCd固定值‘01地區(qū)Char(3)AreaCd固定為’17’所屬城市Char(3)CityCd此處為’01’機(jī)構(gòu)號Char(9)BrchNo固定為’68010141’主機(jī)流水號Char(9)HostSeqNo新的主機(jī)流水號Char(9)NewHostSeqNo交易時(shí)間Char(15)TxnTm新的交易時(shí)間Char(15)NewTxnTmMac校驗(yàn)碼Char(9)HMac響應(yīng)信息體序號標(biāo)記屬性中文描述數(shù)據(jù)類型必輸數(shù)據(jù)元素說明-soapenv:Body請求\響應(yīng)報(bào)文封裝元素--ns:Response響應(yīng)報(bào)文根元素ResponseBody響應(yīng)報(bào)文體標(biāo)記返回碼Char(1)FaultCode為’0’標(biāo)識正確返回信息Char(5)FaultString校驗(yàn)字符串Char(86)ChkMsg查詢已交費(fèi)〔交易碼100010〕(IPP調(diào)用S004046010100010)柜臺->ESB(穿透)->IPP->ESB->中間業(yè)務(wù)小前置->移動公司請求信息體序號標(biāo)記屬性中文描述數(shù)據(jù)類型必輸數(shù)據(jù)元素說明-soapenv:Body請求\響應(yīng)報(bào)文封裝元素--ns:Request請求報(bào)文根元素RequestBody請求報(bào)文體標(biāo)記號Char(12)MbPhnNo代理工程編號Char(3)ProjCd固定值01代理行號Char(9)AgtBkNo固定值68010141操作員號Char(9)OperNo起始時(shí)間Char(15)StartTm終止時(shí)間Char(15)EndTm報(bào)文明細(xì)組成格式memcpy(send_mb.dts,"b000",4);//交易區(qū)分碼memcpy(send_mb.dts+4,recv_get_string(varname(key)),11);//號memcpy(send_mb.dts+15,"68010141",8);//代理行號memcpy(send_mb.dts+23,strlen(recv_get_string(varname(sttime)))==0?SYS.wkday:recv_get_string(varname(sttime)),8);//起始時(shí)間memcpy(send_mb.dts+31,"000000",6);memcpy(send_mb.dts+37,strlen(recv_get_string(varname(endtime)))==0?SYS.wkday:recv_get_string(varname(endtime)),8);//終止時(shí)間memcpy(send_mb.dts+45,"235959",6);響應(yīng)信息體(報(bào)文+文件)下傳的文件名在報(bào)文的公共局部的RcvFileNme標(biāo)記中序號標(biāo)記屬性中文描述數(shù)據(jù)類型必輸數(shù)據(jù)元素說明-soapenv:Body請求\響應(yīng)報(bào)文封裝元素--ns:Response響應(yīng)報(bào)文根元素ResponseBody響應(yīng)報(bào)文體標(biāo)記返回碼Char(1)FaultCode為’0’標(biāo)識正確返回信息Char(5)FaultS

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論