Fund Transfer
curl --request POST \
--url https://api.sandbox.sudo.cards/accounts/transfer \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"debitAccountId": "<string>",
"amount": 123,
"creditAccountId": "<string>",
"beneficiaryBankCode": "<string>",
"beneficiaryAccountNumber": "<string>",
"narration": "<string>",
"paymentReference": "<string>"
}
'import requests
url = "https://api.sandbox.sudo.cards/accounts/transfer"
payload = {
"debitAccountId": "<string>",
"amount": 123,
"creditAccountId": "<string>",
"beneficiaryBankCode": "<string>",
"beneficiaryAccountNumber": "<string>",
"narration": "<string>",
"paymentReference": "<string>"
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
debitAccountId: '<string>',
amount: 123,
creditAccountId: '<string>',
beneficiaryBankCode: '<string>',
beneficiaryAccountNumber: '<string>',
narration: '<string>',
paymentReference: '<string>'
})
};
fetch('https://api.sandbox.sudo.cards/accounts/transfer', 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.sandbox.sudo.cards/accounts/transfer",
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([
'debitAccountId' => '<string>',
'amount' => 123,
'creditAccountId' => '<string>',
'beneficiaryBankCode' => '<string>',
'beneficiaryAccountNumber' => '<string>',
'narration' => '<string>',
'paymentReference' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"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.sandbox.sudo.cards/accounts/transfer"
payload := strings.NewReader("{\n \"debitAccountId\": \"<string>\",\n \"amount\": 123,\n \"creditAccountId\": \"<string>\",\n \"beneficiaryBankCode\": \"<string>\",\n \"beneficiaryAccountNumber\": \"<string>\",\n \"narration\": \"<string>\",\n \"paymentReference\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<api-key>")
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.sandbox.sudo.cards/accounts/transfer")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"debitAccountId\": \"<string>\",\n \"amount\": 123,\n \"creditAccountId\": \"<string>\",\n \"beneficiaryBankCode\": \"<string>\",\n \"beneficiaryAccountNumber\": \"<string>\",\n \"narration\": \"<string>\",\n \"paymentReference\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sandbox.sudo.cards/accounts/transfer")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"debitAccountId\": \"<string>\",\n \"amount\": 123,\n \"creditAccountId\": \"<string>\",\n \"beneficiaryBankCode\": \"<string>\",\n \"beneficiaryAccountNumber\": \"<string>\",\n \"narration\": \"<string>\",\n \"paymentReference\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body"{}""{}"Accounts
Fund Transfer
Transfers funds from one account, wallet, or card to another.
POST
/
accounts
/
transfer
Fund Transfer
curl --request POST \
--url https://api.sandbox.sudo.cards/accounts/transfer \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"debitAccountId": "<string>",
"amount": 123,
"creditAccountId": "<string>",
"beneficiaryBankCode": "<string>",
"beneficiaryAccountNumber": "<string>",
"narration": "<string>",
"paymentReference": "<string>"
}
'import requests
url = "https://api.sandbox.sudo.cards/accounts/transfer"
payload = {
"debitAccountId": "<string>",
"amount": 123,
"creditAccountId": "<string>",
"beneficiaryBankCode": "<string>",
"beneficiaryAccountNumber": "<string>",
"narration": "<string>",
"paymentReference": "<string>"
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
debitAccountId: '<string>',
amount: 123,
creditAccountId: '<string>',
beneficiaryBankCode: '<string>',
beneficiaryAccountNumber: '<string>',
narration: '<string>',
paymentReference: '<string>'
})
};
fetch('https://api.sandbox.sudo.cards/accounts/transfer', 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.sandbox.sudo.cards/accounts/transfer",
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([
'debitAccountId' => '<string>',
'amount' => 123,
'creditAccountId' => '<string>',
'beneficiaryBankCode' => '<string>',
'beneficiaryAccountNumber' => '<string>',
'narration' => '<string>',
'paymentReference' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"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.sandbox.sudo.cards/accounts/transfer"
payload := strings.NewReader("{\n \"debitAccountId\": \"<string>\",\n \"amount\": 123,\n \"creditAccountId\": \"<string>\",\n \"beneficiaryBankCode\": \"<string>\",\n \"beneficiaryAccountNumber\": \"<string>\",\n \"narration\": \"<string>\",\n \"paymentReference\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<api-key>")
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.sandbox.sudo.cards/accounts/transfer")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"debitAccountId\": \"<string>\",\n \"amount\": 123,\n \"creditAccountId\": \"<string>\",\n \"beneficiaryBankCode\": \"<string>\",\n \"beneficiaryAccountNumber\": \"<string>\",\n \"narration\": \"<string>\",\n \"paymentReference\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sandbox.sudo.cards/accounts/transfer")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"debitAccountId\": \"<string>\",\n \"amount\": 123,\n \"creditAccountId\": \"<string>\",\n \"beneficiaryBankCode\": \"<string>\",\n \"beneficiaryAccountNumber\": \"<string>\",\n \"narration\": \"<string>\",\n \"paymentReference\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body"{}""{}"Authorizations
Body
application/json
The _id of the account/wallet to debit the funds from.
The amount to be transfered.
The _id of the account/wallet to receive the funds. Required if beneficiaryBankCode and beneficiaryAccountNumber are not present.
The bank code of the beneficiary account. Required if creditAccountId is not present.
The account number of the beneficiary account. Required if creditAccountId is not present.
The narration of the transfer.
A payment reference can be provided to be attached to the transfer.
Response
200
The response is of type object.
⌘I
