This API enables sending money to local banks. Confirm the availabe banks via the get Channels Api
curl -X POST https://api/sandbox/v1/send-money/send-to-bank \
-H "Authorization: Bearer <YOUR-ACCESS-TOKEN>" \
-F "MerchantCode=5126" \
-F "Amount=20" \
-F "Currency=KES" \
-F "ReceiverNumber=0759231969" \
-F "Channel=123456" \
-F "Reason=test" \
-F "InitiatorTransactionReference=12894850" \
-F "CallBackUrl=https://webhook.site/your-callback-url"
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://api/sandbox/v1/send-money/send-to-bank',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => array(
'MerchantCode' => '5126',
'Amount' => '20',
'Currency' => 'KES',
'ReceiverNumber' => '0759231969',
'Channel' => '123456',
'Reason' => 'test',
'InitiatorTransactionReference' => '12894850',
'CallBackUrl' => 'https://webhook.site/your-callback-url'
),
CURLOPT_HTTPHEADER => array(
'Authorization: Bearer <YOUR-ACCESS-TOKEN>'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
?>
import requests
url = "https://api/sandbox/v1/send-money/send-to-bank"
payload = {
"MerchantCode": "5126",
"Amount": "20",
"Currency": "KES",
"ReceiverNumber": "0759231969",
"Channel": "123456",
"Reason": "test",
"InitiatorTransactionReference": "12894850",
"CallBackUrl": "https://webhook.site/your-callback-url"
}
headers = {
"Authorization": "Bearer <YOUR-ACCESS-TOKEN>"
}
response = requests.post(url, data=payload, headers=headers)
print(response.json())
import java.io.*;
import java.net.*;
import java.util.*;
public class SendToBank {
public static void main(String[] args) throws Exception {
URL url = new URL("https://api/sandbox/v1/send-money/send-to-bank");
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("POST");
conn.setDoOutput(true);
conn.setRequestProperty("Authorization", "Bearer <YOUR-ACCESS-TOKEN>");
String data = "MerchantCode=5126&Amount=20&Currency=KES&ReceiverNumber=0759231969&Channel=123456&Reason=test&InitiatorTransactionReference=12894850&CallBackUrl=https://webhook.site/your-callback-url";
try (OutputStream os = conn.getOutputStream()) {
byte[] input = data.getBytes("utf-8");
os.write(input, 0, input.length);
}
// Handle response...
}
}
{
"status": true,
"detail": "Transaction is being processed",
"TrackingID": "5125-c0ecab3b-4615-45a9-b409-04923b3b7dcb",
"InitiatorTransactionReference": "1289485044",
"ResponseCode": "0",
"ResponseDescription": "Transaction is being processed"
}
{
"status": false,
"message": "Duplicate InitiatorTransactionReference detected.",
"details": "use unique InitiatorTransactionReference.",
"ResponseCode": "409"
}