Beranda

API Reference

Gunakan API PayGate untuk membuat pembayaran QRIS dan menerima hasilnya dari bot atau aplikasi Anda.

Penting: QRIS tidak membaca mutasi merchant sendiri. Status paid membutuhkan pengecek mutasi yang terhubung atau konfirmasi admin. Webhook memberi tahu bot setelah status berubah, bukan membuktikan pembayaran.

Autentikasi

Kirim API key pada setiap permintaan. Key hanya ditampilkan sekali saat dibuat.

Authorization: Bearer pg_live_xxx

POST /api/public/bot/transactions

Buat transaksi

amount wajib berupa bilangan bulat Rp1.000–Rp20.000.000. Respons memuat reference, qr_string, pay_url, dan expires_at.

curl -X POST https://pg.jhonaleystore.id/api/public/bot/transactions \
  -H "Authorization: Bearer pg_live_xxx" \
  -H "Content-Type: application/json" \
  -d '{"amount":15000,"customerName":"Budi","note":"Order #42"}'

GET /api/public/bot/transactions/:reference

Cek status

Status dapat berupa pending, paid, expired, atau failed. Polling yang disarankan: setiap 5–10 detik.

curl https://pg.jhonaleystore.id/api/public/bot/transactions/JHPG-123456789012345678 \
  -H "Authorization: Bearer pg_live_xxx"

Webhook

PayGate mengirim POST untuk transaction.paid, transaction.expired, dan transaction.failed. Verifikasi HMAC-SHA256 dari x-paygate-signature menggunakan teks timestamp.body. Balas 2xx; pengiriman gagal dicoba ulang maksimal lima kali.

{
  "event": "transaction.paid",
  "data": {
    "reference": "JHPG-123456789012345678",
    "status": "paid",
    "amount": 15000,
    "fee": 500,
    "total": 15500,
    "paid_at": "2026-10-15T09:52:00Z"
  }
}