Mulai
Overview Autentikasi IP Whitelist
Endpoint
Cek Saldo Buat QRIS Cek Status Mutasi Transaksi Profil
Referensi
Kode Error Format Response
Base URL: https://payqris.web.id/api/v1
Autentikasi: Query param ?apikey=YOUR_KEY atau header X-API-Key: YOUR_KEY
Autentikasi

API Key Authentication

// Query Parameter GET /api/v1/balance?apikey=pgk_xxxxxxxxxx // Header X-API-Key: pgk_xxxxxxxxxx
Keamanan

IP Whitelist

API key dapat dibatasi hanya bisa digunakan dari IP tertentu (VPS/server Anda). Tambah IP whitelist di halaman Profil.

// Jika IP tidak terdaftar di whitelist: { "status": false, "message": "Akses ditolak. IP 1.2.3.4 tidak ada di whitelist API key ini." }
Endpoint

Saldo & Profil

GET /api/v1/balance Cek Saldo

Mengambil saldo dan informasi profil user saat ini.

ParameterTipeKeterangan
apikey WAJIBstringAPI key Anda
{ "status": true, "data": { "balance": 50000, "name": "Nama", "email": "user@email.com" } }
// Response di sini
Endpoint

QRIS

POST /api/v1/qris/create Buat QRIS

Membuat QRIS pembayaran baru. Berlaku tepat 5 menit. Nominal yang harus dibayar = amount + unique_code (1-100 rupiah acak) untuk mencegah tabrakan nominal antar user.

ParameterTipeKeterangan
apikey WAJIBstringAPI key
amount WAJIBintegerNominal Rupiah (min 100)
{ "status": true, "data": { "trxid": "TRX-A1B2C3D4", "amount": 50000, "amount_bayar": 50047, "unique_code": 47, "qris_image": "https://...", "expired": "2026-01-01 10:05:00" } }
// Response di sini
GET /api/v1/qris/status Cek Status

Mengecek status pembayaran berdasarkan TRX ID.

ParameterTipeKeterangan
apikey WAJIBstringAPI key
trxid WAJIBstringID transaksi dari qris/create
{ "status": true, "data": { "trxid": "SKY-B4903D", "txStatus": "sukses|pending|gagal", "amount": 50000 } }
// Response di sini

Mutasi & Transaksi

GET /api/v1/mutations Riwayat Mutasi
ParameterTipeKeterangan
apikey WAJIBstringAPI key
pageintegerHalaman (default: 1)
limitintegerPer halaman (max 50)
// Response di sini
GET /api/v1/transactions Riwayat Transaksi
ParameterTipeKeterangan
apikey WAJIBstringAPI key
statusstringFilter: sukses|pending|gagal
pageintegerHalaman
limitintegerPer halaman (max 50)
GET /api/v1/profile Profil User

Mengambil data lengkap profil user terkait API key.

// Response di sini

Kode Error

{ "status": false, "message": "API key wajib disertakan." } { "status": false, "message": "API key tidak valid atau akun ditangguhkan." } { "status": false, "message": "Akses ditolak. IP 1.2.3.4 tidak ada di whitelist." } { "status": false, "message": "Parameter amount tidak valid. Minimal 100." } { "status": false, "message": "Transaksi tidak ditemukan." }

Format Response

Semua response menggunakan format JSON dengan field status (boolean) dan data atau message.