Sunday 21 September 2014

Data Element

Data Element ini sebenarnya merupakan sebuah inti dari keseluruhan message yang terdapat dalam ISO 8583, karena pada Data Element inilah isi informasi dari transaksi yang dilakukan sesungguhnya akan dikirimkan melalui jaringan menggunakan protokol ISO 8583. Terdapat 128 Data Element pada standart ISO 8583 versi 1987, sedangkan pada versi berikut-nya yaitu ISO 8583 versi 1993 naik menjadi 192 Data Element.

Data Element ini dapat diasumsikan seperti sekumpulan kotak sebanyak 128 atau 192 buah (tergantung dari versi ISO 8583 yang digunakan-nya), yang tiap-tiap kotak mempunyai ARTI dan FORMAT yang sudah ditentukan oleh standart ISO 8583. Dan agar mudah, tampilan Data Element pada ISO 8583 dapat digambarkan seperti gambar dibawah ini :



Contoh Representasi Sebuah Data Element








Setiap Data Element mempunyai format data yang di ijinkan pada tiap isinya (seperti numerik, binary atau yang lain-nya) dan mempunyai panjang data yang sudah ditentukan (baik secara variabel ataupun fix). Sedangkan format data yang terdapat dalam Data Element adalah seperti pada tabel dibawah ini :
Format Data Pada Data Element (Diambil dari http://en.wikipedia.org/wiki/ISO_8583)




















Bitmap

Seperti yang sudah sedikit dibahas pada bab Tipe Message ISO 8583 didepan, komponen kedua dari Application Data yang terdapat dalam ISO 8583 ini adalah Bitmap. Apasih sebenarnya Bitmap ini ? Bitmap ini adalah sebuah komponen yang mempunyai panjang 16 karakter (atau lebih, tergantung apakah Secondary atau Tertiary Bitmap aktif atau tidak) dalam hexadecimal, dan nilai yang terdapat dalam bitmap ini digunakan untuk me-representasikan field atau Data Element keberapa yang aktif.

Sebuah message ISO 8583 kurang lebih pasti mempunyai satu bitmap yang biasa disebut sebagai Primary Bitmap, yang menandakan bahwa Data Element 1 sampai 64 aktif. Sedangkan Secondary Bitmap akan muncul jika Data Element 65 sampai 128 aktif, begitu juga untuk Tertiary/Third Bitmap digunakan jika Data Element 129 sampai 192 aktif walaupun jarang sekali sebuah message sampai menggunakan Tertiary Bitmap.

Bitmap ini bisa merupakan 8 bytes data binari ataupun 16 karakter hexadecimal dari 0-9, A-F pada ASCII atau EBCDIC karakter, sebuah field atau Data Element akan aktif jika nilai bitmap ini bernilai TRUE (ditandai dengan nilai 1). Sedangkan untuk field atau Data Element yang tidak aktif, akan bernilai FALSE (ditandai dengan nilai 0 [nol]) pada bitmap.

Agar lebih memudahkan penjelasan, sekarang mari kita masuk ke pembahasan yang lebih detail tentang bitmap pada sub-bab dibawah ini :
  • Cara Menghitung Bitmap

Cara Menghitung Bitmap

Pada penjelasan sebelum-nya kita sudah mengetahui ciri-ciri sebuah Bitmap, dan untuk kepentingan menghitung sebuah Bitmap ada beberapa poin penting yang harus selalu di ingat ketika ingin membaca atau membuat sebuah Bitmap. Poin-poin penting yang perlu dicatat yaitu :
  1. Ada 3 macam Bitmap, yaitu :
    1. Primary Bitmap, semua message ISO 8583 pasti mempunyai ini. Field atau Data Element yang aktif adalah 1-64.
    2. Secondary Bitmap, ini digunakan jika field atau Data Element yang aktif adalah 65-128. Ciri-ciri adanya Secondary Bitmap ini adalah bit pertama dari PRIMARY BITMAP pasti bernilai 1 atau TRUE
    3. Tertiary/Third Bitmap, ini digunakan jika field atau Data Element yang aktif adalah 129-192. Identitas adanya Tertiary/Third Bitmap ini adalah aktif-nya field atau Data Element ke 65
  2. Seluruh field atau Data Element yang TIDAK AKTIF AKAN BERNILAI 0 (NOL/FALSE) DAN UNTUK YANG AKTIF AKAN BERNILAI 1 (TRUE)
  3. Bitmap dapat berisi 8 byte data binary, atau
  4. 16 karakter hexadecimal (0-9 dan A-F) pada ASCII atau EBCDIC (lihat pada penjelasan informasi dibawah ini)
  5. Untuk mengetahui field atau Data Element mana yang aktif, kita harus mengkonversi nilai hexadecimal ke binary.
  1. Jika dalam 1 message yang aktif hanya Primary Bitmap saja, maka panjang Bitmap tersebut adalah 64 bit. Dimana 8 Byte Primary Bitmap == 64 Bit (Ingat 1 byte = 8 bits) :D
  2. Jika Secondary Bitmap aktif, maka panjang Bitmap akan menjadi 64*2 yaitu 128 bit atau bisa juga disebut menjadi 32 karakter hexadecimal. Begitu juga jika Tertiary Bitmap aktif.
Setelah mengetahui beberapa poin penting dalam menghitung sebuah Bitmap dan sebelum mulai untuk melakukan konversi, ada baiknya kita segarkan dulu pikiran kita kembali ke bangku kuliah :D yang membahas tentang konversi dari HEXA to BINARY to DECIMAL. Mungkin ada yang masih ingat tentang tabel konversi dibawah ini ?? Karena tabel dibawah ini akan kita jadikan sebagai acuan untuk mengetahui fieldatau Data Element mana yang aktif :) :


Tabel Konversi Decimal to HexaDecimal to Binary








Message Type Indicator

Seperti yang sudah dijelaskan pada bab sebelum-nya, MTI (Message Type Indicator) ini terdiri dari 4 digit karakter yang digunakan sebagai awal messageutama ISO 8583 itu sendiri. MTI (Message Type Indicator) ini sendiri dibagi menjadi seperti gambar dibawah ini :

Keterangan Tiap Karakter MTI








Sebagai contoh sederhana, MTI 0110 bisa dijelaskan seperti dibawah ini :

Keterangan MTI (Diambil dari http://en.wikipedia.org/wiki/ISO_8583)







Untuk lebih jelasnya, sekarang mari kita masuk kedalam pembahasan tiap-tiap komponen yang terdapat dalam MTI (Message Type Indicator) beserta contoh-contoh-nya yang akan dijelaskan pada bab-bab dibawah ini :
  • Versi ISO 8583
  • Message Class
  • Message Function
  • Message Origin
  • Contoh Message Type Indicator

  • Pendahuluan

    Supaya memudahkan pemahaman, pada tulisan ini penulis akan mencoba menjelaskan tahap demi tahap kepada para pembaca. Dimulai dari perkenalan apa itu ISO (International Organization for Standardization) 8583, pengenalan format data atau pesan (message) pada ISO 8583, bagaimana membuat sebuah implementasi sederhana ISO 8583 dalam bahasa pemrograman Java menggunakan ServerSocket dan Socket sampai bagaimana membuat sebuah implementasi ISO 8583 dengan menggunakan pustaka (library) jPOS.

    Sebagai awal pembahasan, pada bab ini kita akan membahas topik-topik dasar yaitu :

    • Apa Itu ISO 8583
    • Tipe Message ISO 8583

    Apa Itu ISO 8583


    Apa itu ISO 8583 ? ISO 8583 ini adalah sebuah standart internasional untuk transaksi finansial. Dan standart atau protokol ini sudah sejak lama digunakan oleh perbankan untuk menjembatani komunikasi-nya (walaupun tidak menutup kemungkinan pihak selain bank menggunakan protokol ISO 8583), dengan adanya sebuah standart komunikasi seperti ini maka tidak menutup kemungkinan transaksi dapat tetap dilakukan antar pihak yang terkait walaupun menggunakan sistem atau bahasa pemrograman yang berbeda.
    Sedangkan dimana kita dapat melihat penggunaan nyata ISO 8583 ini ? Penggunaan ISO 8583 ini dapat kita lihat secara nyata yaitu pada mesin-mesin EDC seperti dibawah ini :

    Gambar Mesin EDC












    Selain pada mesin EDC, penggunaan ISO 8583 ini juga banyak diterapkan pada komunikasi antar bank ataupun antara Switcher dengan Biller.