Skip to main content

REST API IsiKuota โ€” Otomasi Transaksi PPOB untuk Semua Akun

ยท 3 min read
Tim Developer IsiKuota
Backend & Platform Engineering

Kabar baik untuk para developer! REST API IsiKuota tersedia untuk semua akun (member maupun reseller) โ€” memungkinkan Anda mengotomasi transaksi PPOB langsung dari sistem, website, atau bot Anda sendiri. Reseller mendapat rate limit lebih besar, tapi akses API-nya sama untuk semua.

Kenapa Pakai REST API?โ€‹

Selama ini transaksi dilakukan manual lewat Dashboard atau Telegram Bot. Dengan REST API, Anda bisa:

  • Integrasi ke aplikasi/website sendiri โ€” jual produk PPOB dengan brand Anda
  • Otomasi penuh โ€” order, cek status, dan cek saldo tanpa campur tangan manual
  • Notifikasi real-time lewat webhook saat status transaksi berubah
  • Skalakan bisnis tanpa batasan kapasitas manual

Endpoint yang Tersediaโ€‹

Semua endpoint berada di bawah base URL https://api.isikuota.com/v1:

EndpointFungsi
POST /v1/balanceCek saldo akun
POST /v1/productsAmbil daftar produk & harga
POST /v1/transactionBuat transaksi (pulsa, data, PLN, dll.)
POST /v1/statusCek status transaksi
GET /v1/healthHealth check (DB & layanan)

Format Response yang Konsistenโ€‹

Semua endpoint mengembalikan format response yang seragam:

{
"status": "success",
"rc": "00",
"message": "Pesan deskriptif",
"data": { ... }
}

Tentukan tindakan Anda berdasarkan field status dan rc (response code), bukan dari teks message.

Autentikasi Berbasis Signatureโ€‹

Demi keamanan, setiap request divalidasi menggunakan signature HMAC-SHA256 โ€” bukan sekadar API key statis. Ini memastikan request benar-benar dari Anda dan isi request tidak dimodifikasi di perjalanan.

Setiap request menyertakan tiga parameter: api_id, timestamp, dan signature. Signature dihitung dari kombinasi api_id|api_key|timestamp|body_hash menggunakan secret_key Anda.

$bodyHash = hash('sha256', $canonicalBody);
$stringToSign = implode('|', [$api_id, $api_key, $timestamp, $bodyHash]);
$signature = hash_hmac('sha256', $stringToSign, $secret_key);

โ†’ Panduan lengkap di Autentikasi & Signature.

Anti Transaksi Gandaโ€‹

Setiap order mendukung ref_id unik. Jika request dikirim ulang dengan ref_id yang sama (mis. karena timeout), sistem mengenalinya sebagai transaksi yang sama โ€” sehingga mencegah double charge.

Selalu cek status saat timeout

Jika request Anda timeout, jangan langsung retry. Cek dulu via POST /v1/status dengan ref_id yang sama. Aman untuk retry hanya jika transaksi belum tercatat.

Mode Testingโ€‹

Tambahkan "testing": true pada request untuk menjalankan transaksi tanpa memotong saldo asli dan tanpa memproses ke provider. Cocok untuk menguji integrasi sebelum go-live.

โ†’ Detail di Mode Testing.

Mulai Sekarangโ€‹

  1. Login ke Dashboard โ†’ Pengaturan โ†’ API
  2. Salin api_id, api_key, dan secret_key
  3. Coba endpoint pertama dengan Postman

Baca dokumentasi lengkap: Referensi API โ†’

Butuh bantuan integrasi? Hubungi tim kami di [email protected] atau @isikuota_cs.