Lewati ke konten utama

Generate QRIS

Membuat transaksi pembayaran QRIS. Merchant akan menerima data QR yang dapat ditampilkan kepada pelanggan untuk scan dan bayar.

Endpoint

POST /api/v1/payin/qris/generate

Request Body

ParameterTipeWajibKeterangan
merchantTrxIdstringYaID transaksi unik dari merchant
amountnumberYaJumlah pembayaran (dalam Rupiah)
notifyUrlstringYaURL webhook untuk menerima notifikasi status transaksi
productNamestringYaNama produk/jasa

Contoh Request

{
"merchantTrxId": "{{requestId}}",
"amount": 10000,
"notifyUrl": "https://webhook.site/f793fdb2-3881-4a2f-99bc-50c8d4ffc54f",
"productName": "test aja"
}
Transaction ID Unik

Pastikan merchantTrxId selalu unik. ID duplikat akan menghasilkan error "Transaction ID duplicate".

Response Sukses

{
"logId": "BZPkFn1N7zJCOBOQNaWh",
"status": true,
"message": "QRIS created successfully",
"data": {
"merchantTrxId": "2026011422090788287851188",
"platformTrxId": "2026011415091972123",
"qrData": "00020101021226650013ID.NETZME.WWW01189360081401001086120215ID20240000003170303UKE51440014ID.CO.QRIS.WWW0215ID20240000003170303UKE5204413153033605405110005802ID5908LAVISKA16005DEPOK61051641162690703A010812qris_invoice994200020001323154d168e6d14afd981d420a52828bdc63049739",
"amount": 11000,
"expired": 900
}
}

Field Response

FieldKeterangan
merchantTrxIdID transaksi merchant
platformTrxIdID transaksi platform KingsPay
qrDataData string QRIS untuk di-generate menjadi QR code
amountJumlah akhir (dapat berbeda karena fee/admin)
expiredMasa berlaku QR dalam detik

Response Gagal (Duplicate)

{
"status": false,
"message": "Transaction ID duplicate",
"logId": "HeKfJGECBgBCBJrDloEe"
}