Skip to content

Latest commit

 

History

History
109 lines (75 loc) · 1.98 KB

File metadata and controls

109 lines (75 loc) · 1.98 KB

Penggunaan CLI

English | Bahasa Indonesia

qris-saurus menyediakan CLI sederhana untuk inspeksi dan transformasi payload QRIS.

Build

bun run build

Setelah build, file CLI ada di dist/cli.js.

Mode input

CLI menerima payload QRIS dari tiga sumber:

  1. argumen langsung
  2. --input-file <file>
  3. stdin / pipe

Prioritasnya adalah argumen langsung, lalu file, lalu stdin.

Perintah

Validasi

bun run dist/cli.js validate "<QRIS_PAYLOAD>"
bun run dist/cli.js validate --input-file ./payload.txt
cat ./payload.txt | bun run dist/cli.js validate

Output berupa JSON:

{
  "valid": true,
  "errors": []
}

Parse

bun run dist/cli.js parse "<QRIS_PAYLOAD>"
cat ./payload.txt | bun run dist/cli.js parse

Output berupa struktur TLV hasil parsing.

Deteksi provider

bun run dist/cli.js detect "<QRIS_PAYLOAD>"
bun run dist/cli.js detect --input-file ./payload.txt

Jika provider dikenali, output berisi metadata provider.

Konversi ke dinamis

bun run dist/cli.js dynamic "<QRIS_PAYLOAD>" --amount 12500 --merchant-ref INV-001 --terminal-label POS-A
cat ./payload.txt | bun run dist/cli.js dynamic --amount 12500 --merchant-ref INV-001

Output berupa payload QRIS baru yang sudah:

  • memakai point of initiation dynamic
  • membawa nominal transaksi
  • membawa additional data bila diberikan
  • memiliki CRC baru yang valid

Render PNG

bun run dist/cli.js render "<QRIS_PAYLOAD>" --output ./qris.png --width 320 --margin 2
cat ./payload.txt | bun run dist/cli.js render --output ./qris.png

Output command ini adalah path file PNG yang berhasil dibuat.

Contoh alur

  1. ambil payload QRIS statis
  2. jalankan validate
  3. jalankan detect
  4. jalankan dynamic
  5. ambil payload hasil lalu render jadi image, atau render payload langsung dengan render
  6. gunakan file PNG di UI, POS, invoice, atau sistem internal Anda