QRIS jadi gambar siap pakai

Ubah QRIS statis, dinamis, atau payload string menjadi standee, poster, stiker, dan story promosi. Pilih template, sesuaikan teks, warna, dan logo. Library TypeScript, API gratis, dan generator di browser.

Generator

Semua diproses di browser. QRIS dan logo Anda tidak dikirim ke server mana pun.

1. QRIS

2. Template

3. Nominal (opsional)
4. Tampilan
Lanjutan: template kustom (JSON)

Salin spec template saat ini, ubah posisi/teks/warna, lalu aktifkan. Elemen: rect, circle, path, text, image, qr. Binding: {{merchantName}}, {{nmid}}, {{amount}}, {{colors.primary}}, {{assets.qris}}, {{logo}}.

Pratinjau muncul di sini

URL API (GET, bisa untuk <img>)

Template & kustomisasi

Tiga lapis, makin dalam makin bebas:

import { extendTemplate, renderQRIS } from 'qristifier'

// Turunkan dari preset…
const mine = extendTemplate('minimal', {
  id: 'kafe',
  fields: [{ key: 'footer', label: 'Footer', type: 'text', default: 'Kopi Senja' }],
})
// …atau tulis spec JSON sendiri (rect, circle, path, text, image, qr)
renderQRIS(payload, { template: mine })

Library

ESM + CJS + tipe TypeScript. SVG dihasilkan murni di JS (jalan di Node, Bun, browser, Workers). PNG lewat subpath opsional qristifier/png.

npm i qristifier
import { renderQRIS } from 'qristifier'

// Pilih template, sisanya terisi otomatis dari payload (nama, NMID, ...)
const svg = renderQRIS(payload, { template: 'gpn' })

// Kustomisasi: nominal, tema, logo, teks
const poster = renderQRIS(payload, {
  template: 'poster',
  amount: 25000,               // statis → dinamis (via qrisnamis)
  theme: 'biru',
  qrStyle: 'rounded',
  logo: 'data:image/png;base64,...',
  fields: { title: 'BAYAR DI SINI', footer: 'Terima kasih!' },
})
import { renderQRISPng } from 'qristifier/png' // butuh: npm i @resvg/resvg-wasm

const { png } = await renderQRISPng(payload, { template: 'story', width: 1080 })
await Bun.write('qris.png', png)

Dokumentasi lengkap →

API

Gratis dan stateless. Coba langsung di API Playground.

curl -X POST https://qristifier.pages.dev/api/render \
  -H 'content-type: application/json' \
  -d '{"qris":"000201...","template":"gpn","amount":15000,"format":"png"}' \
  -o qris.png

SVG ringan dan cepat. Render PNG di server memakai CPU lebih besar dan bisa melewati batas plan gratis Cloudflare; untuk PNG besar gunakan generator di atas atau library. Dengan memakai API ini Anda menyetujui Syarat Penggunaan.

Proyek terkait

Traktir pengembang

qristifier gratis dan open source. Kalau bermanfaat, traktir kopi lewat Trakteer atau GitHub Sponsors.