Query Disbursement
Look up the status of an existing disbursement.
Endpoint
POST /api/disbursement/query
Authentication
RSA-SHA256 X-SIGNATURE header. See Authentication.
Request
Headers
| Header | Required | Description |
|---|---|---|
X-SIGNATURE | Yes | Base64-encoded RSA-SHA256 signature |
Content-Type | Yes | application/json |
Body
| Field | Type | Required | Description |
|---|---|---|---|
clientId | string | Yes | Your legacy_client_id |
orderId | string | Yes | The orderId used when creating the disbursement |
Example
PHP
$body = json_encode([
'clientId' => 'TEST_CLIENT_001',
'orderId' => 'DISB-2026-001',
]);
$bodyHash = hash('sha256', $body);
$stringToSign = "TEST_CLIENT_001|TEST_SECRET_001|$bodyHash";
openssl_sign($stringToSign, $rawSig, $privateKey, OPENSSL_ALGO_SHA256);
$xSignature = base64_encode($rawSig);
$ch = curl_init('https://api.nusio-saka.com/api/disbursement/query');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Content-Type: application/json', 'X-SIGNATURE: ' . $xSignature],
CURLOPT_POSTFIELDS => $body,
]);
$response = json_decode(curl_exec($ch), true);
Response
HTTP 200 OK
{
"code": 200,
"message": "Success",
"data": {
"refCode": "DSB-260601110000-C3D4",
"orderId": "DISB-2026-001",
"accountNumber": "1234567890",
"accountName": "Budi Santoso",
"bank": {
"name": "Bank Central Asia",
"code": "BCA"
},
"requestAmount": "500000.00",
"disbursementFee": "5000.00",
"disbursementAmount": "505000.00",
"status": "SUCCESS",
"requestAt": "2026-06-01 11:00:00"
}
}
Status Values
| Status | Description |
|---|---|
PENDING | Submitted, awaiting processing |
IN_REVIEW | Under manual review |
ON_PROCESS | Being sent to bank/e-wallet |
SUCCESS | Funds delivered |
FAILED | Transfer failed |
REJECTED | Rejected by platform |
Error Responses
| Message | Description |
|---|---|
Order ID not found | No disbursement with this orderId for your merchant |
Invalid X-SIGNATURE | Signature verification failed |