Validate corporate ACH account
curl --request POST \
--url https://api-sandbox.revolv3.com/api/account-verification/ach/corporate \
--header 'Content-Type: application/json-patch+json' \
--header 'x-revolv3-token: <api-key>' \
--data '
{
"amount": null,
"firstName": null,
"lastName": null,
"companyName": "Company Inc.",
"address": {
"addressId": null,
"addressLine1": "26 River Street",
"addressLine2": "",
"city": "Cambridge",
"state": "MA",
"postalCode": "02125",
"phoneNumber": "123-456-789",
"email": null,
"country": "US"
},
"ach": {
"routingNumber": "123456789",
"accountNumber": "123456789",
"accountType": "Checking"
}
}
'import requests
url = "https://api-sandbox.revolv3.com/api/account-verification/ach/corporate"
payload = {
"amount": None,
"firstName": None,
"lastName": None,
"companyName": "Company Inc.",
"address": {
"addressId": None,
"addressLine1": "26 River Street",
"addressLine2": "",
"city": "Cambridge",
"state": "MA",
"postalCode": "02125",
"phoneNumber": "123-456-789",
"email": None,
"country": "US"
},
"ach": {
"routingNumber": "123456789",
"accountNumber": "123456789",
"accountType": "Checking"
}
}
headers = {
"x-revolv3-token": "<api-key>",
"Content-Type": "application/json-patch+json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-revolv3-token': '<api-key>', 'Content-Type': 'application/json-patch+json'},
body: JSON.stringify({
amount: null,
firstName: null,
lastName: null,
companyName: 'Company Inc.',
address: {
addressId: null,
addressLine1: '26 River Street',
addressLine2: '',
city: 'Cambridge',
state: 'MA',
postalCode: '02125',
phoneNumber: '123-456-789',
email: null,
country: 'US'
},
ach: {
routingNumber: '123456789',
accountNumber: '123456789',
accountType: 'Checking'
}
})
};
fetch('https://api-sandbox.revolv3.com/api/account-verification/ach/corporate', 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.revolv3.com/api/account-verification/ach/corporate",
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([
'amount' => null,
'firstName' => null,
'lastName' => null,
'companyName' => 'Company Inc.',
'address' => [
'addressId' => null,
'addressLine1' => '26 River Street',
'addressLine2' => '',
'city' => 'Cambridge',
'state' => 'MA',
'postalCode' => '02125',
'phoneNumber' => '123-456-789',
'email' => null,
'country' => 'US'
],
'ach' => [
'routingNumber' => '123456789',
'accountNumber' => '123456789',
'accountType' => 'Checking'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json-patch+json",
"x-revolv3-token: <api-key>"
],
]);
$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.revolv3.com/api/account-verification/ach/corporate"
payload := strings.NewReader("{\n \"amount\": null,\n \"firstName\": null,\n \"lastName\": null,\n \"companyName\": \"Company Inc.\",\n \"address\": {\n \"addressId\": null,\n \"addressLine1\": \"26 River Street\",\n \"addressLine2\": \"\",\n \"city\": \"Cambridge\",\n \"state\": \"MA\",\n \"postalCode\": \"02125\",\n \"phoneNumber\": \"123-456-789\",\n \"email\": null,\n \"country\": \"US\"\n },\n \"ach\": {\n \"routingNumber\": \"123456789\",\n \"accountNumber\": \"123456789\",\n \"accountType\": \"Checking\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-revolv3-token", "<api-key>")
req.Header.Add("Content-Type", "application/json-patch+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.revolv3.com/api/account-verification/ach/corporate")
.header("x-revolv3-token", "<api-key>")
.header("Content-Type", "application/json-patch+json")
.body("{\n \"amount\": null,\n \"firstName\": null,\n \"lastName\": null,\n \"companyName\": \"Company Inc.\",\n \"address\": {\n \"addressId\": null,\n \"addressLine1\": \"26 River Street\",\n \"addressLine2\": \"\",\n \"city\": \"Cambridge\",\n \"state\": \"MA\",\n \"postalCode\": \"02125\",\n \"phoneNumber\": \"123-456-789\",\n \"email\": null,\n \"country\": \"US\"\n },\n \"ach\": {\n \"routingNumber\": \"123456789\",\n \"accountNumber\": \"123456789\",\n \"accountType\": \"Checking\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-sandbox.revolv3.com/api/account-verification/ach/corporate")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-revolv3-token"] = '<api-key>'
request["Content-Type"] = 'application/json-patch+json'
request.body = "{\n \"amount\": null,\n \"firstName\": null,\n \"lastName\": null,\n \"companyName\": \"Company Inc.\",\n \"address\": {\n \"addressId\": null,\n \"addressLine1\": \"26 River Street\",\n \"addressLine2\": \"\",\n \"city\": \"Cambridge\",\n \"state\": \"MA\",\n \"postalCode\": \"02125\",\n \"phoneNumber\": \"123-456-789\",\n \"email\": null,\n \"country\": \"US\"\n },\n \"ach\": {\n \"routingNumber\": \"123456789\",\n \"accountNumber\": \"123456789\",\n \"accountType\": \"Checking\"\n }\n}"
response = http.request(request)
puts response.read_body{
"isVerified": true,
"message": "Approved",
"responseCode": "000"
}{
"message": "Unable to perform the request action with provided data."
}{
"message": "Attempted to perform an unauthorized operation."
}{
"message": "Unable to process this operation."
}AccountVerification
Validate corporate ACH account
Validates a corporate (business) ACH bank account to ensure it can be used for payment processing and payouts.
This endpoint is commonly used when onboarding business merchants or partners to confirm that their company’s bank account and routing information are valid before linking it to payment flows.
It helps prevent failed transactions due to incorrect or unsupported corporate account details and returns a validation result with status and any detected errors.
POST
/
api
/
account-verification
/
ach
/
corporate
Validate corporate ACH account
curl --request POST \
--url https://api-sandbox.revolv3.com/api/account-verification/ach/corporate \
--header 'Content-Type: application/json-patch+json' \
--header 'x-revolv3-token: <api-key>' \
--data '
{
"amount": null,
"firstName": null,
"lastName": null,
"companyName": "Company Inc.",
"address": {
"addressId": null,
"addressLine1": "26 River Street",
"addressLine2": "",
"city": "Cambridge",
"state": "MA",
"postalCode": "02125",
"phoneNumber": "123-456-789",
"email": null,
"country": "US"
},
"ach": {
"routingNumber": "123456789",
"accountNumber": "123456789",
"accountType": "Checking"
}
}
'import requests
url = "https://api-sandbox.revolv3.com/api/account-verification/ach/corporate"
payload = {
"amount": None,
"firstName": None,
"lastName": None,
"companyName": "Company Inc.",
"address": {
"addressId": None,
"addressLine1": "26 River Street",
"addressLine2": "",
"city": "Cambridge",
"state": "MA",
"postalCode": "02125",
"phoneNumber": "123-456-789",
"email": None,
"country": "US"
},
"ach": {
"routingNumber": "123456789",
"accountNumber": "123456789",
"accountType": "Checking"
}
}
headers = {
"x-revolv3-token": "<api-key>",
"Content-Type": "application/json-patch+json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-revolv3-token': '<api-key>', 'Content-Type': 'application/json-patch+json'},
body: JSON.stringify({
amount: null,
firstName: null,
lastName: null,
companyName: 'Company Inc.',
address: {
addressId: null,
addressLine1: '26 River Street',
addressLine2: '',
city: 'Cambridge',
state: 'MA',
postalCode: '02125',
phoneNumber: '123-456-789',
email: null,
country: 'US'
},
ach: {
routingNumber: '123456789',
accountNumber: '123456789',
accountType: 'Checking'
}
})
};
fetch('https://api-sandbox.revolv3.com/api/account-verification/ach/corporate', 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.revolv3.com/api/account-verification/ach/corporate",
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([
'amount' => null,
'firstName' => null,
'lastName' => null,
'companyName' => 'Company Inc.',
'address' => [
'addressId' => null,
'addressLine1' => '26 River Street',
'addressLine2' => '',
'city' => 'Cambridge',
'state' => 'MA',
'postalCode' => '02125',
'phoneNumber' => '123-456-789',
'email' => null,
'country' => 'US'
],
'ach' => [
'routingNumber' => '123456789',
'accountNumber' => '123456789',
'accountType' => 'Checking'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json-patch+json",
"x-revolv3-token: <api-key>"
],
]);
$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.revolv3.com/api/account-verification/ach/corporate"
payload := strings.NewReader("{\n \"amount\": null,\n \"firstName\": null,\n \"lastName\": null,\n \"companyName\": \"Company Inc.\",\n \"address\": {\n \"addressId\": null,\n \"addressLine1\": \"26 River Street\",\n \"addressLine2\": \"\",\n \"city\": \"Cambridge\",\n \"state\": \"MA\",\n \"postalCode\": \"02125\",\n \"phoneNumber\": \"123-456-789\",\n \"email\": null,\n \"country\": \"US\"\n },\n \"ach\": {\n \"routingNumber\": \"123456789\",\n \"accountNumber\": \"123456789\",\n \"accountType\": \"Checking\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-revolv3-token", "<api-key>")
req.Header.Add("Content-Type", "application/json-patch+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.revolv3.com/api/account-verification/ach/corporate")
.header("x-revolv3-token", "<api-key>")
.header("Content-Type", "application/json-patch+json")
.body("{\n \"amount\": null,\n \"firstName\": null,\n \"lastName\": null,\n \"companyName\": \"Company Inc.\",\n \"address\": {\n \"addressId\": null,\n \"addressLine1\": \"26 River Street\",\n \"addressLine2\": \"\",\n \"city\": \"Cambridge\",\n \"state\": \"MA\",\n \"postalCode\": \"02125\",\n \"phoneNumber\": \"123-456-789\",\n \"email\": null,\n \"country\": \"US\"\n },\n \"ach\": {\n \"routingNumber\": \"123456789\",\n \"accountNumber\": \"123456789\",\n \"accountType\": \"Checking\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-sandbox.revolv3.com/api/account-verification/ach/corporate")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-revolv3-token"] = '<api-key>'
request["Content-Type"] = 'application/json-patch+json'
request.body = "{\n \"amount\": null,\n \"firstName\": null,\n \"lastName\": null,\n \"companyName\": \"Company Inc.\",\n \"address\": {\n \"addressId\": null,\n \"addressLine1\": \"26 River Street\",\n \"addressLine2\": \"\",\n \"city\": \"Cambridge\",\n \"state\": \"MA\",\n \"postalCode\": \"02125\",\n \"phoneNumber\": \"123-456-789\",\n \"email\": null,\n \"country\": \"US\"\n },\n \"ach\": {\n \"routingNumber\": \"123456789\",\n \"accountNumber\": \"123456789\",\n \"accountType\": \"Checking\"\n }\n}"
response = http.request(request)
puts response.read_body{
"isVerified": true,
"message": "Approved",
"responseCode": "000"
}{
"message": "Unable to perform the request action with provided data."
}{
"message": "Attempted to perform an unauthorized operation."
}{
"message": "Unable to process this operation."
}Authorizations
Body
application/json-patch+jsonapplication/jsontext/jsonapplication/*+json
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Required range:
0 <= x <= 10000000Required string length:
2 - 25Pattern:
[A-Za-z]Required string length:
2 - 25Pattern:
[A-Za-z]Maximum string length:
100⌘I

