Skip to main content
GET
/
v1
/
businesses
/
{businessId}
/
kyb
Get KYB for a business
curl --request GET \
  --url https://api.cadanapay.com/v1/businesses/{businessId}/kyb \
  --header 'Authorization: Bearer <token>'
import requests

url = "https://api.cadanapay.com/v1/businesses/{businessId}/kyb"

headers = {"Authorization": "Bearer <token>"}

response = requests.get(url, headers=headers)

print(response.text)
const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};

fetch('https://api.cadanapay.com/v1/businesses/{businessId}/kyb', 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.cadanapay.com/v1/businesses/{businessId}/kyb",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_HTTPHEADER => [
    "Authorization: Bearer <token>"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "https://api.cadanapay.com/v1/businesses/{businessId}/kyb"

	req, _ := http.NewRequest("GET", url, nil)

	req.Header.Add("Authorization", "Bearer <token>")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.get("https://api.cadanapay.com/v1/businesses/{businessId}/kyb")
  .header("Authorization", "Bearer <token>")
  .asString();
require 'uri'
require 'net/http'

url = URI("https://api.cadanapay.com/v1/businesses/{businessId}/kyb")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'

response = http.request(request)
puts response.read_body
{
  "id": "d4475c70-d759-495e-a052-3e3a1cba1857",
  "tenantKey": "cad62002887",
  "entityName": "Airtel",
  "entityType": "corporation",
  "taxIdentificationNumber": "NN-528343998",
  "incorporation": {
    "date": "2025-01-01T00:00:00.000Z",
    "address": {
      "countryCode": "US",
      "line1": "Street 1",
      "line2": "Apt 1",
      "city": "Gotham",
      "postalCode": "10001",
      "state": "NY"
    }
  },
  "phoneNumber": {
    "countryCode": "1",
    "number": "2345678901"
  },
  "email": "jsmith@example.com",
  "websiteURL": "",
  "natureOfBusiness": "Software Development",
  "sizeOfCompany": "300-400",
  "sourceOfFunds": "Personal Savings",
  "status": "pending-review",
  "annualRevenue": {
    "currency": "USD",
    "min": 100000,
    "max": 1000000
  },
  "expectedMonthlyTransactionVolume": {
    "currency": "USD",
    "min": 50000,
    "max": 80000
  },
  "address": {
    "countryCode": "US",
    "line1": "Street 1",
    "line2": "Apt 1",
    "city": "Gotham",
    "postalCode": "10001",
    "state": "NY"
  },
  "documents": {
    "articlesOfIncorporation": [
      "<string>"
    ],
    "bankStatements": [
      "<string>"
    ],
    "proofOfAddress": [
      "<string>"
    ],
    "taxDocuments": [
      "<string>"
    ]
  },
  "principals": [
    {
      "firstName": "John",
      "lastName": "Doe",
      "ownershipPercentage": 0.5,
      "email": "jsmith@example.com",
      "phoneNumber": {
        "countryCode": "1",
        "number": "2345678901"
      },
      "address": {
        "countryCode": "US",
        "line1": "Street 1",
        "line2": "Apt 1",
        "city": "Gotham",
        "postalCode": "10001",
        "state": "NY"
      },
      "isExecutive": false,
      "title": "",
      "id": "f116c829-3c93-4d24-880d-3a00faf784a2",
      "identifier": {
        "type": "passport",
        "value": "1234567890"
      }
    }
  ],
  "requirements": {
    "currentlyDue": [
      "principals.0.phoneNumber.countryCode",
      "phoneNumber.countryCode",
      "principals.0.address.state",
      "email",
      "entityName"
    ],
    "errors": [
      {
        "field": "entityName",
        "reason": "Only english letters are allowed"
      }
    ]
  }
}
{
  "code": "invalid_request_body",
  "message": "The request body provided is not valid",
  "params": {
    "field": "Value is invalid."
  }
}
{
  "code": "resource_not_found",
  "message": "Requested resource could not be found."
}
{
  "code": "internal_error",
  "message": "An unexpected error occurred. Please try again later."
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

X-MultiTenantKey
string

Required when using a Platform API token. The tenant key identifying which business to operate on.

Path Parameters

businessId
string
required

The unique identifier for the business

Response

get KYB response

id
string<uuid>

KYB record ID

Example:

"d4475c70-d759-495e-a052-3e3a1cba1857"

tenantKey
string

Tenant key

Example:

"cad62002887"

entityName
string

Business name

Example:

"Airtel"

entityType
enum<string>

Type of entity

Available options:
corporation,
c-corporation,
s-corporation,
partnership,
sole proprietorship,
limited liability company,
non profit,
other
Example:

"corporation"

taxIdentificationNumber
string

Tax identification number

Example:

"NN-528343998"

incorporation
object

Incorporation details

phoneNumber
object

Person's phone number

email
string<email>

Business email address

websiteURL
string<uri>

Business website URL

Example:

""

natureOfBusiness
string

Description of the primary business activities and industry

Example:

"Software Development"

sizeOfCompany
string

Size of the company

Example:

"300-400"

sourceOfFunds
string

Source of funds

Example:

"Personal Savings"

status
enum<string>

KYB status

Available options:
initialized,
needs-additional-info,
pending-review,
awaiting-principal-kyc,
incomplete,
complete,
rejected
Example:

"pending-review"

annualRevenue
object

Annual revenue range

expectedMonthlyTransactionVolume
object

Expected monthly transaction volume range

address
object

Address

documents
object

Document file URLs

principals
object[]

Principals associated with the business

requirements
object

KYB requirements and validation status