Validate a bank account
Validates the provided bank account details. You can use this before you create a recipient.
By default, this endpoint isn’t enabled. If you’d like to use it, please contact us.
curl --request POST \
--url 'https://api.equalsmoney.com/v2/recipients/validate/account?accountId={{accountId}}' \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"country": "GB",
"iban": "PK94XAOM0400102322019126",
"number": "55555555",
"code": "12-34-56"
}
'import requests
url = "https://api.equalsmoney.com/v2/recipients/validate/account"
payload = {
"country": "GB",
"iban": "PK94XAOM0400102322019126",
"number": "55555555",
"code": "12-34-56"
}
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({
country: 'GB',
iban: 'PK94XAOM0400102322019126',
number: '55555555',
code: '12-34-56'
})
};
fetch('https://api.equalsmoney.com/v2/recipients/validate/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.equalsmoney.com/v2/recipients/validate/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([
'country' => 'GB',
'iban' => 'PK94XAOM0400102322019126',
'number' => '55555555',
'code' => '12-34-56'
]),
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.equalsmoney.com/v2/recipients/validate/account"
payload := strings.NewReader("{\n \"country\": \"GB\",\n \"iban\": \"PK94XAOM0400102322019126\",\n \"number\": \"55555555\",\n \"code\": \"12-34-56\"\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.equalsmoney.com/v2/recipients/validate/account")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"country\": \"GB\",\n \"iban\": \"PK94XAOM0400102322019126\",\n \"number\": \"55555555\",\n \"code\": \"12-34-56\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.equalsmoney.com/v2/recipients/validate/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 \"country\": \"GB\",\n \"iban\": \"PK94XAOM0400102322019126\",\n \"number\": \"55555555\",\n \"code\": \"12-34-56\"\n}"
response = http.request(request)
puts response.read_body{
"countryCode": "GB",
"nationalId": "string",
"accountNumber": "string",
"status": "PASS",
"comment": "string",
"recommendedNatId": "string",
"recommendedAcct": "string",
"recommendedBIC": "string",
"ref": "string",
"group": "string",
"branchDetails": [
{
"bankName": "Barclays Bank",
"branch": "London",
"street": "1 Churchill Place",
"city": "London",
"postZip": "E14 5HP",
"region": "London",
"country": "UK",
"codeDetails": {
"codeName1": "string",
"codeValue1": "string",
"codeName2": "string",
"codeValue2": "string",
"codeName3": "string",
"codeValue3": "string",
"codeName4": "string",
"codeValue4": "string"
},
"additionalData": {
"ssiAvailable": "Y",
"payServiceAvailable": "Y",
"contactsAvailable": "N",
"messageAvailable": "N",
"holidayAvailable": "Y",
"sepaDetails": {
"ctStatus": "NO",
"ddStatus": "NO",
"bbStatus": "NO"
},
"bankToken": "string",
"branchTypeLabel": "string"
}
}
],
"headOfficeDetails": {
"bankName": "Barclays Bank",
"branch": "London",
"street": "1 Churchill Place",
"city": "London",
"postZip": "E14 5HP",
"region": "London",
"country": "UK",
"codeDetails": {
"codeName1": "string",
"codeValue1": "string",
"codeName2": "string",
"codeValue2": "string",
"codeName3": "string",
"codeValue3": "string",
"codeName4": "string",
"codeValue4": "string"
},
"additionalData": {
"ssiAvailable": "Y",
"payServiceAvailable": "Y",
"contactsAvailable": "N",
"messageAvailable": "N",
"holidayAvailable": "Y",
"sepaDetails": {
"ctStatus": "NO",
"ddStatus": "NO",
"bbStatus": "NO"
},
"bankToken": "string",
"branchTypeLabel": "string"
}
},
"paymentBicDetails": {
"bankName": "Barclays Bank",
"branch": "London",
"street": "1 Churchill Place",
"city": "London",
"postZip": "E14 5HP",
"region": "London",
"country": "UK",
"codeDetails": {
"codeName1": "string",
"codeValue1": "string",
"codeName2": "string",
"codeValue2": "string",
"codeName3": "string",
"codeValue3": "string",
"codeName4": "string",
"codeValue4": "string"
},
"additionalData": {
"ssiAvailable": "Y",
"payServiceAvailable": "Y",
"contactsAvailable": "N",
"messageAvailable": "N",
"holidayAvailable": "Y",
"sepaDetails": {
"ctStatus": "NO",
"ddStatus": "NO",
"bbStatus": "NO"
},
"bankToken": "string",
"branchTypeLabel": "string"
}
},
"paymentNetworkDetails": [
{
"paymentNetwork": "SWIFT",
"participantId": "string",
"participantName": "string",
"currencyCode": "AED"
}
],
"bic8": "N",
"dataStore": "N",
"noBranch": "N",
"isoAddr": "N",
"payBranchType": "D",
"freeToken": "string"
}Authorizations
Query Parameters
The ID of the account to work with.
"F50091"
Comma-separated list of fields to include in the response.
paymentNetworkDetails "paymentNetworkDetails"
Body
Body
The country, in ISO 3166-1 alpha-2 format.
2"GB"
The International Bank Account Number (IBAN).
"PK94XAOM0400102322019126"
The bank account number.
"55555555"
The bank sort code.
"12-34-56"
Response
OK
"GB"
"PASS"
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Provides a list of payment networks through which payments can be sent to the validated account. Each entry includes the network name and details of the participating institution.
Show child attributes
Show child attributes
"N"
"N"
"N"
"N"
"D"
Was this page helpful?
curl --request POST \
--url 'https://api.equalsmoney.com/v2/recipients/validate/account?accountId={{accountId}}' \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"country": "GB",
"iban": "PK94XAOM0400102322019126",
"number": "55555555",
"code": "12-34-56"
}
'import requests
url = "https://api.equalsmoney.com/v2/recipients/validate/account"
payload = {
"country": "GB",
"iban": "PK94XAOM0400102322019126",
"number": "55555555",
"code": "12-34-56"
}
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({
country: 'GB',
iban: 'PK94XAOM0400102322019126',
number: '55555555',
code: '12-34-56'
})
};
fetch('https://api.equalsmoney.com/v2/recipients/validate/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.equalsmoney.com/v2/recipients/validate/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([
'country' => 'GB',
'iban' => 'PK94XAOM0400102322019126',
'number' => '55555555',
'code' => '12-34-56'
]),
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.equalsmoney.com/v2/recipients/validate/account"
payload := strings.NewReader("{\n \"country\": \"GB\",\n \"iban\": \"PK94XAOM0400102322019126\",\n \"number\": \"55555555\",\n \"code\": \"12-34-56\"\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.equalsmoney.com/v2/recipients/validate/account")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"country\": \"GB\",\n \"iban\": \"PK94XAOM0400102322019126\",\n \"number\": \"55555555\",\n \"code\": \"12-34-56\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.equalsmoney.com/v2/recipients/validate/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 \"country\": \"GB\",\n \"iban\": \"PK94XAOM0400102322019126\",\n \"number\": \"55555555\",\n \"code\": \"12-34-56\"\n}"
response = http.request(request)
puts response.read_body{
"countryCode": "GB",
"nationalId": "string",
"accountNumber": "string",
"status": "PASS",
"comment": "string",
"recommendedNatId": "string",
"recommendedAcct": "string",
"recommendedBIC": "string",
"ref": "string",
"group": "string",
"branchDetails": [
{
"bankName": "Barclays Bank",
"branch": "London",
"street": "1 Churchill Place",
"city": "London",
"postZip": "E14 5HP",
"region": "London",
"country": "UK",
"codeDetails": {
"codeName1": "string",
"codeValue1": "string",
"codeName2": "string",
"codeValue2": "string",
"codeName3": "string",
"codeValue3": "string",
"codeName4": "string",
"codeValue4": "string"
},
"additionalData": {
"ssiAvailable": "Y",
"payServiceAvailable": "Y",
"contactsAvailable": "N",
"messageAvailable": "N",
"holidayAvailable": "Y",
"sepaDetails": {
"ctStatus": "NO",
"ddStatus": "NO",
"bbStatus": "NO"
},
"bankToken": "string",
"branchTypeLabel": "string"
}
}
],
"headOfficeDetails": {
"bankName": "Barclays Bank",
"branch": "London",
"street": "1 Churchill Place",
"city": "London",
"postZip": "E14 5HP",
"region": "London",
"country": "UK",
"codeDetails": {
"codeName1": "string",
"codeValue1": "string",
"codeName2": "string",
"codeValue2": "string",
"codeName3": "string",
"codeValue3": "string",
"codeName4": "string",
"codeValue4": "string"
},
"additionalData": {
"ssiAvailable": "Y",
"payServiceAvailable": "Y",
"contactsAvailable": "N",
"messageAvailable": "N",
"holidayAvailable": "Y",
"sepaDetails": {
"ctStatus": "NO",
"ddStatus": "NO",
"bbStatus": "NO"
},
"bankToken": "string",
"branchTypeLabel": "string"
}
},
"paymentBicDetails": {
"bankName": "Barclays Bank",
"branch": "London",
"street": "1 Churchill Place",
"city": "London",
"postZip": "E14 5HP",
"region": "London",
"country": "UK",
"codeDetails": {
"codeName1": "string",
"codeValue1": "string",
"codeName2": "string",
"codeValue2": "string",
"codeName3": "string",
"codeValue3": "string",
"codeName4": "string",
"codeValue4": "string"
},
"additionalData": {
"ssiAvailable": "Y",
"payServiceAvailable": "Y",
"contactsAvailable": "N",
"messageAvailable": "N",
"holidayAvailable": "Y",
"sepaDetails": {
"ctStatus": "NO",
"ddStatus": "NO",
"bbStatus": "NO"
},
"bankToken": "string",
"branchTypeLabel": "string"
}
},
"paymentNetworkDetails": [
{
"paymentNetwork": "SWIFT",
"participantId": "string",
"participantName": "string",
"currencyCode": "AED"
}
],
"bic8": "N",
"dataStore": "N",
"noBranch": "N",
"isoAddr": "N",
"payBranchType": "D",
"freeToken": "string"
}