Dokumentasi API
- CishoPay
- Dokumentasi API
Callback melibatkan pengiriman notifikasi transaksi dari server CishoPay ke server Anda dengan memanggil URL callback Anda yang berisi detail mengenai transaksi tersebut.
Setelah pembayaran pelanggan selesai, sistem CishoPay akan mengirimkan notifikasi berisi detail transaksi. Selain dikirim pada saat pembayaran sukses, callback juga akan dikirim ketika terjadi perubahan status transaksi sehingga sistem pengguna dapat mengambil tindakan yang sesuai dengan status pembayaran.
Pastikan anda sudah mengisi URL Callback anda di Pengaturan akun
Jangan lupa untuk Whitelist IP kami 195.88.211.145 di sistem anda
| HTTP Method | POST |
|---|---|
| Endpoint | URL Callback Anda |
| Response | JSON |
| account_id | Account ID Anda |
|---|---|
| trx_id | ID transaksi yang diberikan oleh CishoPay. |
| reff_id | ID Unik dari merchant |
| status | Status transaksi (Success / Failed) |
| signature | Signature dengan formula md5 dari account_id:secret:trx_id |
{
"account_id": "acct_6254s922a62b3138190092",
"trx_id": "CS2025NXBS0606", // ID transaksi dari CishoPay
"reff_id": "ABC123", // ID Unik dari merchant
"status": "Success",
"signature": "cdf21ccccac75ec529e7a4d4c209a8a2",
}
<?php
if($_POST['account_id'] == 'YOUR_ACCOUNT_ID' AND $_SERVER['REMOTE_ADDR'] == '195.88.211.145'){
$payment_id = 'YOUR PAYMENT ID (UNIQUE CODE)';
$key = $_POST['key'];
$unique_code = $_POST['unique_code'];
$status = $_POST['status'];
$signature = $_POST['signature'];
$sign = md5('YOUR_APIKEY' . $payment_id . 'CallbackStatus');
if($signature != $sign){
$result = array('success' => false);
} else if($status == 'Success'){
//mysqli_query('YOUR QUERY IF PAYMENT SUCCESS');
$result = array('success' => true);
} else if($status == 'Canceled'){
//mysqli_query('YOUR QUERY IF PAYMENT CANCELED');
$result = array('success' => true);
} else {
$result = array('success' => false);
}
}
header('Content-type: application/json');
echo json_encode($result);
?>
Response API CishoPay
Jenis Respon API yang ditampilkan oleh pihak CishoPay
{
"message": "Callback Received"
}
{
"message": "Callback Rejected."
}