筆者今天介紹下國際通用的swift報文;
簡單來說,swift報文是swift指定的國際金融機構之間用于清算的標準信息傳遞的格式。國際通用的swift報文有幾十種之多,官方有專門的swift標準對報文進行詳細的解釋,參見:https://www.swift.com/ 。另外,swift組織每年也會針對業務的發展,對報文標準進行相應的更新;swift組織在每年的11月份進行標準的升級,各會員組織均需要同步升級自己的系統已支持新的swift標準。2020年由于受疫情影響,swift組織暫停今年的升級。
下面先介紹下報文的基本概念,swift code:
SWIFT CODE格式
SWIFT CODE實際上在SWIFT里稱為BIC(Bank Identifier Code),銀行識別碼,表示每家銀行在swift組織里面的唯一標識。其格式如下:
Bank Code+Country Code+Location Code+Branch Code
4!a + 2!a + 2!c +[3!c]
如中國農業銀行總行ABOCCNBJXXX
中國農業銀行紐約分行ABOCUS33
中國農業銀行廣東省分行ABOCCNBJ190
注:[3!C]為XXX表示該金融機構總部
[3!C]為可選項,如紐約分行
swift code可以為8位或者11位,由大寫字母和數字組成;
下面介紹swift報文常見的基本類型:
SWIFT報文類型
(1)用戶報文,用于SWIFT會員用戶之間相互發送和接收的報文,也是SWIFT報文最核心和最復雜的內容,MT1XX——MT9XX類報文都屬于用戶報文。
(2)系統報文(System Message),用戶SWIFT系統反饋信息給SWIFT用戶的報文,如MT008 系統請求取消、MT009系統請求退出、MT081用戶當日瀏覽記錄、MT094廣播信息等,涉及報文編號為MT0XX。
(3)系統報文(Service Message),用于反饋特定系統信息的電報文,包括2!n格式報文,如02 登錄請求報文,03 選擇命令,05 取消命令,06 退出命令等,涉及報文編號有02、03、05、06、21、22、23、24、25、26、42、43。
(4)錯誤碼(Error Code),用于反饋特定的錯誤類型,格式為2!n或者3!C,例如000表示報文沒有正文,01表示因報文過期導致的退出/取消確認錯誤,A01表示因應用程序接口阻塞導致的中止應用程序接口錯誤。
下面介紹swift報文的基本結構:
SWIFT報文結構
(1)報頭Header Block
報頭為發報行、收報行和報文輸入編號信息。
(2)正文
正文為報文主體部分,包括域標簽和內容,域標簽由分界符(:)、域編號(nn)、格式選項([a])、分界符(:)構成,內容為發送給收報行的信息。
(3)報尾
報尾為報文密押信息(MAC)和校驗信息(CHK)。
SWIFT字符表示方式
前文中經常會提到4!a、[3!C]等表示方式,SWIFT中對于字符表示的規定如下:
2!n----------------表示必須兩位數字
4*35X----------------表示填入內容最多四行,每行最多35個字符
[/34X]----------------表示“/”后最多跟34個字符,“[]”表示可選項
x----------------表示一個字符 (SWIFT允許的任意字符,數字、字母大小寫、換行、回車、空格等 X字符集內容)
d----------------表示數字或者“,”(SWIFT里數字的表示中“,”代表小數點)
2n----------------表示最多兩位數字
n----------------表示一位數字
a----------------表示一位字母
c----------------表示一位數字或者字母
SWIFT Message Type是否密押
評論前必須登錄!
立即登錄 注冊