Initiate a transfer
POST
/
api
/
v1
/
transfers
cURL
curl --request POST \
--url https://api.novacpayment.com/api/v1/transfers \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"currency": "<string>",
"amount": 123,
"bankCode": "<string>",
"accountNumber": "<string>",
"narration": "<string>",
"reference": "<string>",
"bankName": "<string>",
"accountName": "<string>",
"metaData": "<string>"
}
'import requests
url = "https://api.novacpayment.com/api/v1/transfers"
payload = {
"currency": "<string>",
"amount": 123,
"bankCode": "<string>",
"accountNumber": "<string>",
"narration": "<string>",
"reference": "<string>",
"bankName": "<string>",
"accountName": "<string>",
"metaData": "<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({
currency: '<string>',
amount: 123,
bankCode: '<string>',
accountNumber: '<string>',
narration: '<string>',
reference: '<string>',
bankName: '<string>',
accountName: '<string>',
metaData: '<string>'
})
};
fetch('https://api.novacpayment.com/api/v1/transfers', 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.novacpayment.com/api/v1/transfers",
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([
'currency' => '<string>',
'amount' => 123,
'bankCode' => '<string>',
'accountNumber' => '<string>',
'narration' => '<string>',
'reference' => '<string>',
'bankName' => '<string>',
'accountName' => '<string>',
'metaData' => '<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.novacpayment.com/api/v1/transfers"
payload := strings.NewReader("{\n \"currency\": \"<string>\",\n \"amount\": 123,\n \"bankCode\": \"<string>\",\n \"accountNumber\": \"<string>\",\n \"narration\": \"<string>\",\n \"reference\": \"<string>\",\n \"bankName\": \"<string>\",\n \"accountName\": \"<string>\",\n \"metaData\": \"<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.novacpayment.com/api/v1/transfers")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"currency\": \"<string>\",\n \"amount\": 123,\n \"bankCode\": \"<string>\",\n \"accountNumber\": \"<string>\",\n \"narration\": \"<string>\",\n \"reference\": \"<string>\",\n \"bankName\": \"<string>\",\n \"accountName\": \"<string>\",\n \"metaData\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.novacpayment.com/api/v1/transfers")
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 \"currency\": \"<string>\",\n \"amount\": 123,\n \"bankCode\": \"<string>\",\n \"accountNumber\": \"<string>\",\n \"narration\": \"<string>\",\n \"reference\": \"<string>\",\n \"bankName\": \"<string>\",\n \"accountName\": \"<string>\",\n \"metaData\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"message": "Transfer successfully logged and Processing",
"data": {
"id": "0",
"reference": "string",
"currency": "NGN",
"amount": 0,
"fee": 0,
"bankCode": "string",
"bankName": "string",
"accountNumber": "string",
"accountName": "string",
"narration": "string",
"domain": "test | live",
"status": "pending",
"providerResponseMessage": "Transaction successful",
"updatedAt": "string",
"createdAt": "string"
}
}{
"success": false,
"message": "Transaction Amount must be greater than 0",
"data": "string"
}Authorizations
Input your API key (e.g. your public key) as a Bearer token to access this API.
Body
application/jsontext/jsonapplication/*+json
The currency in which the transfer is to be made (e.g., NGN)
Minimum string length:
1The amount to be transferred
The code of the bank to which the transfer is to be made
Minimum string length:
1The account number to which the transfer is to be made
Minimum string length:
1A brief description of the transfer
Minimum string length:
1The unique reference for the transfer
Required string length:
10 - 50The name of the bank to which the transfer is to be made
The name of the account to which the transfer is to be made
Additional metadata for the transfer
Was this page helpful?
⌘I
cURL
curl --request POST \
--url https://api.novacpayment.com/api/v1/transfers \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"currency": "<string>",
"amount": 123,
"bankCode": "<string>",
"accountNumber": "<string>",
"narration": "<string>",
"reference": "<string>",
"bankName": "<string>",
"accountName": "<string>",
"metaData": "<string>"
}
'import requests
url = "https://api.novacpayment.com/api/v1/transfers"
payload = {
"currency": "<string>",
"amount": 123,
"bankCode": "<string>",
"accountNumber": "<string>",
"narration": "<string>",
"reference": "<string>",
"bankName": "<string>",
"accountName": "<string>",
"metaData": "<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({
currency: '<string>',
amount: 123,
bankCode: '<string>',
accountNumber: '<string>',
narration: '<string>',
reference: '<string>',
bankName: '<string>',
accountName: '<string>',
metaData: '<string>'
})
};
fetch('https://api.novacpayment.com/api/v1/transfers', 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.novacpayment.com/api/v1/transfers",
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([
'currency' => '<string>',
'amount' => 123,
'bankCode' => '<string>',
'accountNumber' => '<string>',
'narration' => '<string>',
'reference' => '<string>',
'bankName' => '<string>',
'accountName' => '<string>',
'metaData' => '<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.novacpayment.com/api/v1/transfers"
payload := strings.NewReader("{\n \"currency\": \"<string>\",\n \"amount\": 123,\n \"bankCode\": \"<string>\",\n \"accountNumber\": \"<string>\",\n \"narration\": \"<string>\",\n \"reference\": \"<string>\",\n \"bankName\": \"<string>\",\n \"accountName\": \"<string>\",\n \"metaData\": \"<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.novacpayment.com/api/v1/transfers")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"currency\": \"<string>\",\n \"amount\": 123,\n \"bankCode\": \"<string>\",\n \"accountNumber\": \"<string>\",\n \"narration\": \"<string>\",\n \"reference\": \"<string>\",\n \"bankName\": \"<string>\",\n \"accountName\": \"<string>\",\n \"metaData\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.novacpayment.com/api/v1/transfers")
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 \"currency\": \"<string>\",\n \"amount\": 123,\n \"bankCode\": \"<string>\",\n \"accountNumber\": \"<string>\",\n \"narration\": \"<string>\",\n \"reference\": \"<string>\",\n \"bankName\": \"<string>\",\n \"accountName\": \"<string>\",\n \"metaData\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"message": "Transfer successfully logged and Processing",
"data": {
"id": "0",
"reference": "string",
"currency": "NGN",
"amount": 0,
"fee": 0,
"bankCode": "string",
"bankName": "string",
"accountNumber": "string",
"accountName": "string",
"narration": "string",
"domain": "test | live",
"status": "pending",
"providerResponseMessage": "Transaction successful",
"updatedAt": "string",
"createdAt": "string"
}
}{
"success": false,
"message": "Transaction Amount must be greater than 0",
"data": "string"
}