ISO 8583は、国際標準化機構が金融取引カード始発メッセージを定めたもので、カード所有者が支払手段にカードを使用した場合に発生する電子メッセージの標準規格である。以下の3部で構成される。 Part 1:メッセージ、データエレメントおよびコード値ISO 8583-1:2003 Financial transaction card originated messages -- Interchange message specifications -- Part 1: Messages, data elements and code values Part 2:機関識別コード (IIC) の応用および登録手順ISO 8583-2:1998 Financial transaction card originated messages -- Interchange message specifications -- Part 2: Application and registration procedures for Institution Identification Codes (IIC) Part 3:メッセージ、データエレメントおよびコード値の保全手順ISO 8583-3:2003 Financial transaction card originated messages -- Interchange message specifications -- Part 3: Maintenance procedures for messages, data elements and code values

概要 alt=ミハルス|thumb|right|550px|ISO 8583は、アクワイアラ-イシュア間の電子メッセージの手順で主に使用されている。 カードを使用した場合、そのカードが使用できるかを確認するため、POS端末やATMなどのカードを読み取る機械から、ネットワークを経由して、カードを発行している会社()のシステムまでメッセージは渡される。そのメッセージデータには、カードの情報(カード番号など)や端末の情報(店舗番号など)、業務情報(金額など)、システムによって加えられる情報などが含まれる。カードを発行しているシステムは、そのトランザクションを承認または拒否して端末へ送る応答メッセージを発生させる。

異なるシステムが上記のトランザクションを交わすことができるよう、ISO 8583はメッセージ形式とコミュニケーション・フローを定義している。客が店で支払をする際にカードを使用する場合や、ATMが使用される大多数の場合は、ISO 8583が使用されている。マスターカードやビザネットワークなど多くのネットワークは、信用照会業務はISO 8583をベースに手順を定められているが、ISO 8583にはルーティング情報がないため、TPDUヘッダが追加されている場合が多い。

ISO 8583には、カード所有者から発生するトランザクション(購入・取消・融資・返済・残高照会・口座変更)などや、セキュリティ・キー交換や、取引件数・金額の管理など、その他管理目的のための、システムメッセージ様式が定められている。

ISO 8583での標準のメッセージ形式は、各ネットワークやシステムではそのまま使用されていない。各ネットワークは、ISO 8583の形式をそれぞれカスタマイズして使用している。

ISO 8583の異なる版によって、各フィールドの使用方法が異なっている。例えば、1987年版と1993年版で使用されている通貨エレメントは、2003年版では使用されておらずそれぞれの金額項目のサブフィールドとして通貨を持つようになっている。ただし現在、ISO 8583の2003年版は、広く使用はされていない。

ISO 8583は、以下の内容で構成されている。 メッセージタイプID (MTI) どのデータエレメントが存在するかを示すためのビットマップ メッセージフィールドのデータエレメント

メッセージタイプID (MTI)

MTIは、メッセージの種類を分類する4桁の数値フィールドである。MTIには、メッセージクラス・メッセージ機能、メッセージの発生源の情報が、1桁毎に設定されている。以下の例 (MTI 0110) に、各桁があらわす内容を記載する。 0xxx → ISO 8583の版(1987年版) x1xx → メッセージクラス(オーソリメッセージ) xx1x → メッセージ機能(要求に対する応答) xxx0 → 手順の発生源(アイワイアラ)

ISO 8583の版

MTIの1桁目には、このメッセージがどのISO 8583標準バージョンを使用しているかを指定する。

値 意味 0xxx ISO 8583-1:1987年版 1xxx ISO 8583-2:1993年版 2xxx ISO 8583-1:2003年版 9xxx 個社使用

メッセージクラス

MTIの2桁目には、メッセージの全体的な目的を指定する。

値 意味 例 x1xx オーソリ 取引を承認するか、否認するかを決定する。デュアルメッセージシステム (DMS) のため、決済処理は行わない。 x2xx ファイナンシャル 取引を承認する場合は、シングルメッセージシステム (SMS) のため、同時に決済・精算処理を行う。 x3xx ファイル更新 カード情報などの更新を行う。 x4xx 取消 オーソリの取消を行う。 x5xx 交換 処理件数等の更新情報を送信する。 x6xx 管理 システム管理情報を送信する。例えば障害発生による取消メッセージなどで使用される。 x7xx 課金 x8xx ネットワーク管理 セキュリティキー交換や、開局、エコー・テストなどのネットワーク処理で使用する。 x9xx ISO予約値

メッセージ機能

MTIの3桁目には、メッセージをシステム内のどこまで保証しなければならないかを指定する。要求の両端(例えばアクワイアラからイシュア(カード発行会社)で、タイムアウトが発生した場合は自動取消をその範囲で行う)や、アドバイス(端末からアクワイアラ、アクワイアラからネットワーク、ネットワークからイシュア間を保証する)を指定する。

値 意味 xx0x 要求 xx1x 要求に対する応答 xx2x アドバイス xx3x アドバイスに対する応答 xx4x 通知 xx8x 応答の認証 xx9x ネガティブな認証

メッセージ発生源

MTIの4桁目には、メッセージの一連のトランザクションの発生源を指定する。

値 意味 xxx0 アクワイアラ xxx1 アクワイアラ(リピート) xxx2 イシュア xxx3 イシュア(リピート) xxx4 その他 xxx5 その他(リピート)

MTI一覧

MTIの4桁の値で、そのメッセージが何のためのメッセージであるか、ネットワークのどの範囲までのものかを指定される。なお、ISO 8583を使用しているすべてのシステムで、MTIの意味を全く同じに解釈しているとは限らないが、以下にMTI値の例を示す。

MTI 意味 例 0100 オーソリ要求 カード会員が購入するためのPOS端末からの承認要求 0110 オーソリ応答 カード会員へ承認するためのイシュアからPOS端末への応答 0120 オーソリアドバイス POS端末が故障した場合など、承認しなければならない処理結果 0121 オーソリアドバイスリピート アドバイスでタイムアウト発生時 0130 オーソリアドバイス応答 オーソリアドバイスに対する受信結果 0200 ファイナンシャル要求 ATMやシングルメッセージシステムのPOS端末などから発生する決済要求 0210 ファイナンシャル要求応答 決済要求に対するイシュアからの応答 0220 ファイナンシャルアドバイス たとえばホテルのチェックアウトなど、オーソリ要求から始まった一連のトランザクションの完了時に使用される 0221 ファイナンシャルアドバイスリピート アドバイスでタイムアウト発生時 0230 ファイナンシャルアドバイス応答 ファイナンシャルアドバイスに対する受信結果 0400 取消要求 トランザクションの取消 0420 取消アドバイス 取消が発生した結果の通知 0421 取消アドバイスリピート アドバイスでタイムアウト発生時 0430 取消応答 取消アドバイスに対する受信結果 0800 ネットワーク管理要求 エコーテスト、開局、閉局など 0810 ネットワーク管理応答 エコーテスト、開局、閉局など 0820 ネットワーク管理アドバイス キー交換

ビットマップ

ISO 8583内のビットマップは、メッセージ内にどのデータエレメントが存在するかを示すためのフィールド/サブフィールドである。

メッセージには「プライマリ・ビットマップ」と呼ばれるビットマップが必ず含まれる。それはデータエレメントのうち、フィールド1から64までの存在有無を示すビットマップである。セカンダリ・ビットマップが存在する場合は、一般的にフィールド1のデータエレメントの値に設定され、フィールド65から128までの存在有無を示す。同様に、サード・ビットマップは、フィールド129から192までの存在有無を示すものだが、あまり使用されない。

ビットマップは、8バイトのバイナリデータや、16進数の文字(0-9, A-F のASCIIまたはEBCDICコード)で示される。

特定のビットが立っている場合のみ、該当のフィールドが存在する。たとえば、'82x は2進数で '1000 0010' であるため、フィールド1と7のみ存在し、2, 3, 4, 5, 6, 8は存在しないことを示す。

ビットマップの設定例

ビットマップ 存在フィールド 4210001102C04804 フィールド 2, 7, 12, 28, 32, 39, 41, 42, 50, 53, 62 7234054128C28805 フィールド 2, 3, 4, 7, 11, 12, 14, 22, 24, 26, 32, 35, 37, 41, 42, 47, 49, 53, 62, 64 8000000000000001 フィールド 1, 64 0000000000000003(セカンダリ・ビットマップ) フィールド 127, 128

ビットマップの例(8バイトのプライマリ・ビットマップ = 64ビット)フィールド 4210001102C04804 BYTE1 : 01000010 = 42x(左から2番目と7番目のビットが1のため、フィールド2と7が存在することを示す) BYTE2 : 00010000 = 10x(フィールド12が存在) BYTE3 : 00000000 = 00x(フィールドは存在しない) BYTE4 : 00010001 = 11x(フィールド28と32が存在) BYTE5 : 00000010 = 02x(フィールド39が存在) BYTE6 : 11000000 = C0x(フィールド41と42が存在) BYTE7 : 01001000 = 48x(フィールド50と53が存在) BYTE8 : 00000100 = 04x(フィールド62が存在)

0________10________20________30________40________50________60__64 1234567890123456789012345678901234567890123456789012345678901234 ビットの位置 0100001000010000000000000001000100000010110000000100100000000100 ビットマップ

上記内容で存在するフィールド 2-7-12-28-32-39-41-42-50-53-62

データエレメント

データエレメントは、そのトランザクションの情報を構成する個々のフィールドである。ISO 8583:1987でデータエレメントは最大128フィールド制定され、後に192フィールドまで拡張された。1993年での改訂ではメッセージ形式そのものは変わっていないが、新しい定義が加えられたのと同時に多少の削除があった。

それぞれのデータエレメントには意味とフォーマットが指定されているが、ISOで標準化されている内容と使用している各システムでは実際には若干異なっており、システム特有・国特有の多目的なデータエレメントが含まれる。

各データエレメントは、以下の表で記載される属性(値や長さ)で記述される。

属性 意味 a 英字(ブランクを含む) n 数字のみ s 特殊文字のみ an 英字または数字 as 英字または特殊文字 ns 数字または特殊文字 ans 英字、数字、特殊文字 b バイナリデータ z ISO/IEC 7813 と ISO/IEC 4909 で定義されたトラック2・トラック3のコード値 . / .. / ... 長さが可変であることを示す。 x / xx / xxx 固定長の桁数 または 可変長の最大桁数

各フィールドは、固定長である場合と可変長の場合がある。可変長であれば、値の前に実際の長さが設定される。

属性 意味 Fixed 桁数フィールドは使用しない LLVAR / (..xx) LLが100未満の場合は、2桁の桁数を指定する LLLVAR / (...xxx) LLが100未満の場合は、3桁の桁数を指定する LL/LLLは、16進数またはASCII。桁数フィールドはASCIIの時に限り圧縮することができる。 LLは1バイトまたは2バイトである。16進数の1バイトとして圧縮する場合は、'27x は27バイトのフィールド値が後続することをあらわす。ASCII 2バイト '32x '37x が指定された場合も、同様に27バイトのフィールド値が後続することをあらわす。ASCIIで3桁フィールドの桁数を指定する場合、先頭の'0'を省略して2バイトであらわす場合もある。

+ ISOで定義されたデータエレメント データエレメント 属性 Name 名称 1 b 64 Bit Map ビットマップ(セカンダリが存在する場合は b 128、サードが存在する場合は b 192) 2 n ..19 Primary Account Number 会員番号・口座番号 (PAN) 3 n 6 Processing Code プロセシングコード 4 n 12 Amount, Transaction 取引金額 5 n 12 Amount, Settlement 決済金額 6 n 12 Amount, Cardholder Billing 会員請求金額 7 n 10 Transmission Date and Time 送信日時 8 n 8 Amount, Cardholder Billing Fee 会員請求料金 9 n 8 Conversion Rate, Settlement 決済通貨レート 10 n 8 Conversion Rate, Cardholder Billing 会員請求通貨レート 11 n 6 Systems Trace Audit Number システムトレースオーディットナンバー 12 n 6 Time, Local Transaction 現地取引時刻 (hhmmss) 13 n 4 Date, Local Transaction 現地取引日 (MMDD) 14 n 4 Date, Expiration 有効期限 15 n 4 Date, Settlement 決済日 16 n 4 Date, Conversion レート変換日 17 n 4 Date, Capture 収集日 18 n 4 Merchant Type 加盟店業種 19 n 3 Acquiring Institution Country Code アクワイアラ国コード 20 n 3 PAN Extended, Country Code 会員国コード 21 n 3 Forwarding Institution. Country Code 送信元国コード 22 n 3 Point of Service Entry Mode POS入力モード 23 n 3 Application PAN Number アプリケーションPAN通番 24 n 3 Function Code / Network International Identifier ファンクションコード (ISO 8583:1993)/ネットワーク国際識別 (NII) 25 n 2 Point of Service Condition Code POS状態コード 26 n 2 Point of Service Capture Code POS暗証番号収集コード 27 n 1 Authorizing Identification Response Length 承認コード長 28 n 8 Amount, Transaction Fee 取引手数料 29 n 8 Amount, Settlement Fee 決済手数料 30 n 8 Amount, Transaction Processing Fee オリジナル取引金額 31 n 8 Amount, Settlement Processing Fee オリジナル決済金額 32 n ..11 Acquiring Institution Identification Code アクワイアラ識別コード 33 n ..11 Forwarding Institution Identification Code 送信元識別コード 34 n ..28 Primary Account Number, Extended 拡張会員番号・拡張口座番号 35 z ..37 Track 2 Data トラック2データ 36 n ...104 Track 3 Data トラック3データ 37 an 12 Retrieval Reference Number リトリーバルリファレンスナンバー 38 an 6 Authorization Identification Response 承認コード 39 an 2 Response Code レスポンスコード 40 an 3 Service Restriction Code サービス規制コード 41 ans 16 Card Acceptor Terminal Identification カード利用端末識別 42 ans 15 Card Acceptor Identification Code カード利用識別コード 43 ans 40 Card Acceptor Name/Location カード利用店舗名/住所(1-23が住所、24-36が都市、37-38が州、39-40が国) 44 an ..25 Additional Response Data 追加応答データ 45 an ..76 Track 1 Data トラック1データ 46 an ...999 Additional Data - ISO ISO用追加データ 47 an ...999 Additional Data - National 各国用追加データ 48 an ...999 Additional Data - Private 個社用追加データ 49 a 3 Currency Code, Transaction 取引通貨コード 50 an 3 Currency Code, Settlement 決済通貨コード 51 a 3 Currency Code, Cardholder Billing 会員請求通貨コード 52 b 64 Personal Identification Number Data 会員暗証番号 53 n 18 Security Related Control Information セキュリティ関連制御情報 54 an ...120 Additional Amounts 追加金額 55 ans ...999 Reserved ISO ISO用予約域 56 ans ...999 Reserved ISO ISO用予約域 57 ans ...999 Reserved National 各国用予約域 58 ans ...999 Reserved National 各国用予約域 59 ans ...999 Reserved for National Use 国際用予約域 60 an .7 Advice/reason Code (Private Reserved) 理由コード(個社用予約域) 61 ans ...999 Reserved Private 個社用予約域 62 ans ...999 Reserved Private 個社用予約域 63 ans ...999 Reserved Private 個社用予約域 64 b 16 Message Authentication Code (MAC) メッセージ認証コード (MAC) 65 b 64 Tertiary Bitmap サード・ビットマップ(セカンダリ・ビットマップ存在時のみ) 66 n 1 Settlement Code 決済コード 67 n 2 Extended Payment Code 拡張支払コード 68 n 3 Receiving Institution Country Code 受信機関国コード 69 n 3 Settlement Institution Country Code 決済機関国コード 70 n 3 Network Management Information Code ネットワーク管理情報コード 71 n 4 Message Number メッセージ番号 72 ans ...999 Data Record /n 4 Message Number, Last データレコード (ISO 8583:1993)/n 4 最終メッセージ番号 73 n 6 Date, Action 実行日 74 n 10 Credits, Number クレジット件数 75 n 10 Credits, Reversal Number クレジット取消件数 76 n 10 Debits, Number デビット件数 77 n 10 Debits, Reversal Number デビット取消件数 78 n 10 Transfer Number 送信件数 79 n 10 Transfer, Reversal Number 送信取消件数 80 n 10 Inquiries Number 照会件数 81 n 10 Authorizations, Number オーソリ件数 82 n 12 Credits, Processing Fee Amount クレジット処理手数料 83 n 12 Credits, Transaction Fee Amount クレジット業務手数料 84 n 12 Debits, Processing Fee Amount デビット処理手数料 85 n 12 Debits, Transaction Fee Amount デビット業務手数料 86 n 15 Credits, Amount クレジット金額 87 n 15 Credits, Reversal amount クレジット取消金額 88 n 15 Debits, Amount デビット金額 89 n 15 Debits, Reversal Amount デビット取消金額 90 n 42 Original Data Elements オリジナルデータエレメント 91 an 1 File Update Code ファイル更新コード 92 n 2 File Security Code ファイルセキュリティコード 93 n 5 Response Indicator レスポンス指標 94 an 7 Service Indicator サービス指標 95 an 42 Replacement Amounts 交換金額 96 an 8 Message Security Code メッセージセキュリティコード 97 n 16 Amount, Net Settlement ネット決済金額 98 ans 25 Payee 受取人 99 n ..11 Settlement Institution Identification Code 決済機関識別コード 100 n ..11 Receiving Institution Identification Code 受信機関識別コード 101 ans 17 File Name ファイル名 102 ans ..28 Account Identification 1 口座識別 1 103 ans ..28 Account Identification 2 口座識別 2 104 ans ...100 Transaction Description 業務固有情報 105 ans ...999 Reserved for ISO Use ISO用予約域 106 ans ...999 Reserved for ISO Use ISO用予約域 107 ans ...999 Reserved for ISO Use ISO用予約域 108 ans ...999 Reserved for ISO Use ISO用予約域 109 ans ...999 Reserved for ISO Use ISO用予約域 110 ans ...999 Reserved for ISO Use ISO用予約域 111 ans ...999 Reserved for ISO Use ISO用予約域 112 ans ...999 Reserved for ISO Use ISO用予約域 113 n ..11 Authorizing Agent Institution ID Code オーソリ許可識別コード 114 ans ...999 Reserved for National Use 各国用予約域 115 ans ...999 Reserved for National Use 各国用予約域 116 ans ...999 Reserved for National Use 各国用予約域 117 ans ...999 Reserved for National Use 各国用予約域 118 ans ...999 Reserved for National Use 各国用予約域 119 ans ...999 Reserved for National Use 各国用予約域 120 ans ...999 Reserved for Private Use 個社用予約域 121 ans ...999 Reserved for Private Use 個社用予約域 122 ans ...999 Reserved for Private Use 個社用予約域 123 ans ...999 Reserved for Private Use 個社用予約域 124 ans ...255 Info Text テキスト情報 125 ans ..50 Network Management Information ネットワーク管理情報 126 ans .6 Issuer Trace ID イシュアトレース識別 127 ans ...999 Reserved for Private Use 個社用予約域 128 b 16 Message Authentication Code メッセージ認証コード (MAC) 属性の例

フィールド属性値 意味 n6 6桁の固定長数字フィールド n.6 最大6桁の可変長数字フィールド a..11 最大11桁の可変長英字フィールド b...999 999バイトのバイナリフィールド

脚注

外部リンク

iso8583 dialects reviews. Specifications, MTIs and Fields tables Introduction to ISO 8583