Skip to main content

API Overview

IsiKuota API adalah REST API berbasis POST dengan format JSON. Semua komunikasi melalui HTTPS.

Base URL

https://api.isikuota.com/v1

Daftar Endpoint

EndpointDeskripsi
POST /v1/balanceCek saldo akun
POST /v1/productsDaftar produk (prepaid, game, pascabayar)
POST /v1/orderOrder prepaid/game, inquiry tagihan, bayar tagihan pascabayar
POST /v1/statusCek status transaksi

Semua endpoint memerlukan parameter autentikasi: api_id, timestamp, signature.

Cara membuat signature

Format Request

Semua request menggunakan POST dengan Content-Type: application/json:

{
"api_id": "your_api_id",
"timestamp": 1748678400,
"signature": "abc123def456...",
"cmd": "prepaid",
"code": "TSEL21",
"customer_no": "08123456789"
}
KetentuanNilai
MethodPOST
Content-Typeapplication/json
EncodingUTF-8

Format Response

Semua response mengikuti struktur yang konsisten:

{
"success": true,
"code": "ORDER_SUCCESS",
"message": "Transaksi berhasil diproses",
"data": {
"ref_id": "TRX12345asdxxx",
"status": "Success",
"name": "Telkomsel 21.000",
"price": 21425,
"sn": "1234-5678-9012",
"created_at": "2026-05-31 12:36:46"
},
"errors": null,
"meta": null
}
FieldTipeKeterangan
successbooleantrue jika request berhasil
codestringKode status — lihat daftar lengkap
messagestringPesan deskriptif
dataobject/nullData hasil transaksi
errorsobject/nullDetail error jika ada
metaobject/nullInformasi tambahan (pagination, dll)

Jika gagal, success bernilai false:

{
"success": false,
"code": "INVALID_SIGNATURE",
"message": "Signature tidak valid, periksa kembali api_key dan urutan parameter",
"data": null,
"errors": null,
"meta": null
}

Lihat semua error codes

Alur Transaksi Prepaid & Game

1. POST /v1/products (cmd: prepaid/game) → pilih kode produk
2. POST /v1/order (cmd: prepaid/game) → kirim transaksi
3. POST /v1/status → cek jika masih pending
4. Webhook/Callback → terima notifikasi status final

Alur Transaksi Pascabayar

1. POST /v1/products (cmd: pasca) → pilih kode produk
2. POST /v1/order (cmd: inquiry) → cek tagihan, simpan ref_id
3. POST /v1/order (cmd: pay-pasca) → bayar dengan ref_id yang sama
4. POST /v1/status → cek jika masih pending
5. Webhook/Callback → terima notifikasi status final
Inquiry berlaku 5 menit

Setelah inquiry, pembayaran harus dilakukan dalam 5 menit menggunakan ref_id yang sama. Lewat dari itu, ulangi inquiry dari awal.

Idempotency

Gunakan ref_id yang unik per transaksi. Jika request dengan ref_id yang sama dikirim ulang, API mengembalikan data transaksi yang sudah ada — tidak membuat transaksi baru.

Jangan langsung retry

Jika request timeout, cek dulu status via POST /v1/status menggunakan ref_id sebelum membuat transaksi baru. Transaksi mungkin sudah berhasil meski response tidak diterima.

Mode Testing

Tambahkan "testing": true untuk simulasi transaksi tanpa memotong saldo:

{
"api_id": "your_api_id",
"timestamp": 1748678400,
"signature": "abc123...",
"cmd": "prepaid",
"code": "TSEL21",
"customer_no": "08123456789",
"testing": true
}

Pelajari lebih lanjut tentang Mode Testing