API Documentation

QRIS API Documentation

REST API untuk generate QRIS dinamis dan decode QRIS string. Perfect untuk auto konfirmasi pembayaran.

Base URL

https://rizqy.id/api/tools

1. QRIS Generator API

Generate QRIS dinamis dari QRIS statis dengan nominal dan biaya admin.

Endpoint

POST/qris-generator

Request Body

{
  "qris": "00020101021226670016ID.CO.QRIS.WWW...",
  "nominal": 50000,
  "fee": 0.7,
  "feeType": "percentage"
}

Parameters

ParameterTypeRequiredDescription
qrisstringYesQRIS statis (dimulai "00020")
nominalnumberYesNominal transaksi (Rupiah)
feenumberNoBiaya admin (default: 0)
feeTypestringNo"percentage" atau "rupiah"

Example cURL

curl -X POST https://rizqy.id/api/tools/qris-generator \
  -H "Content-Type: application/json" \
  -d '{
    "qris": "00020101021226670016ID.CO.QRIS.WWW...",
    "nominal": 50000,
    "fee": 0.7,
    "feeType": "percentage"
  }'

2. QRIS Decoder API

Decode dan parse QRIS string untuk mendapatkan informasi merchant dan transaksi.

Endpoint

POSTGET/qris-decoder

Request Body (POST)

{
  "qris": "00020101021226670016ID.CO.QRIS.WWW..."
}

Query String (GET)

/qris-decoder?qris=00020101021226670016ID.CO.QRIS.WWW...

Example cURL

curl -X POST https://rizqy.id/api/tools/qris-decoder \
  -H "Content-Type: application/json" \
  -d '{
    "qris": "00020101021226670016ID.CO.QRIS.WWW..."
  }'

Use Case: Auto Payment Confirmation

Step 1: Generate QRIS

Saat customer checkout, generate QRIS dinamis dengan nominal unik.

const qris = await generatePaymentQRIS(orderId, 50000);
// Save to database with orderId

Step 2: Customer Scan

Customer scan QRIS dari aplikasi bank/e-wallet mereka.

Step 3: Auto Confirm

Parse QRIS dari webhook payment provider, match dengan database.

const decoded = await decodeQRIS(qrisFromWebhook);
const order = await findByAmount(decoded.summary.amount);
await markAsPaid(order.id);

Full Documentation

Lihat dokumentasi lengkap dengan contoh kode PHP, Python, dan JavaScript.

View on GitHub