Dokumentasi API
Referensi integrasi API sandbox untuk menghubungkan aplikasi Anda dengan STARR.
Authentication
Gunakan empat header berikut. API secret dipakai untuk menghitung signature, bukan dikirim sebagai header.
X-API-KEY: your_api_key X-TIMESTAMP: unix_timestamp X-NONCE: unique_random_value X-SIGNATURE: hmac_sha256
Buat string canonical dari method HTTP, path tanpa query string, timestamp, nonce, dan SHA-256 dari raw request body, dipisahkan dengan baris baru. Lalu hitung HMAC-SHA256 dari string canonical menggunakan API secret.
METHOD PATH TIMESTAMP NONCE SHA256(RAW_BODY)
Kredensial sandbox hanya dapat menggunakan payment provider dalam mode sandbox. Kredensial production/live hanya dapat menggunakan provider mode live.
POST /api/v1/transactions
{
"amount": 10000,
"currency": "IDR",
"payment_method": "QRIS",
"customer_name": "Customer",
"customer_email": "customer@example.com",
"customer_phone": "081234567890"
}
GET /api/v1/transactions
Menampilkan transaksi milik merchant yang sedang terautentikasi.
GET /api/v1/transactions/{uuid}
Mengambil detail satu transaksi milik merchant.
Webhook
Saat transaksi berhasil dibayar, gateway mengirim event
payment.paid ke webhook merchant.
X-Webhook-Event: payment.paid X-Webhook-Timestamp: 1234567890 X-Webhook-Signature: sha256=...
Signature dihitung dari:
HMAC-SHA256( timestamp + "." + raw_json_body, webhook_secret )
Sandbox
Gunakan kredensial sandbox dan provider mode sandbox untuk pengujian. Endpoint simulasi pembayaran tidak dipublikasikan pada API saat ini. Status transaksi hanya boleh dinyatakan berhasil setelah konfirmasi provider yang sah diterima dan diverifikasi.