Dokumentasi Reseller API

Base URL: https://reseller.ics-store.my.id
Auth: header X-API-Key atau query ?apikey=... dengan parameter ?action=....

Kembali ke Beranda
Daftar Endpoint
Endpoint Metode Parameter Deskripsi Contoh
/?action=ping GET - Test koneksi & API key. Response selalu {"success":true,"kodereseller":"..."} Lihat
/?action=getProfile GET - Profil reseller lengkap (kodereseller, nama, nomor, email, saldo, verif). Lihat
/?action=getBalance GET - Cek saldo & status verifikasi. Lihat
/?action=listProducts GET type (xla|bpa|fmax|xda|all), opsional providers Daftar produk ready/empty. Harga mengikuti markup API global jika ada. Lihat
/?action=createTransaction POST (JSON) kode_produk, nomor_tujuan, refid Buat transaksi (harga override jika ada markup API). Lihat
/?action=checkTransaction GET/POST refid Cek status transaksi. Lihat
/?action=getHistory GET page, limit, opsional status Riwayat transaksi reseller. Lihat
/?action=getStatistik GET - Ringkasan count & total per status + saldo. Lihat
/?action=resubmitWebhook POST (JSON) refid Kirim ulang webhook transaksi (butuh webhook terset). Lihat
Contoh Request

GET listProducts

GET https://reseller.ics-store.my.id/?action=listProducts&type=xla
Header: X-API-Key: <your-api-key>

POST createTransaction

POST https://reseller.ics-store.my.id/?action=createTransaction
Header: X-API-Key: <your-api-key>
Content-Type: application/json

{
  "kode_produk": "XLA10",
  "nomor_tujuan": "081234567890",
  "refid": "RSAPI123ABC999"
}

Response sukses (ringkas)

{
  "success": true,
  "pending": true,
  "message": "Pesanan diterima, sedang diproses.",
  "refid": "RSAPIAB12CD34",
  "supplier_trxid": "1234567",
  "saldo_awal": 50000,
  "saldo_akhir": 30000
}
Response Lengkap per Endpoint
GET listProducts /?action=listProducts

Daftar produk ready/empty dengan harga final (override markup API jika ada).

{
  "success": true,
  "type": "xla",
  "title": "Daftar Produk Bulanan",
  "providers_used": ["KUBER","BEKASANL"],
  "data": {
    "ready": [
      {
        "kode_produk": "XLA10",
        "nama_produk": "XL AXIS 10GB",
        "deskripsi": "Details Kuota ...",
        "harga_final": 20000,
        "stok": 50,
        "type": "xla",
        "provider": "KUBER"
      }
    ],
    "empty": [
      {
        "kode_produk": "XLA15",
        "nama_produk": "XL AXIS 15GB",
        "deskripsi": "Details Kuota ...",
        "harga_final": 25000,
        "stok": 0,
        "type": "xla",
        "provider": "KUBER"
      }
    ]
  }
}
POST createTransaction (sukses/pending) /?action=createTransaction

Buat transaksi: saldo dipotong, status pending/sukses tergantung supplier. Gunakan refid buatan reseller (unik).

{
  "success": true,
  "pending": true,
  "message": "Pesanan diterima, sedang diproses.",
  "refid": "RSAPIAB12CD34",
  "supplier_trxid": "1234567",
  "saldo_awal": 50000,
  "saldo_akhir": 30000
}
POST createTransaction (gagal)

Contoh response ketika supplier/validasi menolak transaksi.

{
  "error": "Transaksi gagal: alasan",
  "refid": "RSAPIAB12CD34",
  "saldo_awal": 50000,
  "saldo_akhir": 50000
}
GET/POST checkTransaction /?action=checkTransaction

Cek status terkini sebuah refid (success/pending/failed/unpaid).

{
  "success": true,
  "status": "pending",
  "refid": "RSAPIAB12CD34",
  "supplier_trxid": "1234567",
  "kode_produk": "XLA10",
  "nomor_tujuan": "081234567890",
  "harga": 20000,
  "kodereseller": "RS00001",
  "message": "Pesanan diterima",
  "note": "catatan supplier",
  "updated_at": "2025-12-05 12:00:00"
}
GET getHistory /?action=getHistory

Paging riwayat transaksi milik reseller.

{
  "success": true,
  "page": 1,
  "limit": 10,
  "data": [
    {
      "status": "success",
      "kodeproduk": "XLA10",
      "harga": 20000,
      "nomor": "081234567890",
      "refid": "RSAPIAB12CD34",
      "supplier_trxid": "1234567",
      "time": "2025-12-05 12:00:00",
      "message": "SUKSES ..."
    }
  ]
}
GET getStatistik /?action=getStatistik

Ringkasan count & total per status + saldo.

{
  "success": true,
  "saldo": 30000,
  "summary": {
    "success": { "count": 10, "total": 200000 },
    "failed":  { "count": 2,  "total": 40000 },
    "pending": { "count": 1,  "total": 20000 },
    "unpaid":  { "count": 0,  "total": 0 }
  }
}
GET getProfile /?action=getProfile

Detail profil reseller yang sedang login dengan API key.

{
  "success": true,
  "data": {
    "kodereseller": "RS00001",
    "nama": "Nama Reseller",
    "nomor": "628xxxx@s.whatsapp.net",
    "email": "user@mail.com",
    "saldo": 30000,
    "verif": true
  }
}
GET getBalance /?action=getBalance

Cek saldo terbaru + status verifikasi akun.

{
  "success": true,
  "data": {
    "kodereseller": "RS00001",
    "nama": "Nama Reseller",
    "nomor": "628xxxx@s.whatsapp.net",
    "saldo": 30000,
    "verif": true
  }
}
GET ping /?action=ping

Tes API key dan koneksi.

{
  "success": true,
  "kodereseller": "RS00001"
}
POST resubmitWebhook /?action=resubmitWebhook

Kirim ulang webhook transaksi (butuh webhook aktif).

{
  "success": true,
  "message": "Webhook dikirim ulang",
  "webhook_url": "https://your-webhook.url",
  "response": "payload response (dipotong 500 char)"
}
Catatan & Error Handling
  • Gunakan pending untuk menandai transaksi menunggu supplier.
  • Harga final bisa dioverride oleh admin via markup global API.
  • HTTP 401 jika API key kosong/salah, 403 jika tidak aktif, 404 jika data tidak ditemukan.
  • Periksa field error pada response gagal.

Untuk bantuan lebih lanjut, hubungi admin melalui kontak resmi ICS-STORE.