
Membuat Parser QRIS Dengan ChatGPT Dalam Waktu 45 Menit
Demam ChatGPT di mana-mana, kayak tahun 80an waktu demam breakdance dimana-mana sampai ada larangan breakdance karena bisa mengakibatkan cedera.
Tapi memang luar biasa tool AI ini. Konsepnya adalah kita menginstruksikan sesuatu dan engine AI-nya akan membantu kita mewujudkannya. Jika ada yang belum sesuai, kita bisa koreksi dan akan diperbaiki.
Contoh Nyata :
Saya bukan programmer Python. Basic saya PHP, itupun model programming tanpa aturan, sradak sruduk sana sini. Dan saya coba memanfaatkan engine ChatGPT untuk membantu saya membuatkan kode parser QRIS dengan pengetahuan yang saya miliki.
Pertama saya meminta dibuatkan kode parser sederhana

Setelahnya saya meminta ditambahkan fitur agar bisa melakukan parsing terus-menerus hingga akhir karakter

Lalu saya minta tambahkan fitur jika QR ID tertentu lakukan loop untuk nilai yang ada di dalamnya. Dalam hal ini saya tes dengan ID 26.

Setelah itu, saya minta ditambahkan pengecekan CRC checksum yang digunakan oleh QRIS

Terakhir saya minta perulangan di dalam suatu ID tidak hanya di ID 26 saja.

Dan voila, kode python nya dibuat dengan baik.
Saya coba dengan 1 kode QRIS yang saya dapatkan di Google:
00020101021126610014COM.GO-JEK.WWW01189360091435456007810210G5456007810303UMI51440014ID.CO.QRIS.WWW0215ID10190000023280303UMI5204581253033605802ID5916Kantin Ibu Lilik6013Jakarta Pusat61051031062070703A0163044C6B
Dan hasil dari proses parser dengan kode Python nya adalah :
QR ID: 0
QR ID LENGTH: 02
QR ID VALUE: 01
QR ID: 01
QR ID LENGTH: 02
QR ID VALUE: 11
QR ID: 26
QR ID LENGTH: 61
QR ID VALUE: 0014COM.GO-JEK.WWW01189360091435456007810210G5456007810303UMI
Nested QR ID: 00
Nested QR ID LENGTH: 14
Nested QR ID VALUE: COM.GO-JEK.WWW
Nested QR ID: 01
Nested QR ID LENGTH: 18
Nested QR ID VALUE: 936009143545600781
Nested QR ID: 02
Nested QR ID LENGTH: 10
Nested QR ID VALUE: G545600781
Nested QR ID: 03
Nested QR ID LENGTH: 03
Nested QR ID VALUE: UMI
QR ID: 51
QR ID LENGTH: 44
QR ID VALUE: 0014ID.CO.QRIS.WWW0215ID10190000023280303UMI
Nested QR ID: 00
Nested QR ID LENGTH: 14
Nested QR ID VALUE: ID.CO.QRIS.WWW
Nested QR ID: 02
Nested QR ID LENGTH: 15
Nested QR ID VALUE: ID1019000002328
Nested QR ID: 03
Nested QR ID LENGTH: 03
Nested QR ID VALUE: UMI
QR ID: 52
QR ID LENGTH: 04
QR ID VALUE: 5812
QR ID: 53
QR ID LENGTH: 03
QR ID VALUE: 360
QR ID: 58
QR ID LENGTH: 02
QR ID VALUE: ID
QR ID: 59
QR ID LENGTH: 16
QR ID VALUE: Kantin Ibu Lilik
QR ID: 60
QR ID LENGTH: 13
QR ID VALUE: Jakarta Pusat
QR ID: 61
QR ID LENGTH: 05
QR ID VALUE: 10310
QR ID: 62
QR ID LENGTH: 07
QR ID VALUE: 0703A01
Nested QR ID: 07
Nested QR ID LENGTH: 03
Nested QR ID VALUE: A01
QR ID: 63
QR ID LENGTH: 04
QR ID VALUE: 4C6B
CRC check passed
Total waktu pembuatan kode Python sekitar 45 menit.
Tanpa pengetahuan tentang Python secara mendalam dan belum pernah membuat aplikasi dengan Python sebelumnya.
Kode ini tinggak dicek oleh Tech Lead untuk dipastikan, dan jika memang lebih ringkas dan efisien, kenapa tidak?
Notes:
Mungkin ada yang bertanya “Kalau hanya 5 instruksi saja, kenapa butuh waktu 45 menit? Harusnya lebih cepat”
Betulll, harusnya bisa lebih cepat. Hal ini dikarenakan saya masih awam di Python, jadi masih belajar cara memastikan kodenya bisa berjalan atau tidak. Seandainya sudah mempunyai basic Python tentunya lebih cepat.
— -

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.