Get Onboarding Data (New)
Overview
Retrieve onboarding data for a company or sub-account, inspect submitted details, and identify what still needs review before operational activity is enabled.
This endpoint returns the comprehensive state of the onboarding record, including selected products, company profile, verified addresses, shareholders, uploaded documents, review flags, and KYC level.
Resource Access
- HTTP Method:
GET - Endpoint:
/banking/ibans/v2/companies/{companyId}/onboarding-data - Authentication: Bearer token required
Request Headers
| Header | Value | Required | Description |
|---|---|---|---|
Authorization | Bearer {access_token} | Yes | JWT Bearer access token |
Accept | application/json | Yes | Response payload format |
x-api-key | string | No | Optional API key |
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
companyId | string | Yes | The unique identifier for the company (e.g. 2). |
Response
Success Response (200 OK)
{
"companyId": "2",
"parentCompanyId": "1",
"status": "APPROVED",
"kycLevel": "3",
"selectedProducts": ["Collect", "Convert", "Pay", "Hold"],
"company": {
"type": "Private Limited Company",
"name": "Acme Global Solutions Ltd",
"identificationNumber": "12345678",
"country": "GB"
},
"companyAddresses": [
{
"type": "REGISTERED",
"line1": "100 Bishopsgate",
"city": "London",
"postalCode": "EC2N 4AG",
"country": "GB"
}
],
"shareholders": [
{
"type": "INDIVIDUAL",
"firstName": "Alexander",
"lastName": "Wright",
"email": "alex.wright@example.com",
"percentage": 60.0,
"isUltimateBeneficialOwner": true,
"isDirector": true
}
],
"progress": [
{
"step": "COMPANY_DETAILS",
"status": "COMPLETED"
},
{
"step": "DOCUMENTS",
"status": "COMPLETED"
},
{
"step": "KYC_VERIFICATION",
"status": "COMPLETED"
}
],
"createdAt": "2026-09-15T02:00:00.000Z",
"updatedAt": "2026-09-15T03:30:00.000Z"
}
Response Fields (ClientOnboardingRs)
| Field | Type | Description |
|---|---|---|
companyId | string | The company ID. |
parentCompanyId | string | The parent company ID if configured as a sub-account. |
status | string | Current onboarding status (CREATED, PENDING, UNDER_REVIEW, APPROVED, REJECTED, RFI). |
kycLevel | string | KYC verification level (0 = basic, 3 = full KYC verified). |
selectedProducts | array | Array of approved banking products. |
company | object | Legal company profile information. |
companyAddresses | array | Registered and operational address records. |
shareholders | array | Array of corporate and individual beneficial owners. |
progress | array | Progress indicators per onboarding milestone. |
createdAt | string | ISO date-time of record creation. |
updatedAt | string | ISO date-time of last update. |
Error Responses
- 400 Bad Request: Invalid
companyIdformat. - 401 Unauthorized: Missing or expired Bearer token.
- 403 Forbidden: Insufficient account permissions to inspect this company.
- 404 Not Found: No onboarding record found for the specified
companyId. - 500 Internal Server Error: An unexpected error occurred on the server.
Code Examples
Base URL
Production: https://api.ahrvo.network
Staging: https://gateway.ahrvo.network
cURL
curl -X GET \
'https://gateway.ahrvo.network/banking/ibans/v2/companies/2/onboarding-data' \
-H 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
-H 'Accept: application/json'
Python
import requests
url = "https://gateway.ahrvo.network/banking/ibans/v2/companies/2/onboarding-data"
headers = {
"Authorization": "Bearer YOUR_ACCESS_TOKEN",
"Accept": "application/json"
}
response = requests.get(url, headers=headers)
print(response.status_code, response.json())
JavaScript (Node.js)
const axios = require('axios');
const companyId = '2';
const url = `https://gateway.ahrvo.network/banking/ibans/v2/companies/${companyId}/onboarding-data`;
const headers = {
'Authorization': 'Bearer YOUR_ACCESS_TOKEN',
'Accept': 'application/json'
};
axios.get(url, { headers })
.then(res => console.log(res.data))
.catch(err => console.error(err.response ? err.response.data : err.message));