Anda di halaman 1dari 12

ISO 8583

Apa itu ISO 8583 dan bagaimana cara membacanya?


AMYunus

2013

ISO 5853

AMYunus

ISO 8583
Beberapa pembeli tidak menggunakan uang tunai sebagai alat pembayaran. Alternatifnya mereka menggunakan kartu debit atau kartu kredit. Mesin EDC yang dimiliki penjual membaca kartu yang diberikan pembeli, melakukan komunikasi dengan pihak acquirer1 dan issuer2. Komunikasi antar instansi keuangan tersebut menggunakan format data yang disebut ISO 8583. ISO 8583 merupakan sebuat format data yang diakui dan digunakan secara internasional guna transaksi keuangan. ISO 8583 terdiri dari tiga komponen yakni MTI, Bitmap, dan Data Elements. Contoh data dalam bentuk format ISO 8583 yakni seperti berikut, 02002006009A000000001234561231061311010000000050000000250000 Kode tersebut dibagi menjadi beberapa bagian seperti berikut ini,

MTI

Bitmap

Data Elements 123456 1231 0613 11 01000000 00500000 00250000

0200

2006009A 00000000

1 2

Instansi keuangan yang menerbitkan kartu pembeli Instansi keuangan yang berhubungan langsung dengan mesin EDC penjual

2013

ISO 5853

AMYunus

Message Type Identifier (MTI)


Terdiri dari empat digit yang mendeskripsikan tipe data. Keempat digit tersebut dibagi menjadi sebagai berikut Nxxx xNxx xxNx xxxN : Versi ISO 8583 : Message Class : Message Function : Message Origin

Nxxx Versi ISO 8583 0xxx : ISO 8583-1:1987 version 1xxx : ISO 8583-2:1993 version 2xxx : ISO 8583-1:2003 version 9xxx : Private usage xNxx Message Class Merupakan kode yang mendeskripsikan tujuan data dikirimkan x1xx Authorization message Determine if funds are available, get an approval but do not post to account for reconciliation, Dual Message System (DMS), awaits file exchange for posting to account Determine if funds are available, get an approval and post directly to the account, Single Message System (SMS), no file exchange after this Used for hot-card, TMS and other exchanges Reverses the action of a previous authorization Transmits settlement information message Transmits administrative advice. Often used for failure messages (e.g. message reject or failure to apply)

x2xx

Financial message

x3xx x4xx x5xx x6xx

File actions message Reversal message Reconciliation message Administrative message

x7xx x8xx

Fee collection message Network management message Reserved by ISO Used for secure key exchange, logon, echo test and other network functions

x9xx

2013

ISO 5853

AMYunus

xxNx Message Function Merupakan kode yang mendeskripsikan tipe data (request, response, advice, atau lainnya) xx0x xx1x xx2x xx3x xx4x xx8x xx9x Request Request response Advice Advice response Notification Response acknowledgement Negative acknowledgement

xxxN Message Origin Merupakan kode yang mendeskripsikan sumber pengirim data (acquirer, issuer, atau lainnya) xxx0 xxx1 xxx2 xxx3 xxx4 xxx5 Acquirer Acquirer repeat Issuer Issuer repeat Other Other repeat

Contoh MTI Kode Arti 0100 Authorization request

Pemakaian Request from a point-of-sale terminal for authorization for a cardholder purchase Issuer response to a point-of-sale terminal for authorization for a cardholder purchase When the Point of Sale device breaks down and you have to sign a voucher if the advice times out Confirmation of receipt of authorization advice Request for funds, typically from an ATM or pinned point-of-sale device Issuer response to request for funds e.g. Checkout at a hotel. Used to complete transaction initiated with authorization request if the advice times out Confirmation of receipt of financial advice

0110

Issuer response

0120

Authorization advice

0121 0130 0200

Authorization advice repeat Issuer response to authorization advice Acquirer financial request

0210 0220

Issuer response to financial request Acquirer financial advice

0221 0230

Acquirer financial advice repeat Issuer response to financial advice

2013 Kode 0400 0420 0421 Arti Acquirer reversal request Acquirer reversal advice Acquirer reversal advice repeat message Issuer reversal response Network management request Network management response Network management advice

ISO 5853 Pemakaian Reverses a transaction Advises that a reversal has taken place if the reversal times out

AMYunus

0430 0800 0810 0820

Confirmation of receipt of reversal advice Echo test, logon, log off etc. Echo test, logon, log off etc. Keychange

2013

ISO 5853

AMYunus

Bitmap
Terdiri dari 8 byte data biner atau 16 karakter hexadecimal atau 64 digit biner (bit). Fungsi dari bitmap yakni sebagai penanda data element mana sajakah yang dipakai dalam data. Macam bitmap ada tiga antara lain primary bitmap, secondary bitmap, dan tertiary bitmap. Primary bitmap menandakan bahwa ada data di antara data element 1 64 yang aktif. Secondary bitmap menandakan bahwa ada data di antara data element 65 128 yang aktif. Tertiary bitmap menandakan bahwa ada data di antara data element 129 192 yang aktif. Adanya secondary bitmap yang aktif ditandai dengan data element 1 (bit pertama) bernilai 1 atau aktif. Sedangkan aktifnya tertiary bitmap ditandai dengan data element 65 (bit ke-65) bernilai 1 atau aktif. Agar dapat diketahui mana saja data element yang aktif, bitmap yang berbentuk heksadesimal harus dikonversikan ke dalam biner (bit) terlebih dahulu. Desimal Heksadesimal Biner 0 0 0000 1 1 0001 2 2 0010 3 3 0011 4 4 0100 5 5 0101 6 6 0110 7 7 0111

Desimal Heksadesimal Biner

8 8 1000

9 9 1001

10 A 1010

11 B 1011

12 C 1100

13 D 1101

14 E 1110

15 F 1111

Contoh Bitmap Kita memiliki bitmap heksadesimal berupa 2006009A. Jika dikonversikan ke dalam biner akan berbentuk 0010000000000110000000001001101000000000000000000000000000000000. Heksadesimal Biner 2 0010 0 0000 0 0000 6 0110 0 0000 0 0000 9 1001 A 1010

Heksadesimal Biner

0 0000

0 0000

0 0000

0 0000

0 0000

0 0000

0 0000

0 0000

Hal ini berarti ruas 3, 14, 15, 25, 28, 29, dan 31 pada bitmap yang berniai aktif. Bitmap aktif tesebut selanjutnya dipetakan dengan data elements.

2013

ISO 5853

AMYunus

Data Elements
Berisi informasi yang dimiliki oleh data dengan format ISO 8583. Cara menafsirkan data ini dengan menggunakan konversi bitmap dalam biner. Dalam urutan biner tersebut, dapat diketahui bit mana saja yang aktif. Kemudian letak bit yang aktif tersebut dipetakan dengan data element standar ISO 8583. Data Element 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 Type b 64 n ..19 n6 n 12 n 12 n 12 n 10 n8 n8 n8 n6 n6 n4 n4 n4 n4 n4 n4 n3 n3 n3 n3 n3 n3 n2 n2 n1 n8 n8 n8 n8 n ..11 n ..11 n ..28 z ..37 n ...104 an 12 an 6 an 2 an 3 ans 16 ans 15 Usage Bit Map Extended Primary account number (PAN) Processing code Amount, transaction Amount, Settlement Amount, cardholder billing Transmission date & time Amount, Cardholder billing fee Conversion rate, Settlement Conversion rate, cardholder billing Systems trace audit number Time, Local transaction (hhmmss) Date, Local transaction (MMDD) Date, Expiration Date, Settlement Date, conversion Date, capture Merchant type Acquiring institution country code PAN Extended, country code Forwarding institution. country code Point of service entry mode Application PAN number Function code(ISO 8583:1993)/Network International identifier (NII) Point of service condition code Point of service capture code Authorizing identification response length Amount, transaction fee Amount. settlement fee Amount, transaction processing fee Amount, settlement processing fee Acquiring institution identification code Forwarding institution identification code Primary account number, extended Track 2 data Track 3 data Retrieval reference number Authorization identification response Response code Service restriction code Card acceptor terminal identification Card acceptor identification code 7

2013 Data Element 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 Type ans 40 an ..25 an ..76 an ...999 an ...999 an ...999 a3 an 3 a3 b 16 b 18 an ...120 ans ...999 ans ...999 ans ...999 ans ...999 ans ...999 an .7 ans ...999 ans ...999 ans ...999 b 16 b 64 n1 n2 n3 n3 n3 n4 ans ...999 n6 n 10 n 10 n 10 n 10 n 10 n 10 n 10 n 10 n 12 n 12 n 12 n 12 n 15 n 15 n 15 n 15 n 42

ISO 5853 Usage Card acceptor name/location Additional response data Track 1 Data Additional data ISO Additional data National Additional data Private Currency code, transaction Currency code, settlement Currency code, cardholder billing Personal Identification number data Security related control information Additional amounts Reserved ISO Reserved ISO Reserved National Reserved National Reserved for national use Advice/reason code (private reserved) Reserved Private Reserved Private Reserved Private Message authentication code (MAC) Bit map, tertiary Settlement code Extended payment code Receiving institution country code Settlement institution county code Network management Information code Message number Data record (ISO 8583:1993)/n 4 Message number, last(?) Date, Action Credits, number Credits, reversal number Debits, number Debits, reversal number Transfer number Transfer, reversal number Inquiries number Authorizations, number Credits, processing fee amount Credits, transaction fee amount Debits, processing fee amount Debits, transaction fee amount Credits, amount Credits, reversal amount Debits, amount Debits, reversal amount Original data elements

AMYunus

2013 Data Element 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 Type an 1 n2 n5 an 7 an 42 an 8 n 16 ans 25 n ..11 n ..11 ans 17 ans ..28 ans ..28 ans ...100 ans ...999 ans ...999 ans ...999 ans ...999 ans ...999 ans ...999 ans ...999 ans ...999 n ..11 ans ...999 ans ...999 ans ...999 ans ...999 ans ...999 ans ...999 ans ...999 ans ...999 ans ...999 ans ...999 ans ...255 ans ..50 ans .6 ans ...999 b 16

ISO 5853 Usage File update code File security code Response indicator Service indicator Replacement amounts Message security code Amount, net settlement Payee Settlement institution identification code Receiving institution identification code File name Account identification 1 Account identification 2 Transaction description Reserved for ISO use Reserved for ISO use Reserved for ISO use Reserved for ISO use Reserved for ISO use Reserved for ISO use Reserved for ISO use Reserved for national use Authorizing agent institution id code Reserved for national use Reserved for national use Reserved for national use Reserved for national use Reserved for national use Reserved for national use Reserved for national use Reserved for national use Reserved for national use Reserved for national use Info Text Network management information Issuer trace id Reserved for private use Message Authentication code

AMYunus

Cara membaca kode di kolom type yakni sebagai berikut, Type a n s an as ns Meaning Alphabetic, including blanks (space) Numeric values only Special characters only Alphanumeric Alpha & special characters only Numeric & special characters only 9

2013 Type ans b z . / .. / ... x / xx / xxx

ISO 5853

AMYunus

Meaning Alphabetic, numeric, and special characters Binary data Tracks 2 or 3 code set as defined in ISO/IEC 7813 and ISO/IEC 4909 respectively Variable field length indicator, each . indicating a digit Fixed length of field or maximum length in the case of variable length fields

Fixed LLVAR ( ..xx ) LLLVAR ( ...xxx ) LL and LLL are hex or ASCII. A VAR field can be compressed or ASCII depending of the data element type

No field length used Where LL < 100, means two leading digits LL specify the field length of field VAR Where LLL < 1000, means three leading digits LLL specify the field length of field VAR LL can be 1 or 2 bytes. For example, if compressed as one hex byte, '27x means there are 27 VAR bytes to follow. If ASCII, the two bytes '32x, '37x mean there are 27 bytes to follow. 3 digit field length LLL uses 2 bytes with a leading '0' nibble if compressed, or 3 bytes if ASCII. The format of a VAR data element depends on the data element type. If numeric it will be compressed, e.g. 87456 will be represented by 3 hex bytes '087456x. If ASCII then one byte for each digit or character is used, e.g. '38x, '37x, '34x, '35x, '36x.

Contohnya yakni sebagai berikut, Type N4 N.4 A .. 15 A ... 999 Meaning Fixed length, 4 digit numeric LVAR Numeric, 1 digit var . len, 4 digit data len LLVAR Alphanumeric, 2 digit var len, max 15 digit data len LLLVAR Alphanumeric, 3 digit var len, max 999 digit data len Example 9753 49753 11CONTOH-SAJA 015INI-CONTOH-JUGA

Jadi, cara mengartikan data element yakni sebagai berikut, Data Element 3 14 15 25 28 29 31 1234561231061311010000000050000000250000 n6 123456 n4 1231 n4 0613 n2 11 n8 01000000 n8 00500000 n8 00250000

10

Referensi
Martinus Ady H., Berkenalan dengan ISO 8583 Menggunakan Java, http://martinusadyh.web.id/tulisanku/berkenalan-dengan-iso-8583-menggunakan-java/, diakses pada tanggal 27 Januari 2013 Shahid Suri, ISO 8583 Financial Transaction Message Format, https://sites.google.com/site/paymentsystemsblog/iso8583-financial-transaction-messageformat, diakses pada tanggal 27 Januari 2013

Perangkat lunak
ISO8583 Editor - http://iso8583.free.fr http://www.softpedia.com/progClean/A-Simple-ISO-8583-Editor-and-Message-CheckerClean-219719.html (alternatif)

jPOS - http://www.jpos.org https://github.com/jpos/jPOS (alternatif)

Tentang Penulis
AMYunus, seorang fresh graduate lulusan Fakultas Ilmu Komputer Universitas Indonesia. Dengan mengambil jurusan Sistem Informasi selama 4 tahun, ia berhasil meraih gelar S. Kom. dalam waktu 4 tahun. Ia membuat karya tulis akhir (skripsi) berjudul Analisis dan Perancangan Sistem Enterprise Resource Planning pada Fungsi Bisnis Production Management: Studi Kasus Usaha Mikro Kecil dan Menengah. Ia aktif dalam beberapa organisasi dan kepanitiaan saat masih menjadi mahasiswa. Ia pernah menjadi anggota organisasi Islam universitas. Ia juga pernah menjadi anggota dan ketua divisi organisasi Islam fakultas. Selain itu ia sering terlibat dalam berbagai kepanitiaan lingkup fakultas seperti Open House Fasilkom, IT Governance Maturity Benchmark, Compfest, Fuki Fair, dan lain sebagainya. Walaupun berstatus fresh graduate, ia sudah memiliki pengalaman pekerjaan selama setahun sebagai web application developer di sebuah perusahaan software house berlokasi Kelapa Gading, Jakarta Utara. Selain itu ia juga sudah memiliki banyak pengalaman proyek sebagai freelancer, juga sebagai web application developer. Berbekal pengalaman tersebut, ia berharap tidak kaget dengan dunia pekerjaan yang akan digelutinya nanti. Email Linkedin Personal web : : : hiamyunus@gmail.com http://id.linkedin.com/in/amyunus/ http://www.amyunus.com/

Anda mungkin juga menyukai