ISO8583接口的詳細(xì)資料
ISO8583包(簡(jiǎn)稱8583包)是一個(gè)國(guó)際標(biāo)準(zhǔn)的包格式,最多由128個(gè)字段域組成,每個(gè)域都有統(tǒng)一的規(guī)定,并有定長(zhǎng)與變長(zhǎng)之分。8583包前面一段為位圖,用來(lái)確定包的字段域組成情況。其中位圖是8583包的靈魂,它是打包解包確定字段域的關(guān)鍵,而了解每個(gè)字段域的屬性則是填寫數(shù)據(jù)的基礎(chǔ)。
1、 位圖描述如下:
位圖位置:1
格式:定長(zhǎng)
類型:B16(二進(jìn)制16位,16*8=128bit)
描述:
如將位圖的第一位設(shè)為'1',表示使用擴(kuò)展位圖(128個(gè)域),否則表示只使用基本位圖(64個(gè)域)。
如使用某數(shù)據(jù)域,應(yīng)在位圖中將相應(yīng)的位設(shè)位'1',如使用41域,需將位圖的41位設(shè)為'1'。
選用條件:如使用65到128域,需設(shè)位圖域第一位為'1'
2、每個(gè)域的定義如下:
typedef struct ISO8583
{
int bit_flag; /*域數(shù)據(jù)類型0 -- string, 1 -- int, 2 -- binary*/
char *data_name; /*域名*/
int length; /*數(shù)據(jù)域長(zhǎng)度*/
int length_in_byte; /*實(shí)際長(zhǎng)度(如果是變長(zhǎng))*/
int variable_flag; /*是否變長(zhǎng)標(biāo)志0:否 2:2位變長(zhǎng), 3:3位變長(zhǎng)*/
int datatyp; /*0 -- string, 1 -- int, 2 -- binary*/
char *data; /*存放具體值*/
int attribute; /*保留*/
} ISO8583;
ISO8583 Tbl8583[128] =
{
/* FLD 01 */ {0,"BIT MAP,EXTENDED", 8, 0, 0, 2, NULL,0},
/* FLD 02 */ {0,"PRIMARY ACCOUNT NUMBER", 22, 0, 2, 0, NULL,0},
/* FLD 03 */ {0,"PROCESSING CODE", 6, 0, 0, 0, NULL,0},
/* FLD 04 */ {0,"AMOUNT, TRANSACTION", 12, 0, 0, 1, NULL,0},
/* FLD 05 */ {0,"NO USE", 12, 0, 0, 0, NULL,0},
/* FLD 06 */ {0,"NO USE", 12, 0, 0, 0, NULL,0},
/* FLD 07 */ {0,"TRANSACTION DATE AND TIME", 10, 0, 0, 0, NULL,0},
/* FLD 08 */ {0,"NO USE", 8, 0, 0, 0, NULL,0},
/* FLD 09 */ {0,"NO USE", 8, 0, 0, 0, NULL,0},
/* FLD 10 */ {0,"NO USE", 8, 0, 0, 0, NULL,0},
/* FLD 11 */ {0,"SYSTEM TRACE AUDIT NUMBER", 6, 0, 0, 1, NULL,0},
/* FLD 12 */ {0,"TIME, LOCAL TRANSACTION", 6, 0, 0, 0, NULL,0},
/* FLD 13 */ {0,"DATE, LOCAL TRANSACTION", 4, 0, 0, 0, NULL,0},
/* FLD 14 */ {0,"DATE, EXPIRATION", 4, 0, 0, 0, NULL,0},
/* FLD 15 */ {0,"DATE, SETTLEMENT", 4, 0, 0, 0, NULL,0},
/* FLD 16 */ {0,"NO USE", 4, 0, 0, 0, NULL,0},
/* FLD 17 */ {0,"DATE, CAPTURE", 4, 0, 0, 0, NULL,0},
/* FLD 18 */ {0,"MERCHANT'S TYPE", 4, 0, 0, 0, NULL,0},
/* FLD 19 */ {0,"NO USE", 3, 0, 0, 0, NULL,0},
/* FLD 20 */ {0,"NO USE", 3, 0, 0, 0, NULL,0},
/* FLD 21 */ {0,"NO USE", 3, 0, 0, 0, NULL,0},
/* FLD 22 */ {0,"POINT OF SERVICE ENTRY MODE", 3, 0, 0, 0, NULL,0},
/* FLD 23 */ {0,"NO USE", 3, 0, 0, 0, NULL,0},
/* FLD 24 */ {0,"NO USE", 3, 0, 0, 0, NULL,0},
/* FLD 25 */ {0,"POINT OF SERVICE CONDITION CODE", 2, 0, 0, 0, NULL,0},
/* FLD 26 */ {0,"NO USE", 2, 0, 0, 0, NULL,0},
/* FLD 27 */ {0,"NO USE", 1, 0, 0, 0, NULL,0},
/* FLD 28 */ {0,"field27", 6, 0, 0, 0, NULL,0},
/* FLD 29 */ {0,"NO USE", 8, 0, 1, 0, NULL,0},
/* FLD 30 */ {0,"NO USE", 8, 0, 1, 0, NULL,0},
/* FLD 31 */ {0,"NO USE", 8, 0, 1, 0, NULL,0},
/* FLD 32 */ {0,"ACQUIRER INSTITUTION ID. CODE", 11, 0, 2, 0, NULL,0},
/* FLD 33 */ {0,"FORWARDING INSTITUTION ID. CODE", 11, 0, 2, 0, NULL,0},
/* FLD 34 */ {0,"NO USE", 28, 0, 2, 0, NULL,0},
/* FLD 35 */ {0,"TRACK 2 DATA", 37, 0, 2, 0, NULL,0},
/* FLD 36 */ {0,"TRACK 3 DATA",104, 0, 3, 0, NULL,0},
/* FLD 37 */ {0,"RETRIEVAL REFERENCE NUMBER", 12, 0, 0, 0, NULL,0},
/* FLD 38 */ {0,"AUTH. IDENTIFICATION RESPONSE", 6, 0, 0, 0, NULL,0},
/* FLD 39 */ {0,"RESPONSE CODE", 2, 0, 0, 0, NULL,0},
/* FLD 40 */ {0,"NO USE", 3, 0, 0, 0, NULL,0},
/* FLD 41 */ {0,"CARD ACCEPTOR TERMINAL ID.", 8, 0, 0, 0, NULL,0},
/* FLD 42 */ {0,"CARD ACCEPTOR IDENTIFICATION CODE", 15, 0, 0, 0, NULL,0},
/* FLD 43 */ {0,"CARD ACCEPTOR NAME LOCATION", 40, 0, 0, 0, NULL,0},
/* FLD 44 */ {0,"ADDITIONAL RESPONSE DATA", 25, 0, 2, 0, NULL,0},
/* FLD 45 */ {0,"NO USE", 76, 0, 2, 0, NULL,0},
/* FLD 46 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 47 */ {0,"field47", 999, 0, 3, 0, NULL,0},
/* FLD 48 */ {0,"ADDITIONAL DATA --- PRIVATE", 999, 0, 3, 0, NULL,0},
/* FLD 49 */ {0,"CURRENCY CODE,TRANSACTION", 3, 0, 0, 0, NULL,0},
/* FLD 50 */ {0,"CURRENCY CODE,SETTLEMENT", 3, 0, 0, 0, NULL,0},
/* FLD 51 */ {0,"NO USE", 3, 0, 0, 0, NULL,0},
/* FLD 52 */ {0,"PERSONAL IDENTIFICATION NUMBER DATA", 8, 0, 0, 2, NULL,0},
/* FLD 53 */ {0,"SECURITY RELATED CONTROL INformATION", 16, 0, 0, 0, NULL,0},
/* FLD 54 */ {0,"ADDITIONAL AMOUNTS",120, 0, 3, 0, NULL,0},
/* FLD 55 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 56 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 57 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 58 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 59 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 60 */ {0,"NO USE", 5, 0, 3, 0, NULL,0},
/* FLD 61 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 62 */ {0,"NO USE", 11, 0, 3, 0, NULL,0},
/* FLD 63 */ {0,"NO USE", 11, 0, 3, 0, NULL,0},
/* FLD 64 */ {0,"MESSAGE AUTHENTICATION CODE FIELD", 8, 0, 0, 2, NULL,0},
/* FLD 65 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 66 */ {0,"NO USE", 1, 0, 0, 0, NULL,0},
/* FLD 67 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 68 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 69 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 70 */ {0,"SYSTEM MANAGEMENT INformATION CODE", 3, 0, 0, 0, NULL,0},
/* FLD 71 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 72 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 73 */ {0,"NO USE", 6, 0, 0, 0, NULL,0},
/* FLD 74 */ {0,"NUMBER OF CREDITS", 10, 0, 0, 0, NULL,0},
/* FLD 75 */ {0,"REVERSAL NUMBER OF CREDITS", 10, 0, 0, 0, NULL,0},
/* FLD 76 */ {0,"NUMBER OF DEBITS", 10, 0, 0, 0, NULL,0},
/* FLD 77 */ {0,"REVERSAL NUMBER OF DEBITS", 10, 0, 0, 0, NULL,0},
/* FLD 78 */ {0,"NUMBER OF TRANSFER", 10, 0, 0, 0, NULL,0},
/* FLD 79 */ {0,"REVERSAL NUMBER OF TRANSFER", 10, 0, 0, 0, NULL,0},
/* FLD 80 */ {0,"NUMBER OF INQUIRS", 10, 0, 0, 0, NULL,0},
/* FLD 81 */ {0,"AUTHORIZATION NUMBER", 10, 0, 0, 0, NULL,0},
/* FLD 82 */ {0,"NO USE", 12, 0, 0, 0, NULL,0},
/* FLD 83 */ {0,"CREDITS,TRANSCATION FEEAMOUNT", 12, 0, 0, 0, NULL,0},
/* FLD 84 */ {0,"NO USE", 12, 0, 0, 0, NULL,0},
/* FLD 85 */ {0,"DEBITS,TRANSCATION FEEAMOUNT", 12, 0, 0, 0, NULL,0},
/* FLD 86 */ {0,"AMOUNT OF CREDITS", 16, 0, 0, 0, NULL,0},
/* FLD 87 */ {0,"REVERSAL AMOUNT OF CREDITS", 16, 0, 0, 0, NULL,0},
/* FLD 88 */ {0,"AMOUNT OF DEBITS", 16, 0, 0, 0, NULL,0},
/* FLD 89 */ {0,"REVERSAL AMOUNT OF DEBITS", 16, 0, 0, 0, NULL,0},
/* FLD 90 */ {0,"ORIGINAL DATA ELEMENTS", 42, 0, 0, 0, NULL,0},
/* FLD 91 */ {0,"FILE UPDATE CODE", 1, 0, 0, 0, NULL,0},
/* FLD 92 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 93 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 94 */ {0,"SERVICE INDICATOR", 7, 0, 0, 0, NULL,0},
/* FLD 95 */ {0,"REPLACEMENT AMOUNTS", 42, 0, 0, 0, NULL,0},
/* FLD 96 */ {0,"NO USE", 8, 0, 0, 0, NULL,0},
/* FLD 97 */ {0,"AMOUNT OF NET SETTLEMENT", 16, 0, 0, 0, NULL,0},
/* FLD 98 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 99 */ {0,"SETTLEMENT INSTITUTION ID", 11, 0, 2, 0, NULL,0},
/* FLD 100 */ {0,"RECVEING INSTITUTION ID", 11, 0, 2, 0, NULL,0},
/* FLD 101 */ {0,"FILENAME", 17, 0, 2, 0, NULL,0},
/* FLD 102 */ {0,"ACCOUNT IDENTIFICATION1", 28, 0, 2, 0, NULL,0},
/* FLD 103 */ {0,"ACCOUNT IDENTIFICATION2", 28, 0, 2, 0, NULL,0},
/* FLD 104 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 105 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 106 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 107 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 108 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 109 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 110 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 111 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 112 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 113 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 114 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 115 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 116 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 117 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 118 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 119 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 120 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 121 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 122 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 123 */ {0,"NEW PIN DATA", 8, 0, 3, 2, NULL,0},
/* FLD 124 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 125 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 126 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 127 */ {0,"NO USE", 999, 0, 3, 0, NULL,0},
/* FLD 128 */ {0,"MESSAGE AUTHENTICATION CODE FIELD", 8, 0, 0, 2, NULL,0},
};
3、變長(zhǎng),定長(zhǎng)域說(shuō)明
如第二域:域名為主帳號(hào),
數(shù)據(jù)類型為string
長(zhǎng)度為22(是長(zhǎng)長(zhǎng)度不得超過(guò)此數(shù))
是個(gè)2位變長(zhǎng)域
由于是2位變長(zhǎng),在打包時(shí)需在數(shù)據(jù)域前加上數(shù)據(jù)的實(shí)際長(zhǎng)度,如為19位,則表示為:
19+數(shù)據(jù)值(即前兩位為長(zhǎng)度)
如第三域:域名為處理碼,
數(shù)據(jù)類型為string
長(zhǎng)度為6
是個(gè)定長(zhǎng)域
必須填滿6位。
附A:ISO8583各域段的說(shuō)明
1,信息類型(message type)定義
位圖位置:-
格式:定長(zhǎng)
類型:N4
描述:
數(shù)據(jù)包的第一部分,定義數(shù)據(jù)包的類型。
數(shù)據(jù)類型由數(shù)據(jù)包的發(fā)起者設(shè)定,應(yīng)遵循以下要求:
數(shù)據(jù)包開始部分必須是信息類型;
對(duì)不支持的信息類型能給出拒絕應(yīng)答。
0100授權(quán)交易
0110授權(quán)交易答復(fù)
0200金融交易
0210金融交易答復(fù)
0240查詢交易
0250查詢交易答復(fù)
0400沖正交易
0410沖正交易答復(fù)
0800管理交易
0810管理交易答復(fù)
2,位圖(Bit Map) - 基本位圖和擴(kuò)展位圖
位圖位置:1
格式:定長(zhǎng)
類型:B16
描述:
如將位圖的第一位設(shè)為'1',表示使用擴(kuò)展位圖,否則表示只使用基本位圖。
如使用某數(shù)據(jù)域,應(yīng)在位圖中將相應(yīng)的位設(shè)位'1',如使用41域,需將位圖的41位設(shè)為'1'。
選用條件:如使用65到128域,需設(shè)位圖域?yàn)?1'
3,Bit02主帳號(hào)(Primary Account Number )
位圖位置:02
格式:變長(zhǎng),LLVAR
類型:N..22
描述:
唯一的確認(rèn)一個(gè)用戶交易的基本帳號(hào)。
由于銀行電子服務(wù)系統(tǒng)涉及多個(gè)應(yīng)用系統(tǒng),而帳號(hào)長(zhǎng)度最多為22位,故將原標(biāo)準(zhǔn)的19長(zhǎng)度改為22位。
Bit03 處理代碼 (Processing Code )
位圖位置:03
格式:定長(zhǎng)
類型:N6
描述:用于描述交易對(duì)客戶帳戶造成何種影響的代碼。
處理代碼和信息碼一起可唯一定義一種交易的類型。
處理代碼由以下三部分組成:
位置描述
1-2交易動(dòng)作碼
3-4付出帳戶類型,用于借記類,如查詢、代收費(fèi)、轉(zhuǎn)場(chǎng)交易。
5-6收入帳戶類型,用于代收費(fèi)、轉(zhuǎn)帳等。
其中:
ff : 付出帳戶
tt: 收入帳戶
* 視主機(jī)而定
5,Bit04 交易金額 (Amount, Transaction)
位圖位置:04
格式:定長(zhǎng)
類型:N12
描述:帳戶人要求交易的交易金額,不含任何處理和交易費(fèi)用。
金額的表示和貨幣代碼有關(guān),應(yīng)能表示相應(yīng)貨幣的最小單位。參ISO4217有關(guān)貨幣代碼定義。
如“000000000100”用于表示美元,表示1.00元;如用于表示意大利貨幣,則表示100里拉。對(duì)于查詢等交易,應(yīng)設(shè)交易金額為“000000000000”。
6,Bit06交易日期和時(shí)間(Transmission Date and Time)
位圖位置:07
格式:定長(zhǎng),MMDDhhmmss
類型:N10
描述:本地交易日期和時(shí)間
7,Bit11系統(tǒng)跟蹤號(hào)(Systems Trace Audit Number)
位圖位置:11
格式:定長(zhǎng)
類型:N6
描述:終端交易的跟蹤號(hào)碼。
交易發(fā)起終端填寫,和“交易日期、時(shí)間”、信息類型等合在一起可唯一定義某一個(gè)終端的唯一一筆交易。即是說(shuō),在同一天,對(duì)一終端,同一類交易的系統(tǒng)跟蹤號(hào)應(yīng)保證不同。系統(tǒng)跟蹤號(hào)在交易過(guò)程中不能修改。使用此域來(lái)匹配請(qǐng)求和通知類交易的返回。
應(yīng)用系統(tǒng)使用此域來(lái)檢查收到的授權(quán)、金融、自動(dòng)沖正、結(jié)算、管理和網(wǎng)管等類交易的應(yīng)答包是否是其請(qǐng)求包的應(yīng)答。
系統(tǒng)跟蹤號(hào)不用于匹配自動(dòng)沖正交易,也不用于在預(yù)授權(quán)消費(fèi)時(shí)匹配前面的預(yù)授權(quán)交易。參90域。
對(duì)于銀行電子服務(wù)系統(tǒng),其系統(tǒng)跟蹤號(hào)是交易流水號(hào)。
8,Bit12本地交易時(shí)間(Time ,Local Transaction)
位圖位置:12
格式:定長(zhǎng),hhmmss
類型:N6
描述:交易在終端上發(fā)生的時(shí)間。
本地交易時(shí)間在交易處理過(guò)程中不能改變。在自動(dòng)沖正,存貯轉(zhuǎn)發(fā)時(shí),本地交易時(shí)間不能改變。
9,Bit13本地交易日期(Date ,Local Transaction)
位圖位置:13
格式:定長(zhǎng),MMDD
類型:N4
描述:交易在終端上發(fā)生的時(shí)間。
本地交易時(shí)間不能改變,在自動(dòng)沖正、存儲(chǔ)轉(zhuǎn)發(fā)交易時(shí),本地交易時(shí)間也不能改變。
10,Bit14有效期(Date ,Expiration)
位圖位置:14
格式:定長(zhǎng),YYMM
類型:N4
描述:卡的有效期,年年月月
由于卡類寫磁格式不同,收單行可能提不出卡的有效期,授權(quán)機(jī)構(gòu)從卡的二磁道中提取卡的有效期。如卡,無(wú)二磁道,收單行應(yīng)要求手工錄入卡的有效期。
選用條件:100、200、400等交易如沒(méi)有2、3磁道時(shí),一定要有此域。
11,Bit15結(jié)算日期(Date ,Settlement)
位圖位置:15
格式:定長(zhǎng),MMDD
類型:N4
描述:
銀行電子服務(wù)系統(tǒng)和主機(jī)結(jié)算的時(shí)間,格式月月日日。結(jié)帳日期前發(fā)生的交易參加當(dāng)天結(jié)算。
在結(jié)算時(shí),結(jié)帳日期也用于計(jì)算處理、交易費(fèi)用。
12,Bit17獲取日期(Date ,Capture)
位圖位置:17
格式:定長(zhǎng),MMDD
類型:N4
描述:從主機(jī)獲取交易的記帳日期。通常用于主機(jī)和商戶清算。
13,Bit18商戶類型(Merchant's Type)
位圖位置:18
格式:定長(zhǎng)
類型:N4
描述:定義商戶產(chǎn)品和服務(wù)類型的代碼
商戶類型用于金融、授權(quán)交易,用于指定服務(wù)點(diǎn)的類型。它主要有以下用途:
決定預(yù)授權(quán)交易得到確認(rèn)的最長(zhǎng)時(shí)間;
控制合法限額;
為交易授權(quán)處理,控制網(wǎng)絡(luò)操作規(guī)則;
欺詐檢測(cè);
用于商戶分類報(bào)表;
交易費(fèi)用處理。
根據(jù)ISO8583標(biāo)準(zhǔn),應(yīng)使用相應(yīng)的國(guó)家標(biāo)準(zhǔn)。
商戶類型代碼表如下:
商戶類型代碼行業(yè)類型說(shuō)明
4215郵遞服務(wù)
4511民航
4722旅游
4782過(guò)橋費(fèi)
4789其他運(yùn)輸服務(wù)
4614電信服務(wù)
5542加油站
5812餐館
5999購(gòu)物
6010金融機(jī)構(gòu)-人工現(xiàn)金支付
6011金融機(jī)構(gòu)-自動(dòng)現(xiàn)金支付
6012金融機(jī)構(gòu)-各類服務(wù)
7011酒店、旅館
7299各類個(gè)人服務(wù):洗衣、美容、
7399各類商業(yè)服務(wù):停車場(chǎng)、租車、廣告、其他服務(wù)
7699各類維修服務(wù):維修、洗車、拖車
7996娛樂(lè):電影、劇院、體育、游戲
8099醫(yī)療服務(wù)
8111法律服務(wù)
8999各類專業(yè)服務(wù):會(huì)計(jì)、教育、裝修、工程
選用條件:服務(wù)點(diǎn)終端發(fā)起的交易一定要有此域。
14,Bit22服務(wù)點(diǎn)輸入方式(Point-of-Service Entry Mode)
位圖位置:22
格式:定長(zhǎng)
類型:N3
描述:在服務(wù)終端上定義PIN和PAN的輸入方式。
服務(wù)點(diǎn)輸入方式包含以下兩個(gè)方面組合而成:
位置描述
1-2在服務(wù)終端上PAN有效期輸入方式
3-3在服務(wù)終端上PIN的輸入方式
PAN的輸入方式編碼如下:
PAN輸入方式描述
00不知
01手工
02讀磁卡
03條碼掃描儀(BAR)
04光學(xué)符號(hào)閱讀器(OCR)
05集成電路卡(IC卡)
PIN的輸入方式編碼如下:
PIN輸入方式描述
0不知
1終端能接收PIN
2終端不能接收PIN
選用條件:服務(wù)點(diǎn)終端發(fā)起的交易一定要有此域。
15,Bit25服務(wù)點(diǎn)條件代碼(Point-of-Service Condition Code)
位圖位置:25
格式:定長(zhǎng)
類型:N2
描述:定義交易發(fā)生的服務(wù)點(diǎn)類型
用法說(shuō)明:下面是CYBERBANK支持的服務(wù)點(diǎn)條件代碼。
服務(wù)點(diǎn)條件代碼服務(wù)點(diǎn)終端類型
2自動(dòng)柜員機(jī)(ATM)
10銀行終端(10)
14POS
20電話銀行
16,Bit32收單機(jī)構(gòu)標(biāo)識(shí)碼(Acquirer institution Identification)
位圖位置:32
格式:LLVAR
類型:N..11
描述:在金融交易中此域表示交易發(fā)生的銀行機(jī)構(gòu)的標(biāo)識(shí)碼。應(yīng)答數(shù)據(jù)包必須和請(qǐng)求數(shù)據(jù)包此域相同。
17,Bit33授權(quán)機(jī)構(gòu)標(biāo)識(shí)碼(Forwarding Institution Identification Code)
位圖位置:33
格式:LLVAR
類型:N..11
描述:在金融交易中此域表示帳戶所在的銀行機(jī)構(gòu)的標(biāo)識(shí)碼
在網(wǎng)管交易800/810中,本域含有交易發(fā)起機(jī)構(gòu)的代碼。 應(yīng)答數(shù)據(jù)包必須和請(qǐng)求數(shù)據(jù)包此域相同。
18,Bit35二磁道數(shù)據(jù)(Track 2 Data)
位圖位置:35
格式:LLVAR
類型:Z..37
描述:寫在卡二磁道的數(shù)據(jù)。數(shù)據(jù)組成遵循ISO7811-1985標(biāo)準(zhǔn),數(shù)據(jù)中包含域分隔符,但不包含卡啟始、結(jié)束符、LRC等。
收卡行應(yīng)檢測(cè)卡的二磁道是否符合國(guó)際標(biāo)準(zhǔn)。
為支持國(guó)際交換收單行應(yīng)將二磁道中的分隔符換為“=”。除此外不能對(duì)二磁道數(shù)據(jù)進(jìn)行任何修改,如修改PAN的校驗(yàn)字、有效期、服務(wù)碼等。
19,Bit36三磁道數(shù)據(jù)(Track 3 Data)
位圖位置:36
格式:LLLVAR
類型:Z...104
描述:寫在卡三磁道的數(shù)據(jù)。數(shù)據(jù)應(yīng)組成遵循ISO4909標(biāo)準(zhǔn),數(shù)據(jù)中包含域分隔符,但不包含卡啟始、結(jié)束符、LRC等。
注意:長(zhǎng)度說(shuō)明為3位數(shù)字長(zhǎng)。
20,Bit37檢索索引號(hào)(Retrieval Reference Number)
位圖位置:37
格式:定長(zhǎng)
類型:AN12
描述:檢索索引號(hào)用來(lái)在任何時(shí)間標(biāo)識(shí)一個(gè)金融、授權(quán)、自動(dòng)沖正交易。
檢索索引號(hào)不要求打印在持卡人的帳單上。它的主要目的是在收單行和授權(quán)行之間定義一個(gè)數(shù)據(jù)項(xiàng)用于跟蹤和檢索交易。授權(quán)機(jī)構(gòu)可以將檢索索引號(hào)打印在客戶的對(duì)帳單上。
檢索索引號(hào)由收單行分配。
選用條件:可包含在收單機(jī)構(gòu)的交易請(qǐng)求中。如在交易請(qǐng)求中有,則應(yīng)答數(shù)據(jù)中一定應(yīng)原樣返回。
21,Bit38授權(quán)碼(Authorization Identification)
位圖位置:38
格式:定長(zhǎng)
類型:AN6
描述:交易授權(quán)機(jī)構(gòu)返回的返回代碼。
授權(quán)碼用于在服務(wù)點(diǎn)終端上信用卡授權(quán);
授權(quán)機(jī)構(gòu)按網(wǎng)絡(luò)操作規(guī)定,可選使用本域。
22,Bit39返回碼(Response Code)
位圖位置:39
格式:定長(zhǎng)
類型:AN2
描述:對(duì)一交易定義其處理結(jié)果的編碼。
返回碼用于說(shuō)明授權(quán)機(jī)構(gòu)對(duì)金融(授權(quán))交易的處理狀態(tài);也用來(lái)指明自動(dòng)沖正交易的沖正原因;還用來(lái)指出目標(biāo)主機(jī)已接收到文件修改、結(jié)算、管理、網(wǎng)管等交易請(qǐng)求。
返回碼應(yīng)盡可能準(zhǔn)確,應(yīng)盡可能描述清楚所遇到的問(wèn)題和狀態(tài)。網(wǎng)絡(luò)交換主機(jī)、收單行主機(jī)有可能會(huì)按不同的返回碼收取不同的交易處理費(fèi)用,并執(zhí)行不同的處理過(guò)程。
23,Bit41收卡單位終端標(biāo)識(shí)碼(Card Acceptor Terminal Identification)
位圖位置:41
格式:定長(zhǎng)
類型:ANS8
描述:定義在收單單位中定義一個(gè)服務(wù)終端的標(biāo)識(shí)碼,在同一商戶中服務(wù)終端標(biāo)識(shí)碼應(yīng)唯一。
24,Bit42收卡商戶定義碼(Card Acceptor Identification Code)
位圖位置:42
格式:定長(zhǎng)
類型:ANS15
描述:在本地和網(wǎng)絡(luò)中定義交易單位(商戶)的編碼。
25,Bit43收卡商戶位置(Card Acceptor Location)
位圖位置:43
格式:定長(zhǎng)
類型:ANS40
描述:在本地和網(wǎng)絡(luò)中定義收卡單位(商戶)的國(guó)家、省。城市等。
選用條件:如對(duì)外卡網(wǎng)絡(luò),一定要包含此域。
26,Bit44附加返回?cái)?shù)據(jù)(Additional ResponseData)
位圖位置:44
格式:LLVAR
類型:ANS..25
描述:在金融(授權(quán))交易中授權(quán)機(jī)構(gòu)返回的其他信息。
27,Bit48附加數(shù)據(jù)-私用(Additional Data-Private)
位圖位置:48
格式:LLLVAR
類型:ANS...999
描述:銀行電子服務(wù)系統(tǒng)使用此域作以下用途
存放批量查詢的返回?cái)?shù)據(jù)
其格式與輸出格式表對(duì)應(yīng)
28,Bit49交易貨幣代碼(Currency Code,Transaction)
位圖位置:49
格式:定長(zhǎng)
類型:AN3
描述:按ISO4217定義的交易貨幣代碼,用來(lái)表示“交易金額”(field04)所用的貨幣種類。
交易貨幣代碼是指在收單單位進(jìn)行交易所用的交易種類。
29,Bit50結(jié)算貨幣代碼(Currency Code,Settlement)
位圖位置:50
格式:定長(zhǎng)
類型:AN3
描述:按ISO4217定義的結(jié)算貨幣代碼,用來(lái)表示結(jié)算金額、結(jié)算處理費(fèi)、結(jié)算交易費(fèi)等所用的貨幣種類。
結(jié)算貨幣代碼是指在進(jìn)行結(jié)算和清算過(guò)程中所用的貨幣種類。
30,Bit52用戶密碼(PIN)數(shù)據(jù)(PIN Data)
位圖位置:52
格式:定長(zhǎng)
類型:B16
描述:用戶在服務(wù)終端上交易用于識(shí)別用戶合法性的一些數(shù)字。
PIN在分行主機(jī)用分行主機(jī)密鑰按ANSIX9.8標(biāo)準(zhǔn)加密,形成密文塊。
選用條件:如果在終端上輸入了密碼,就需要此域。
31,Bit53密碼相關(guān)控制信息(Security Related Control)
位圖位置:53
格式:定長(zhǎng)
類型:AN16
描述:本域提供有關(guān)密碼塊的附加信息,用于指出用于PIN計(jì)算的PIN key,用于MAC計(jì)算的MAC key。
本域格式如下表所示:
0-1格式代碼2N“20”
2-3PIN加密算法2N“01”:DES
4-5密文塊格式2N“01”:ANSI
6PIN密鑰索引1N‘1’或‘2’
7MAC密鑰索引1N‘1’或‘2’
8-11MAC檢查數(shù)據(jù)4B
12-15填充4N
在BOC信用卡網(wǎng)絡(luò)中PIN和MAC各使用兩個(gè)密鑰---'1'號(hào)和'2'密鑰,交易中計(jì)算PIN和MAC時(shí)只能各用某一個(gè)KEY,同時(shí)需將所用的KEY索引號(hào)填寫此域。 選用條件:如果有PIN域或MAC域,一定需有此域。
32,Bit54附加金額(Additional Amounts)
位圖位置:54
格式:LLLVAR
類型:ANS...120
描述:此域由授權(quán)行主機(jī)將客戶的余額返回給收單終端,以顯示或打印在客戶回單上。
在此域中最多可有6個(gè)余額返回,每個(gè)余額返回格式如下:
位置描述
0-1處理碼3-4或5-6位定義的帳號(hào)類型
2-3金額類型:01-帳戶金額
02-可用金額
03-擁有金額
04-應(yīng)付金額
40-可用取款限額
56-可用轉(zhuǎn)帳限額
4-6金額的貨幣代碼
7‘D’-借記金額,’C’-貸記金額
8-19余額數(shù)目
六個(gè)余額中必須返回可用余額,在ATM、POS上顯示可用余額
33,Bit64信息確認(rèn)碼(MAC)
位圖位置:64
格式:定長(zhǎng)
類型:B16
描述:數(shù)據(jù)包的最后一個(gè)域,用于驗(yàn)證信息來(lái)源的合法性,以及數(shù)據(jù)包中數(shù)據(jù)是否未被篡改。
MAC的計(jì)算參ANSIX.99,(最后八字節(jié)未滿八位者左補(bǔ)零,右補(bǔ)零?)
為提高效率,在發(fā)送者和接收者之間,只有以下一些重要的域參加MAC的計(jì)算。數(shù)據(jù)包中如果存在以下數(shù)據(jù)域,它們將參加MAC的計(jì)算。
1位圖域名
2基本帳號(hào)
3處理代碼
4交易金額
11系統(tǒng)跟蹤號(hào)
12本地交易時(shí)間
13本地交易日期
32收單機(jī)構(gòu)代碼
38授權(quán)碼
39返回碼
41收單終端代碼
49交易貨幣代碼
95替換金額
選用條件:只使用了1-64域的數(shù)據(jù)包使用此域。
34,Bit70管理信息碼(System Management Indormation Code)
位圖位置:70
格式:定長(zhǎng)
類型:N3
描述:
用于定義和維護(hù)銀行電子服務(wù)系統(tǒng)內(nèi)部通訊網(wǎng)絡(luò)狀態(tài)和應(yīng)用工作狀態(tài)。
網(wǎng)絡(luò)管理信息代碼用于管理清算日期"cutoff",通訊"sign on/sign off","key exchange"等。
支持以下一些網(wǎng)絡(luò)管理信息碼
NMIC網(wǎng)絡(luò)管理信息碼動(dòng)作
001簽到(Sign on)
002簽退(Sign off)
101交換密鑰(Key exchange)
201結(jié)帳日期切換(Cutoff)
202結(jié)帳日期切換完成
301測(cè)試(Echo test)
35,Bit74貸記交易筆數(shù)(Transaction Number)
位圖位置:74
格式:定長(zhǎng)
類型:N10
描述:貸記金融交易總的成功交易次數(shù)
CYBERBANK軟件在收到如下一個(gè)處理代碼時(shí)會(huì)增加貸記交易次數(shù)。
交易碼交易服務(wù)
00貸記,購(gòu)物與服務(wù)
01貸記,取現(xiàn)
02貸記,調(diào)整(客戶調(diào)整)
36,Bit75貸記自動(dòng)沖正交易筆數(shù)(Credits,Reversal Number)
位圖位置:75
格式:定長(zhǎng)
類型:N10
描述:貸記收單行自動(dòng)沖正、“ChargeBack"等交易總的交易次數(shù)
CYBERBANK軟件在收到如下一個(gè)處理代碼時(shí)會(huì)增加貸記自動(dòng)沖正交易筆數(shù)
交易碼交易服務(wù)
20貸記,退貨
21貸記,存款
22貸記,調(diào)整(客戶修改)
37,Bit76借記交易筆數(shù)(Debits,Number)
位圖位置:76
格式:定長(zhǎng)
類型:N10
描述:借記金融交易總的成功交易次數(shù)
CYBERBANK軟件在收到如下一個(gè)處理代碼時(shí)會(huì)增加借記交易次數(shù)。
交易碼交易服務(wù)
00借記,購(gòu)物與服務(wù)
01借記,取現(xiàn)
02借記,調(diào)整(客戶調(diào)整)
38,Bit77借記自動(dòng)沖正交易筆數(shù)(Debits,Reversal Number)
位圖位置:77
格式:定長(zhǎng)
類型:N10
描述:借記收單行自動(dòng)沖正、“ChargeBack"等交易總的交易次數(shù)
CYBERBANK軟件在收到如下一個(gè)處理代碼時(shí)會(huì)增加借記重發(fā)交易次數(shù),并在清算表報(bào)中反映。
交易碼交易服務(wù)
20借記(!!!),退貨
21借記,存款
22借記,調(diào)整(客戶修改)
39,Bit78轉(zhuǎn)帳交易筆數(shù)(Transfers,Number)
位圖位置:78
格式:定長(zhǎng)
類型:N10
描述:轉(zhuǎn)帳的交易總次數(shù)。
系統(tǒng)在收到如下一個(gè)處理代碼的金融交易時(shí)會(huì)增加轉(zhuǎn)帳交易的次數(shù)。
交易碼交易服務(wù)
40客戶相關(guān)帳戶間轉(zhuǎn)帳
40,Bit79轉(zhuǎn)帳自動(dòng)沖正交易筆數(shù)(Transfers,Reversal Number)
位圖位置:79
格式:定長(zhǎng)
類型:N10
描述:轉(zhuǎn)帳的自動(dòng)沖正交易總次數(shù)。
系統(tǒng)在收到如下一個(gè)處理代碼的自動(dòng)沖正交易時(shí)會(huì)增加轉(zhuǎn)帳自動(dòng)沖正交易的次數(shù)。
交易碼交易服務(wù)
40客戶相關(guān)帳戶間轉(zhuǎn)帳
41,Bit80查詢交易筆數(shù)(Inquiries,Number)
位圖位置:80
格式:定長(zhǎng)
類型:N10
描述:成功的查詢交易次數(shù)。
系統(tǒng)軟件在收到如下一個(gè)處理代碼時(shí)會(huì)增加查詢交易次數(shù)。
交易碼交易服務(wù)
30查詢可用金額
42,Bit81授權(quán)交易筆數(shù)(Authorization,Number)
位圖位置:81
格式:定長(zhǎng)
類型:N10
描述:成功的授權(quán)交易總額
在收到一個(gè)授權(quán)交易時(shí)系統(tǒng)將授權(quán)交易筆數(shù)加一。
43,Bit83貸記交易費(fèi)金額(Credits,Transaction FeeAmount)
位圖位置:83
格式:定長(zhǎng)
類型:N12
描述:凈交易費(fèi)用,如交易金額為正。
44,Bit85借記交易費(fèi)金額(Debits,Transaction FeeAmount)
位圖位置:85
格式:定長(zhǎng)
類型:N12
描述:凈交易費(fèi)用,如交易金額為負(fù)。
45,Bit86貸記交易金額(Credits,Amount)
位圖位置:86
格式:定長(zhǎng)
類型:N16
描述:貸記金融交易總的交易金額,不含任何費(fèi)用。
系統(tǒng)在收到如下一個(gè)處理代碼時(shí)會(huì)增加貸記交易金額,并在清算表報(bào)中反映。
交易碼交易服務(wù)
20貸記,退貨
21貸記,存款
22貸記,調(diào)整(客戶修改)
46,Bit87貸記自動(dòng)沖正金額(Credits,Reversal Amount)
位圖位置:87
格式:定長(zhǎng)
類型:N16
描述:信用卡自動(dòng)沖正交易的總金額,不含任何費(fèi)用。
47,Bit88借記交易金額(Debits,Amount)
位圖位置:88
格式:定長(zhǎng)
類型:N16
描述:借記金融交易總的交易金額,不含任何費(fèi)用。
系統(tǒng)在收到如下一個(gè)處理代碼時(shí)會(huì)增加借記交易金額,并在清算表報(bào)中反映。
交易碼交易服務(wù)
00借記,購(gòu)物與服務(wù)
01借記,取現(xiàn)
02借記,調(diào)整(客戶調(diào)整)
48,Bit89借記自動(dòng)沖正交易金額(Debits,Reversal Amount)
位圖位置:89
格式:定長(zhǎng)
類型:N16
描述:借記自動(dòng)沖正交易的總金額,不含任何費(fèi)用。
49,Bit90原交易的數(shù)據(jù)元素(Original Data Elements)
位圖位置:90
格式:定長(zhǎng)
類型:N42
描述:存放原交易的一些數(shù)據(jù),用于修改或自動(dòng)沖正。
數(shù)據(jù)由以下五部分組成:
位置描述
1-4信息類型碼
設(shè)為原交易的信息類型代碼
5-10系統(tǒng)跟蹤號(hào)
原交易系統(tǒng)跟蹤號(hào)
11-20交易日期和時(shí)間
原交易的交易日期和時(shí)間
21-31原收單機(jī)構(gòu)
原交易的收單機(jī)構(gòu)
不足11位的機(jī)構(gòu)代碼,左補(bǔ)‘0’
32-42原向前機(jī)構(gòu)
原交易的收單機(jī)構(gòu)
不足11位的機(jī)構(gòu)代碼,左補(bǔ)‘0’
50,Bit91文件修改編碼(File Update Code)
位圖位置:91
格式:定長(zhǎng)
類型:AN1
描述:用此域指示某文件怎樣維護(hù)。
CYBERBANK支持以下一些修改代碼:
1增加記錄
2改變記錄
3刪除記錄
5查詢
7增加文件
選用條件:
51,Bit94服務(wù)指示碼(Service Indicator)
位圖位置:94
格式:定長(zhǎng)
類型:AN7
描述:指示文件修改服務(wù)。
選用條件:
52,Bit95代替金額(Replacement Amounts)
位圖位置:95
格式:定長(zhǎng)
類型:N42!!!
描述:客戶修改或部分取消已完成的交易,最后實(shí)際發(fā)生的交易金額,
交易的原交易金額存放在90域。
本域由以下4部分組成
Sub-ElementAmountAttribute
交易實(shí)際金額N12
結(jié)算實(shí)際金額N12
實(shí)際交易費(fèi)用X+N8
實(shí)際結(jié)算費(fèi)用X+N8
53,Bit97凈結(jié)算金額(Net Settlement Amount)
位圖位置:97
格式:定長(zhǎng)
類型:X+N16
描述:此域?yàn)閮艚Y(jié)帳金額。
502交易中用于發(fā)送當(dāng)天的凈結(jié)算金額
例:“C0000000020000000”,表示貸方('+'?)200000.00元。
“D0000000020000000”,表示借方('-'?)200000.00元。
54,Bit99結(jié)算機(jī)構(gòu)碼(Settlement Institution Identification)
位圖位置:99
格式:LLVAR
類型:N..11
描述:此域存放接收清算信息的機(jī)構(gòu)代碼。
返回?cái)?shù)據(jù)包此域必須和請(qǐng)求數(shù)據(jù)包一致。
55,Bit100接收機(jī)構(gòu)碼(Receiving Institution Identification)
位圖位置:100
格式:LLVAR
類型:N..11
描述:金融交易此域存放授權(quán)機(jī)構(gòu)代碼。
網(wǎng)管類交易,800/820交易,此域存放請(qǐng)求的目的機(jī)構(gòu)代碼。
返回?cái)?shù)據(jù)包此域必須和請(qǐng)求數(shù)據(jù)包一致。
56,Bit101文件名(FileName)
位圖位置:101
格式:LLVAR
類型:ANS..17
描述:發(fā)送機(jī)構(gòu)設(shè)置的文件名。
57,Bit102帳號(hào)1(Account Identification1)
位圖位置:102
格式:LLVAR
類型:ANS..28
描述:一個(gè)特定的客戶帳號(hào)。帳號(hào)1用來(lái)描述受借記、轉(zhuǎn)出、支付等交易影響的帳戶。
選用條件:轉(zhuǎn)帳時(shí)使用。
58,Bit103帳號(hào)2(Account Identiication2)
位圖位置:103
格式:LLVAR
類型:ANS..28
描述:交易的補(bǔ)充信息,如:第二貨幣號(hào)、利率代碼、起止日期等。
定義如下表
0000000000000000000000000000000000000000000000000
位置長(zhǎng)度描述
00-2122帳戶
22-276發(fā)卡機(jī)構(gòu)號(hào)
如果此域存在,將按此機(jī)構(gòu)代碼作為路由信息。
選用條件:機(jī)構(gòu)間轉(zhuǎn)帳時(shí)使用。
60,Bit123新密碼數(shù)據(jù)(New PIN Data)
位圖位置:123
格式:LLLVAR
類型:B...16
描述:修改密碼交易時(shí)存放新密碼。
格式參考52域
選用條件:修改密碼交易時(shí)必須有此域。
61,Bit128信息確認(rèn)碼(MAC)
位圖位置:128
格式:定長(zhǎng)
類型:B16
描述:數(shù)據(jù)包的最后一個(gè)域,用于驗(yàn)證信息來(lái)源的合法性,以及數(shù)據(jù)包中數(shù)據(jù)是否未被篡改。
MAC的計(jì)算參ANSIX.99
為提高效率,在發(fā)送者和接收者之間,只有以下一些重要的域參加MAC的計(jì)算。數(shù)據(jù)包中如果存在以下數(shù)據(jù)域,它們將參加MAC的計(jì)算。
位圖域名
2基本帳號(hào)
3處理代碼
4交易金額
11系統(tǒng)跟蹤號(hào)
12本地交易時(shí)間
13本地交易日期
32收單機(jī)構(gòu)代碼
38授權(quán)碼
39返回碼
41收單終端代碼
49交易貨幣代碼
95替換金額
選用條件:使用65-128數(shù)據(jù)域的數(shù)據(jù)包需使用此域。
typedef struct
{
long sync_counter;
char keytype;
} AB8583_Security_Ctrl_Info;
typedef struct
{
char length[4];
struct
{
char account_type[3];
char amount_type[3];
char currency_code[4];
double amount;
} ledger_balance_amount;
struct
{
char account_type[3];
char amount_type[3];
char currency_code[4];
double amount;
} available_balance_amount;
} AB8583_Balance_Amount;
typedef struct
{
char encryption_key_used;
char mac_key_used;
char message_effect;
char no_of_unlogged_txns;
} AB8583_Message_Indicator;
typedef struct
{
char auth_function_code;
char auth_mode;
char auth_id_response_code[7];
char service_business_code[5];
char invoice_number[11];
} AB8583_Auth_Operation_Code;
typedef struct
{
char org_message_type[5];
char org_system_trace_number[7];
char org_transaction_date_time[11];
char org_acqr_inst_id_code[12];
char ora_forw_inst_id_code[12];
} AB8583_Original_Data_Elements;
typedef struct
{
double actual_amount_of_transaction;
double actual_amount_of_settlement;
double actual_amount_of_transaction_fee;
double actual_amount_of_settlement_fee;
} AB8583_Replacement_Amounts;
BIT DATA_NAME TYPE
typedef struct
{
char message_type[5];
/***
MESSAGE_TYPE_IDENTIFICATION N4
0100 授權(quán)類請(qǐng)求消息(授權(quán),撤消授權(quán),余額查詢)
0110 授權(quán)類應(yīng)答消息(授權(quán),撤消授權(quán),余額查詢)
0200 金融類請(qǐng)求消息(取款,存款,消費(fèi),退款)
0210 金融類應(yīng)答消息(取款,存款,消費(fèi),退款)
0420 沖正類報(bào)告消息(取款,存款,消費(fèi),退款,授權(quán))
0430 沖正類應(yīng)答消息(取款,存款,消費(fèi),退款,授權(quán))
0524 對(duì)帳類報(bào)告消息(ATM結(jié)算對(duì)帳,POS結(jié)算對(duì)帳)
0534 對(duì)帳類應(yīng)答消息(ATM結(jié)算對(duì)帳,POS結(jié)算對(duì)帳)
0800 網(wǎng)絡(luò)業(yè)務(wù)管理類請(qǐng)求消息(重置密鑰)
0810 網(wǎng)絡(luò)業(yè)務(wù)管理類應(yīng)答消息(重置密鑰)
0820 網(wǎng)絡(luò)業(yè)務(wù)管理類報(bào)告消息(狀態(tài)設(shè)置,廣播通知,申請(qǐng)重置密鑰)
0830 網(wǎng)絡(luò)業(yè)務(wù)管理類應(yīng)答消息(狀態(tài)設(shè)置,廣播通知,申請(qǐng)重置密鑰)
****/
char primary_account_number[20];
/* 2 PRIMARY_ACCOUNT_NUMBER N...19(LLVAR) */
char processing_code[7];
/* 3 PROCESSING_CODE N6 */
double amount_of_transactions;
/* 4 AMOUNT_OF_TRANSACTIONS N12 */
double amount_of_settlement;
/* 5 AMOUNT_OF_SETTLEMENT N12 */
char transmission_date_and_time[11];
/* 7 TRANSMISSION_DATE_AND_TIME N10 */
long system_trace_audit_number;
/* 11 SYSTEM_TRACE_AUDIT_NUMBER N6 */
char time_of_local_transaction[7];
/* 12 TIME_OF_LOCAL_TRANSACTION N6 */
char date_of_local_transaction[5];
/* 13 DATE_OF_LOCAL_TRANSACTION N4 */
char date_of_settlement[5];
/* 15 DATE_OF_SETTLEMENT N4 */
char date_of_capture[5];
/* 17 DATE_OF_CAPTURE N4 */
char business_type[4];
/* 18 BUSINESS_TYPE AN3 */
char point_of_service_entry_mode[4];
/* 22 POINT_OF_SERVICE_ENTRY_MODE N3 */
char point_of_service_PIN_capture_code[3];
/* 26 POINT_OF_SERVICE_PIN_CAPTURE_CODE N2 */
double fee_of_transaction;
/* 28 FEE_OF_TRANSACTION N8 */
double fee_of_settlement;
/* 29 FEE_OF_SETTLEMENT X+N8 */
char acquiring_institution_id_code[12];
/* 32 ACQUIRING_INSTITUTION_IDENTIFICATION_CODE N..11(LLVAR) */
char forwarding_institution_id_code[12];
/* 33 FORWARDING_INSTITUTION_IDENTIFICATION_CODE N..11(LLVAR) */
char track_2_data[38];
/* 35 TRACK_2_DATA Z...37(LLVAR) */
char track_3_data[105];
/* 36 TRACK_3_DATA Z...104(LLLVAR) */
long retrieval_reference_number;
/* 37 RETRIEVAL_REFERENCE_NUMBER AN12 */
char auth_id_response[7];
/* 38 AUTHORIZATION_IDENTIFICATION_RESPONSE AN6 */
char response_code[3];
/* 39 RESPONSE_CODE AN2 */
char card_acceptor_terminal_id[9];
/* 41 CARD_ACCEPTOR_TERMINAL_IDENTIFICATION ANS8
前兩位的定義如下:
51 ATM終端
52 銀行POS
53 商戶POS */
char card_acceptor_id_code[16];
/* 42 CARD_ACCEPTOR_IDENTIFICATION_CODE ANS15 */
char card_acceptor_name_location[41];
/* 43 CARD_ACCEPTOR_NAME_LOCATION ANS40 */
char additional_response_data[26];
/* 44 ADDITIONAL_RESPONSE_DATA ANS..25(LLVAR) */
char broadcasted_message[1000];
/* 48 BROADCASTED_MESSAGE ANS...999 */
char currency_code_of_transaction[4];
/* 49 CURRENCY_CODE_OF_TRANSACTION AN3 */
char currency_code_of_settlement[4];
/* 50 CURRENCY_CODE_OF_SETTLEMENT AN3 */
char PIN[8];
/* 52 PIN_DATA B64 */
AB8583_Security_Ctrl_Info security_ctrl_info;
/* 53 SECURITY_RELATED_CONTROL_INformATION N16
SYNC_COUNTER N8
密鑰同步計(jì)數(shù)器
RESERVED N7
KEY_TYPE N1
1 用于交換中心和成員行機(jī)構(gòu)之間的PIN加密解密
2 用于交換中心和成員行機(jī)構(gòu)之間的MAC計(jì)算
3 用于成員行和終端之間的PIN加密解密 */
AB8583_Balance_Amount balance_amount;
/* 54 BALANCE_AMOUNT AN43
LENGTH N3(040)
LEDGER_BALANCE_AMOUNT
ACCOUNT_TYPE N2(CC=30,SC=10)
AMOUNT_TYPE N2(01)
CURRENCY_CODE AN3(156)
AMOUNT X+N12
AVAILABLE_BALANCE_AMOUNT
ACCOUNT_TYPE N2(CC=30,SC=10)
AMOUNT_TYPE N2(01)
CURRENCY_CODE AN3(156)
AMOUNT X+N12 */
char second_account_number[20];
/* 55 SECOND_ACCOUNT_NUMBER N...19(LLVAR) */
AB8583_Message_Indicator message_indicator;
/* 60 MESSAGE_INDICATOR N...005(LLLVAR)
ENCRYPTION_KEY_USED N1
PIN加密/解密所使用的密鑰標(biāo)識(shí),定義如下:
0 不加密
1 舊密鑰
2 新密鑰
MAC_KEY_USED N1
0 不加密
1 舊密鑰
2 新密鑰
MESSAGE_EFFECT N1
0 消息用于生產(chǎn)環(huán)境
1 消息用于測(cè)試環(huán)境
2 ATM取款交易對(duì)帳標(biāo)志
3 保留
4 銀行POS取款交易對(duì)帳標(biāo)志
5 銀行POS存款交易對(duì)帳標(biāo)志
6 商用POS消費(fèi)交易對(duì)帳標(biāo)志
7 商用POS退款交易對(duì)帳標(biāo)志
NO_OF_UNLOGGED_TXNS N2 */
AB8583_Auth_Operation_Code auth_operation_code;
/* 61 AUTHORIZATION_OPERATION_CODE N...022(LLLVAR)
AUTHORIZATION_FUNCTION_CODE N1
0 授權(quán)
1 撤消授權(quán)
2 消費(fèi)
3 退款
4 取款
5 查詢
AUTHORIZATION_MODE N1
0 不需授權(quán)
1 需授權(quán)
AUTH_ID_RESPONSE_CODE N6
SERVICE_BUSINESS_CODE N4
INVOICE_NUMBER N10 */
char authorizing_agent_institution_id_code[12];
/* 62 AUTHORIZING_AGENT_INSTITUTION_IDENTIFICATION_CODE N...011(LLLVAR) */
char destination_institution_id_code[12];
/* 63 DESTINATION_INSTITUTION_IDENTIFICATION_CODE N...011(LLLVAR)
64 */
char settlement_code;
/* 66 SETTLEMENT_CODE N1 */
char network_management_information_code[4];
/* 70 NETWORK_MANAGEMENT_INformATION_CODE N3 */
char date_of_action[7];
/* 73 DATE_OF_ACTION N6 */
long number_of_credits;
/* 74 NUMBER_OF_CREDITS N10 */
long reversal_number_of_credits;
/* 75 REVERSAL_NUMBER_OF_CREDITS N10 */
long number_of_debits;
/* 76 NUMBER_OF_DEBITS N10 */
long revsersal_number_of_debits;
/* 77 REVERSAL_NUMBER_OF_DEBITS N10 */
long number_of_transfer;
/* 78 NUMBER_OF_TRANSFER N10 */
long reversal_number_of_transfer;
/* 79 REVERSAL_NUMBER_OF_TRANSFER N10 */
long number_of_inquiries;
/* 80 NUMBER_OF_INQUIRIES N10 */
double processing_fee_amount_of_credits;
/* 82 PROCESSING_FEE_AMOUNT_OF_CREDITS N12 */
double processing_fee_amount_of_debits;
/* 84 PROCESSING_FEE_AMOUNT_OF_DEBITS N12 */
double amount_of_credits;
/* 86 AMOUNT_OF_CREDITS N16 */
double reversal_amount_of_credits;
/* 87 REVERSAL_AMOUNT_OF_CREDITS N16 */
double amount_of_debits;
/* 88 AMOUNT_OF_DEBITS N16 */
double reversal_amount_of_debits;
/* 89 REVERSAL_AMOUNT_OF_DEBITS N16 */
AB8583_Original_Data_Elements original_data_elements;
/* 90 ORIGINAL_DATA_ELEMENTS N42
沖正交易所用的原始數(shù)據(jù)記錄,內(nèi)容如下:
ORIGINAL_DATA_ELEMENTS
ORG_MESSAGE_TYPE N4
ORG_SYSTEM_TRACE_NUMBER N6
ORG_TRANSACTION_DATA_TIME N10
ORG_ACQR_INST_ID_CODE N11
ORG_FORW_INST_ID_CODE N11 */
AB8583_Replacement_Amounts replacement_amounts;
/* 95 REPLACEMENT_AMOUNTS AN42 */
char message_securty_code[8];
/* 96 MESSAGE_SECURTY_CODE B64 */
doublea mount_of_net_settlement;
/* 97 AMOUNT_OF_NET_SETTLEMENT X+N16 */
char settlement_institution_id_code[12];
/* 99 SETTLEMENT_INSTITUTION_IDENTIFICATION_CODE N...11(LLVAR) */
char receiveing_institution_id_code[12];
/* 100 RECEIVEING_INSTITUTION_IDENTIFICATION_CODE N...11(LLVAR) */
char sender_institution_id_code[12];
/* 120 SENDER_INSTITUTION_IDENTIFICATION_CODE N...11(LLVAR) */
long sender_reference_number;
/* 121 SENDER_REFERENCE_NUMBER AN12 */
char MAC[8];
/* 128 MESSAGE_AUTHENTICATION_CODE B64 */
}