Alur Integrasi
- Merchant melengkapi profil dan dokumen legalitas.
- Merchant mengambil Kode Merchant, API Key, dan Private Key dari dashboard.
- Merchant mengisi callback URL dan whitelist IP server.
- Website merchant membuat transaksi melalui API JugPay.
- Pelanggan membayar melalui channel gateway aktif.
- JugPay memperbarui status dan mengirim callback ke website merchant.
Autentikasi API
Setiap request API wajib membawa API Key dan signature HMAC SHA-256. Signature dibuat dari raw JSON body menggunakan Private Key merchant.
X-JugPay-Key: jp_live_xxxxxxxxx
X-JugPay-Signature: hash_hmac('sha256', raw_json_body, private_key)
Membuat Transaksi
POST https://jugpay.site/api/v1/transactionsContent-Type: application/json
X-JugPay-Key: jp_live_xxx
X-JugPay-Signature: hmac_sha256(raw_json_body, private_key)
{
"merchant_ref": "INV-20260710-0001",
"amount": 150000,
"payment_method": "QRIS",
"customer_name": "Budi Santoso",
"customer_email": "budi@example.com",
"customer_phone": "081234567890",
"description": "Pembayaran pesanan"
}
Cek Status Transaksi
GET https://jugpay.site/api/v1/transactions/INV-20260710-0001X-JugPay-Key: jp_live_xxx
Callback Merchant
Callback dikirim ke URL webhook merchant. Website merchant wajib memvalidasi header X-JugPay-Signature sebelum mengubah status order.
{
"merchant_ref": "INV-20260710-0001",
"gateway_ref": "T1234567890",
"amount": 150000,
"status": "paid",
"paid_at": "2026-07-10T10:30:00+07:00",
"gateway": "tripay"
}
Checklist Go-Live
- API Key dan Private Key sudah disimpan di server, bukan di frontend.
- Whitelist IP server produksi sudah diisi.
- Callback URL menggunakan HTTPS dan dapat menerima POST JSON.
- Signature callback sudah divalidasi sebelum update order.
- Metode pembayaran yang aktif sudah sesuai gateway aktif.
- Pengujian transaksi sukses, gagal, expired, dan callback ulang sudah dilakukan.
Dokumentasi teknis lengkap juga tersedia di dashboard merchant pada menu Dokumentasi API, termasuk contoh PHP Native, Laravel, Node.js, OpenAPI, dan Postman Collection.