Membuat Parser QRIS CPM Dengan ChatGPT
Setelah sebelumnya bisa membuat parser QRIS MPM dengan bantuan ChatGPT (bisa dilihat disini) kali ini saya tertantang untuk membuat parser QRIS CPM, tentunya dibantu ChatGPT juga. Kira-kira bisa gak ya?
Kenapa agak ragu, karena jujur saya sama sekali tidak paham cara membaca QRIS CPM, ada kode HEXA yang digunakan, berbeda dengan QRIS MPM yang hanya membaca string biasa sehingga langsung bisa terbaca dengan hanya melihat string nya saja.
Sebelumnya saya akan sedikit menjelaskan perbedaan QRIS MPM dan QRIS CPM.
MPM itu singkatan dari Merchant Presented Mode, dimana QRIS akan ditampilkan oleh merchant/penjual. Customer akan membuka aplikasi mereka dan melakukan scan kepada QRIS milik merchant tersebut. Hal ini yang umum kita jumpai sekarang kalau kita membayar menggunakan QRIS.
CPM itu singkatan dari Customer Presented Mode, dimana QRIS akan ditampilkan oleh customer/pembeli. Di proses ini, sebaliknya, si merchant/penjual yang akan melakukan scan QRIS milik customer. Contohnya seperti transaksi di mesin layanan pesan mandiri McDonald’s. Dengan mesin tersebut, QRIS di aplikasi kita bisa discan untuk dilakukan pembayaran.

Format QRIS CPM berbeda dengan format QRIS MPM. Seperti kita ketahui kalau format QRIS MPM berupa string yang mempunyai format 2 digit ID, 2 digit length value dan sisa nya adalah value nya sesuai panjang yang diinformasikan sebelumnya.
Di CPM format yang digunakan adalah HEXA dan harus melakukan pengecekan di setiap kode HEXA, bukan string.
Pertama yang saya coba, saya minta ChatGPT untuk langsung melakukan parsing dengan petunjuk Consumer Presented Mode

Tapi hasilnya gagal, cara yang digunakan tidak sesuai. Data tidak bisa dibaca. Saya lalu mencoba beberapa cara, sampai nyasar minta menggunakan BER-TLV segala.

Jadi makin ngawur hasilnya. Udah gitu ChatGPT gratisan sering ngadat saat memberikan respon. Akhirnya pindah ke Poe nya Quora, ada ChatGPT nya juga dan jarang ngadat. Ok, kita coba pendekatan berbeda. Saya akan berikan contoh dan hasil yang diinginkan.

Tapi si Om Gepete masih saja salah terus membuat code nya. Dan saya harus terus melakukan koreksi.

Dan tidak berhasil juga. Udah mau menyerah saja tadinya, ribet juga ngomong sama mesin yak 😁 Tapi saya coba pendekatan lain lagi, saya minta coba di print saja per baris untuk debugging terlebih dahulu.

Akhirnyaaaaa. Nah tinggal melakukan parsing. Tapi si Om Gepete masih saja gagal parsing, aarrghhhhh. Jadi saya mesti turun tangan juga ngedebug.

Haiyah, gimana nih si Om, mesti dibantu juga. Sudah dapat nih 1 data, tetapi data kedua nya belum dapat. Mesti dikasih tahu lagi caranya.

Dan akhirnya dapat juga hasilnya, fiuhhhhh.
Kode QRIS CPM asli adalah :
hQVDUFYwMWEVTwfRI0VniRAQWgqTYBI0ESNFZ4mf
Hasil parsingnya adalah :
ADF Name: D1234567891010
Application PAN: 9360123411234567899
Total waktu yang dibutuhkan sekitar 3 jam untuk mendapatkan hasil ini. Ini dua2nya sama gaptek QRIS CPM. Yang minta tolong dibuatkan cara parsing QRIS CPM belum paham kode QRIS CPM nya, yang diminta tolong juga sama saja.
Oiya, btw, Om Gepete sepertinya tahu sebentar lagi mau Ramadhan, soalnya banyak banget minta maaf nya 😅

Mohon maaf lahir batin juga Om Gepete 🙏

Sandi Fajariadi mempunyai pengalaman di product development terutama terkait payment, emoney dan ewallet. Di waktu senggang membuat aplikasi mobile seperti QRIS wantuno, cek RS dan dengan temannya bersenang senang membuat beberapa lagu di The Vader
Originally published at https://www.linkedin.com.