Create a virtual account
POST
/
api
/
v1
/
virtual-account
cURL
curl --request POST \
--url https://api.novacpayment.com/api/v1/virtual-account \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"reference": "<string>",
"amount": 123,
"accountType": "<string>",
"accountName": "<string>",
"bankCode": "<string>",
"firstName": "<string>",
"lastName": "<string>",
"customerEmail": "<string>",
"expiryInMinutes": 123
}
'import requests
url = "https://api.novacpayment.com/api/v1/virtual-account"
payload = {
"reference": "<string>",
"amount": 123,
"accountType": "<string>",
"accountName": "<string>",
"bankCode": "<string>",
"firstName": "<string>",
"lastName": "<string>",
"customerEmail": "<string>",
"expiryInMinutes": 123
}
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({
reference: '<string>',
amount: 123,
accountType: '<string>',
accountName: '<string>',
bankCode: '<string>',
firstName: '<string>',
lastName: '<string>',
customerEmail: '<string>',
expiryInMinutes: 123
})
};
fetch('https://api.novacpayment.com/api/v1/virtual-account', 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/virtual-account",
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([
'reference' => '<string>',
'amount' => 123,
'accountType' => '<string>',
'accountName' => '<string>',
'bankCode' => '<string>',
'firstName' => '<string>',
'lastName' => '<string>',
'customerEmail' => '<string>',
'expiryInMinutes' => 123
]),
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/virtual-account"
payload := strings.NewReader("{\n \"reference\": \"<string>\",\n \"amount\": 123,\n \"accountType\": \"<string>\",\n \"accountName\": \"<string>\",\n \"bankCode\": \"<string>\",\n \"firstName\": \"<string>\",\n \"lastName\": \"<string>\",\n \"customerEmail\": \"<string>\",\n \"expiryInMinutes\": 123\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/virtual-account")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"reference\": \"<string>\",\n \"amount\": 123,\n \"accountType\": \"<string>\",\n \"accountName\": \"<string>\",\n \"bankCode\": \"<string>\",\n \"firstName\": \"<string>\",\n \"lastName\": \"<string>\",\n \"customerEmail\": \"<string>\",\n \"expiryInMinutes\": 123\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.novacpayment.com/api/v1/virtual-account")
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 \"reference\": \"<string>\",\n \"amount\": 123,\n \"accountType\": \"<string>\",\n \"accountName\": \"<string>\",\n \"bankCode\": \"<string>\",\n \"firstName\": \"<string>\",\n \"lastName\": \"<string>\",\n \"customerEmail\": \"<string>\",\n \"expiryInMinutes\": 123\n}"
response = http.request(request)
puts response.read_bodyAuthorizations
Input your API key (e.g. your public key) as a Bearer token to access this API.
Body
application/jsontext/jsonapplication/*+json
The unique reference for the VAN account creation
The amount to be associated with the VAN account
The type of account to be created (e.g., reserved, checkout)
The name of the account holder for the VAN account
The code of the bank where the VAN account will be created
The first name of the account holder for the VAN account
The last name of the account holder for the VAN account
The email address of the account holder for the VAN account
The expiry time in minutes for the VAN account
Response
200
OK
Was this page helpful?
⌘I
cURL
curl --request POST \
--url https://api.novacpayment.com/api/v1/virtual-account \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"reference": "<string>",
"amount": 123,
"accountType": "<string>",
"accountName": "<string>",
"bankCode": "<string>",
"firstName": "<string>",
"lastName": "<string>",
"customerEmail": "<string>",
"expiryInMinutes": 123
}
'import requests
url = "https://api.novacpayment.com/api/v1/virtual-account"
payload = {
"reference": "<string>",
"amount": 123,
"accountType": "<string>",
"accountName": "<string>",
"bankCode": "<string>",
"firstName": "<string>",
"lastName": "<string>",
"customerEmail": "<string>",
"expiryInMinutes": 123
}
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({
reference: '<string>',
amount: 123,
accountType: '<string>',
accountName: '<string>',
bankCode: '<string>',
firstName: '<string>',
lastName: '<string>',
customerEmail: '<string>',
expiryInMinutes: 123
})
};
fetch('https://api.novacpayment.com/api/v1/virtual-account', 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/virtual-account",
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([
'reference' => '<string>',
'amount' => 123,
'accountType' => '<string>',
'accountName' => '<string>',
'bankCode' => '<string>',
'firstName' => '<string>',
'lastName' => '<string>',
'customerEmail' => '<string>',
'expiryInMinutes' => 123
]),
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/virtual-account"
payload := strings.NewReader("{\n \"reference\": \"<string>\",\n \"amount\": 123,\n \"accountType\": \"<string>\",\n \"accountName\": \"<string>\",\n \"bankCode\": \"<string>\",\n \"firstName\": \"<string>\",\n \"lastName\": \"<string>\",\n \"customerEmail\": \"<string>\",\n \"expiryInMinutes\": 123\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/virtual-account")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"reference\": \"<string>\",\n \"amount\": 123,\n \"accountType\": \"<string>\",\n \"accountName\": \"<string>\",\n \"bankCode\": \"<string>\",\n \"firstName\": \"<string>\",\n \"lastName\": \"<string>\",\n \"customerEmail\": \"<string>\",\n \"expiryInMinutes\": 123\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.novacpayment.com/api/v1/virtual-account")
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 \"reference\": \"<string>\",\n \"amount\": 123,\n \"accountType\": \"<string>\",\n \"accountName\": \"<string>\",\n \"bankCode\": \"<string>\",\n \"firstName\": \"<string>\",\n \"lastName\": \"<string>\",\n \"customerEmail\": \"<string>\",\n \"expiryInMinutes\": 123\n}"
response = http.request(request)
puts response.read_body