English | Bahasa Indonesia
qris-saurus menyediakan CLI sederhana untuk inspeksi dan transformasi payload QRIS.
bun run buildSetelah build, file CLI ada di dist/cli.js.
CLI menerima payload QRIS dari tiga sumber:
- argumen langsung
--input-file <file>- stdin / pipe
Prioritasnya adalah argumen langsung, lalu file, lalu stdin.
bun run dist/cli.js validate "<QRIS_PAYLOAD>"bun run dist/cli.js validate --input-file ./payload.txtcat ./payload.txt | bun run dist/cli.js validateOutput berupa JSON:
{
"valid": true,
"errors": []
}bun run dist/cli.js parse "<QRIS_PAYLOAD>"cat ./payload.txt | bun run dist/cli.js parseOutput berupa struktur TLV hasil parsing.
bun run dist/cli.js detect "<QRIS_PAYLOAD>"bun run dist/cli.js detect --input-file ./payload.txtJika provider dikenali, output berisi metadata provider.
bun run dist/cli.js dynamic "<QRIS_PAYLOAD>" --amount 12500 --merchant-ref INV-001 --terminal-label POS-Acat ./payload.txt | bun run dist/cli.js dynamic --amount 12500 --merchant-ref INV-001Output berupa payload QRIS baru yang sudah:
- memakai point of initiation dynamic
- membawa nominal transaksi
- membawa additional data bila diberikan
- memiliki CRC baru yang valid
bun run dist/cli.js render "<QRIS_PAYLOAD>" --output ./qris.png --width 320 --margin 2cat ./payload.txt | bun run dist/cli.js render --output ./qris.pngOutput command ini adalah path file PNG yang berhasil dibuat.
- ambil payload QRIS statis
- jalankan
validate - jalankan
detect - jalankan
dynamic - ambil payload hasil lalu render jadi image, atau render payload langsung dengan
render - gunakan file PNG di UI, POS, invoice, atau sistem internal Anda