ISO8583報文(簡稱8583包)又稱8583報文,是一個國際標准的包格式,最多由128個字段域組成,每個域都有統一的規定,並有定長與變長之分。
【報文格式】
POS終端上送POS中心的消息報文結構包括TPDU、報文頭和應用數據三部分:
TPDU:長度為10個字節,壓縮時用BCD碼表示為5個字節長度的數值。
報文頭:總長度為12字節,壓縮時用BCD碼表示為6個字節長度的數值。
在POS上送的請求/通知報文中,該數值由POS終端應用程序在打包上送時根據POS終端參數和當前狀態填入應用類別、軟件總版本號、終端狀態和軟件分版本號(具體指各廠商的程序版本號),用於POS中心根據數值進行相應的處理。
在POS中心返回的應答報文中,由POS中心填入處理要求,其他域保持原值返回,POS將根據收到報文頭中的處理要求進行相應處理。
ISO8583Msg:信息類型域(2字節)+位圖域(一般8字節,如果使用到65~128域則為16字節)+報文數據域。
【示例】
8583報文大部分情況下用在POS終端與后台收單系統的數據交換,一般情況下一段完整的報文由以下幾個部分組成:
[長度(2字節)] + [TPDU(5字節)]+[報文頭(6字節)]+[8583數據]
例如,一個簽到報文報文:
003B600006000060220000000008000020000000C000120012473538443031313135383837353844303438313635353535001100000001003000023031
報文長度:00 3B=59個字節
TPDU:60 00 06 00 00
Header:60 22 00 00 00 00
ISO8583Msg:信息類型0800 + 位圖0020000000C00012 + 各域數據。
由位圖數據可得域是11 41 42 60 63,再看規范中的各域信息定義可知:
11域:00 12 47
41域:35 38 44 30 31 31 31 35
42域:38 38 37 35 38 44 30 34 38 31 36 35 35 35 35
60域:00 11 00 00 00 01 00 30
63域:00 02 30 31
參考摘錄:
https://www.2cto.com/kf/201607/528427.html
https://www.cnblogs.com/yiyi16801/p/7442316.html
https://blog.csdn.net/qq282881515/article/details/52004796