Quick Start — 5 Menit Pertama
Panduan ini akan membawa Anda dari nol hingga transaksi pertama dalam 5 menit.
Langkah 1: Daftar & Dapatkan API Key
- Buka isikuota.com/register
- Isi form pendaftaran dan verifikasi email
- Masuk ke Dashboard → Settings → API Keys
- Klik Generate New API Key
- Salin API key Anda (format:
fP9uiwEkizarzQv0zQG4Q2Vvxxxxxxxxxxxxxx)
warning
Jangan pernah membagikan API Key Anda kepada siapapun. Simpan dengan aman di environment variables atau konfigurasi server Anda.
Langkah 2: Cek Saldo
Sebelum bertransaksi, pastikan saldo Anda mencukupi:
- cURL
- PHP
- Python
- JavaScript
curl -X GET https://api.isikuota.com/v1/balance \
-H "Authorization: Bearer sk_live_xxxxxxxxxxxx"
<?php
$ch = curl_init('https://api.isikuota.com/v1/balance');
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Authorization: Bearer sk_live_xxxxxxxxxxxx',
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
$data = json_decode($response, true);
echo "Saldo: " . $data['data']['balance_formatted'];
import requests
headers = {"Authorization": "Bearer sk_live_xxxxxxxxxxxx"}
response = requests.get("https://api.isikuota.com/v1/balance", headers=headers)
data = response.json()
print(f"Saldo: {data['data']['balance_formatted']}")
const response = await fetch('https://api.isikuota.com/v1/balance', {
headers: { 'Authorization': 'Bearer sk_live_xxxxxxxxxxxx' }
});
const data = await response.json();
console.log('Saldo:', data.data.balance_formatted);
Response:
{
"status": "success",
"rc": "00",
"data": {
"balance": 5000000,
"balance_formatted": "Rp 5.000.000"
}
}
Langkah 3: Cek Produk Tersedia
Ambil daftar produk yang bisa dibeli (gunakan type untuk filter):
# Semua produk pulsa
curl "https://api.isikuota.com/v1/products?type=pulsa&operator=telkomsel" \
-H "Authorization: Bearer sk_live_xxxxxxxxxxxx"
Response:
{
"status": "success",
"data": [
{
"code": "TSEL5",
"name": "Telkomsel Rp 5.000",
"price": 6000,
"type": "pulsa",
"status": "active"
},
{
"code": "TSEL10",
"name": "Telkomsel Rp 10.000",
"price": 11500,
"type": "pulsa",
"status": "active"
}
]
}
Langkah 4: Lakukan Transaksi
- cURL
- PHP
- Python
curl -X POST https://api.isikuota.com/v1/transaction \
-H "Authorization: Bearer sk_live_xxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"product_code": "TSEL10",
"customer_id": "081234567890",
"ref_id": "ORDER-2025-001"
}'
<?php
$payload = json_encode([
'product_code' => 'TSEL10',
'customer_id' => '081234567890',
'ref_id' => 'ORDER-2025-001',
]);
$ch = curl_init('https://api.isikuota.com/v1/transaction');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => $payload,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer sk_live_xxxxxxxxxxxx',
'Content-Type: application/json',
],
]);
$result = json_decode(curl_exec($ch), true);
curl_close($ch);
echo "Status: " . $result['status'];
echo "TRX ID: " . $result['data']['trx_id'];
import requests
payload = {
"product_code": "TSEL10",
"customer_id": "081234567890",
"ref_id": "ORDER-2025-001"
}
headers = {
"Authorization": "Bearer sk_live_xxxxxxxxxxxx",
"Content-Type": "application/json"
}
response = requests.post(
"https://api.isikuota.com/v1/transaction",
json=payload,
headers=headers
)
result = response.json()
print(f"Status: {result['status']}")
print(f"TRX ID: {result['data']['trx_id']}")
Response Sukses:
{
"status": "success",
"rc": "00",
"message": "Transaksi berhasil diproses",
"data": {
"trx_id": "TRX-20250101-001234",
"ref_id": "ORDER-2025-001",
"product_code": "TSEL10",
"product_name": "Telkomsel Rp 10.000",
"customer_id": "081234567890",
"price": 11500,
"status": "success",
"sn": "202501011234567890",
"created_at": "2025-01-01T10:00:00+07:00"
}
}
Langkah 5: Cek Status Transaksi
curl https://api.isikuota.com/v1/transaction/TRX-20250101-001234 \
-H "Authorization: Bearer sk_live_xxxxxxxxxxxx"
Atau cek via ref_id Anda:
curl "https://api.isikuota.com/v1/transaction?ref_id=ORDER-2025-001" \
-H "Authorization: Bearer sk_live_xxxxxxxxxxxx"
Alur Status Transaksi
pending ──► processing ──► success
│
└──► failed
| Status | Keterangan |
|---|---|
pending | Transaksi diterima, menunggu diproses |
processing | Sedang diproses ke provider |
success | Transaksi berhasil |
failed | Transaksi gagal — saldo dikembalikan |
ref_id harus unik
ref_id adalah ID transaksi dari sistem Anda. Harus unik per transaksi dan tidak boleh diulang. Format bebas, max 64 karakter.
Langkah Selanjutnya
- Konfigurasi Webhook — Terima notifikasi otomatis
- API Reference Lengkap — Semua endpoint tersedia
- Penanganan Error — Tangani kode error dengan benar