curl -X POST "https://api.onekhusa.com/sandbox/v1/disbursements/batch/reject" \
--header "Authorization: Bearer your-jwt-token" \
--header "Content-Type: application/json" \
--header "Accept-Language: en" \
--header "X-Idempotency-Key: your-idempotency-key" \
-d '{
"merchantAccountNumber": 35253486,
"batchNumber": 11111111,
"reasonForRejection": "Invalid beneficiary information",
"rejectedBy": "admin@onekhusa.com"
}'import requests
url = "https://api.onekhusa.com/sandbox/v1/disbursements/batch/reject"
payload = {
"merchantAccountNumber": 35253486,
"batchNumber": 11111111,
"reasonForRejection": "Invalid beneficiary information",
"rejectedBy": "admin@onekhusa.com"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
merchantAccountNumber: 35253486,
batchNumber: 11111111,
reasonForRejection: 'Invalid beneficiary information',
rejectedBy: 'admin@onekhusa.com'
})
};
fetch('https://api.onekhusa.com/sandbox/v1/disbursements/batch/reject', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.onekhusa.com/sandbox/v1/disbursements/batch/reject",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'merchantAccountNumber' => 35253486,
'batchNumber' => 11111111,
'reasonForRejection' => 'Invalid beneficiary information',
'rejectedBy' => 'admin@onekhusa.com'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.onekhusa.com/sandbox/v1/disbursements/batch/reject"
payload := strings.NewReader("{\n \"merchantAccountNumber\": 35253486,\n \"batchNumber\": 11111111,\n \"reasonForRejection\": \"Invalid beneficiary information\",\n \"rejectedBy\": \"admin@onekhusa.com\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.onekhusa.com/sandbox/v1/disbursements/batch/reject")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"merchantAccountNumber\": 35253486,\n \"batchNumber\": 11111111,\n \"reasonForRejection\": \"Invalid beneficiary information\",\n \"rejectedBy\": \"admin@onekhusa.com\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.onekhusa.com/sandbox/v1/disbursements/batch/reject")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"merchantAccountNumber\": 35253486,\n \"batchNumber\": 11111111,\n \"reasonForRejection\": \"Invalid beneficiary information\",\n \"rejectedBy\": \"admin@onekhusa.com\"\n}"
response = http.request(request)
puts response.read_body{
"MerchantAccountNumber": 12345678,
"BatchNumber": 123456,
"CurrencyCode": "MWK",
"BatchStatusCode": "X",
"ContentType": "CSV",
"DataSource": "File",
"NumberOfSuccessfulEntries": 1200,
"TotalAmountOfSuccessfulEntries": 52000500
}Reject Batch
This endpoint allows authorized users to reject a batch of disbursements, preventing it from being processed. Once rejected, the batch cannot be reactivated and all associated transactions are marked as rejected.
curl -X POST "https://api.onekhusa.com/sandbox/v1/disbursements/batch/reject" \
--header "Authorization: Bearer your-jwt-token" \
--header "Content-Type: application/json" \
--header "Accept-Language: en" \
--header "X-Idempotency-Key: your-idempotency-key" \
-d '{
"merchantAccountNumber": 35253486,
"batchNumber": 11111111,
"reasonForRejection": "Invalid beneficiary information",
"rejectedBy": "admin@onekhusa.com"
}'import requests
url = "https://api.onekhusa.com/sandbox/v1/disbursements/batch/reject"
payload = {
"merchantAccountNumber": 35253486,
"batchNumber": 11111111,
"reasonForRejection": "Invalid beneficiary information",
"rejectedBy": "admin@onekhusa.com"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
merchantAccountNumber: 35253486,
batchNumber: 11111111,
reasonForRejection: 'Invalid beneficiary information',
rejectedBy: 'admin@onekhusa.com'
})
};
fetch('https://api.onekhusa.com/sandbox/v1/disbursements/batch/reject', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.onekhusa.com/sandbox/v1/disbursements/batch/reject",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'merchantAccountNumber' => 35253486,
'batchNumber' => 11111111,
'reasonForRejection' => 'Invalid beneficiary information',
'rejectedBy' => 'admin@onekhusa.com'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.onekhusa.com/sandbox/v1/disbursements/batch/reject"
payload := strings.NewReader("{\n \"merchantAccountNumber\": 35253486,\n \"batchNumber\": 11111111,\n \"reasonForRejection\": \"Invalid beneficiary information\",\n \"rejectedBy\": \"admin@onekhusa.com\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.onekhusa.com/sandbox/v1/disbursements/batch/reject")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"merchantAccountNumber\": 35253486,\n \"batchNumber\": 11111111,\n \"reasonForRejection\": \"Invalid beneficiary information\",\n \"rejectedBy\": \"admin@onekhusa.com\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.onekhusa.com/sandbox/v1/disbursements/batch/reject")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"merchantAccountNumber\": 35253486,\n \"batchNumber\": 11111111,\n \"reasonForRejection\": \"Invalid beneficiary information\",\n \"rejectedBy\": \"admin@onekhusa.com\"\n}"
response = http.request(request)
puts response.read_body{
"MerchantAccountNumber": 12345678,
"BatchNumber": 123456,
"CurrencyCode": "MWK",
"BatchStatusCode": "X",
"ContentType": "CSV",
"DataSource": "File",
"NumberOfSuccessfulEntries": 1200,
"TotalAmountOfSuccessfulEntries": 52000500
}Authorizations
Bearer authentication header of the form Bearer Token, Where accessToken is the access token used to authenticate the request.
Body
Required string length: 8
10000000 <= x <= 99999999Reason for rejecting the batch
The email address of the user rejecting the batch
A unique integer identifier that represents a batch of disbursement transactions in the system.
Required range: x > 0
Response
Success Response (200 OK)
The unique identifier of the merchant account
12345678
The unique identifier of the batch number
123456
The currency code of the batch
"MWK"
The status code of the batch
"X"
The content type of the batch
"CSV"
The data source of the batch
"File"
The number of successful entries in the batch
1200
The total amount of successful entries in the batch
52000500