Cek Saldo

587.044 request sukses

Endpoint ini digunakan untuk mengecek sisa saldo deposit akun pengguna yang dapat digunakan untuk melakukan transaksi.

Catatan: Pastikan Anda sudah melakukan deposit terlebih dahulu sebelum melakukan transaksi. Saldo akan otomatis berkurang setiap kali melakukan transaksi berhasil.

Endpoint

POST /v1/balance

https://api.kokinpay.com/v1/balance

Request Parameters

Berikut adalah parameter yang diperlukan untuk melakukan request cek saldo:

Parameter Type Status Deskripsi
cmd string Required Command yang digunakan. Untuk cek saldo gunakan nilai: deposit
api_key string Required API Key yang didapatkan setelah registrasi di kokinpay.com
sign string Required Signature untuk validasi request. Format: MD5(api_key + cmd)

Cara Membuat Signature

Signature dibuat dengan menggabungkan api_key dan cmd kemudian di-hash menggunakan MD5.

Formula Signature
sign = MD5(api_key + cmd)
Contoh Pembuatan Signature (PHP)
$api_key = "your-api-key-here";
$cmd = "deposit";

$sign = md5($api_key . $cmd);

echo $sign; // hasil hash MD5
Contoh Pembuatan Signature (JavaScript/Node.js)
const crypto = require('crypto');

const api_key = "your-api-key-here";
const cmd = "deposit";

const sign = crypto.createHash('md5')
    .update(api_key + cmd)
    .digest('hex');

console.log(sign); // hasil hash MD5
Contoh Pembuatan Signature (Python)
import hashlib

api_key = "your-api-key-here"
cmd = "deposit"

sign = hashlib.md5((api_key + cmd).encode()).hexdigest()

print(sign)  # hasil hash MD5

Request Example

Berikut contoh request body dalam format JSON:

Request Body
{
  "cmd": "deposit",
  "api_key": "your-api-key-here",
  "sign": "740b00a1b8784e028cc8078edf66d12b"
}
cURL Example
curl -X POST https://api.kokinpay.com/v1/balance \
  -H "Content-Type: application/json" \
  -d '{
    "cmd": "deposit",
    "api_key": "your-api-key-here",
    "sign": "740b00a1b8784e028cc8078edf66d12b"
  }'

Response

API akan mengembalikan response dalam format JSON dengan struktur sebagai berikut:

Response Sukses (200 OK)

{
  "status": true,
  "data": {
    "balance": 1500000
  }
}
Field Type Deskripsi
status boolean Status response. true jika berhasil, false jika gagal
balance integer Jumlah saldo deposit dalam Rupiah (IDR)

Response Error

Jika terjadi error, API akan mengembalikan response dengan format berikut:

Error - Parameter Tidak Lengkap (400 Bad Request)
{
  "status": false,
  "message": "Gagal memproses permintaan Anda. Harap periksa parameter yang dibutuhkan"
}
Error - Signature Tidak Valid (401 Unauthorized)
{
  "status": false,
  "message": "Invalid signature"
}
Error - Akses Ditolak (403 Forbidden)
{
  "status": false,
  "message": "Akses tidak diizinkan"
}

HTTP Status Code

Status Code Deskripsi
200 Request berhasil diproses
400 Parameter yang dikirim tidak lengkap atau tidak valid
401 Signature tidak valid atau API Key tidak ditemukan
403 Akses ditolak (misalnya: role admin tidak diizinkan)

Contoh Implementasi

Contoh Implementasi PHP
<?php

$api_key = "your-api-key-here";
$cmd = "deposit";
$sign = md5($api_key . $cmd);

$data = [
    'cmd' => $cmd,
    'api_key' => $api_key,
    'sign' => $sign
];

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://api.kokinpay.com/v1/balance");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($ch);
curl_close($ch);

$result = json_decode($response, true);

if($result['status']) {
    echo "Saldo Anda: Rp " . number_format($result['data']['balance'], 0, ',', '.');
} else {
    echo "Error: " . $result['message'];
}
?>
Contoh Implementasi JavaScript (Fetch API)
const crypto = require('crypto');

const api_key = "your-api-key-here";
const cmd = "deposit";
const sign = crypto.createHash('md5').update(api_key + cmd).digest('hex');

const data = {
  cmd: cmd,
  api_key: api_key,
  sign: sign
};

fetch('https://api.kokinpay.com/v1/balance', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json'
  },
  body: JSON.stringify(data)
})
.then(response => response.json())
.then(result => {
  if(result.status) {
    console.log('Saldo Anda: Rp', result.data.balance.toLocaleString('id-ID'));
  } else {
    console.log('Error:', result.message);
  }
})
.catch(error => console.error('Error:', error));
Penting: Pastikan signature digenerate dengan benar. Jika signature tidak sesuai, request akan ditolak dengan error "Invalid signature".