Skip to main content

Send Terms & Conditions Email (Atlas Company)

Overview

The POST /banking/ibans/v2/sub-accounts/{subCompanyId}/tnc/send-email endpoint dispatches an official Terms & Conditions acceptance email to the designated controlling officer or director of a PARTNER_REFERRED sub-account.

This endpoint is used in the Atlas for Platform onboarding workflow once all Know Your Business (KYB) data and corporate documents have been submitted and compliance-approved by the platform. The nominated director receives a secure email link to review and electronically accept the terms, advancing the sub-account from pending onboarding to operational activation.

Resource Access

  • HTTP Method: POST
  • Endpoint: /banking/ibans/v2/sub-accounts/{subCompanyId}/tnc/send-email
  • Authentication: Bearer token required (Client:Sub-Accounts:write, Admin:Onboarding:read)

Request Headers

HeaderValueRequiredDescription
AuthorizationBearer {access_token}YesJWT Bearer access token
Content-Typeapplication/jsonYesRequest payload format
Acceptapplication/jsonYesResponse payload format

Path Parameters

ParameterTypeRequiredDescription
subCompanyIdnumberYesCompany ID of the sub-account whose director should receive the email (e.g. 1045).

Request Body

Request Fields

FieldTypeRequiredDescription
emailstring (email)YesEmail address of the nominated director where the acceptance link will be delivered.
shareholderIdstring (UUID)YesIdentifier of the shareholder record. Must correspond to an active, UBO-approved controlling officer/director returned in the shareholders list from GET /banking/ibans/v2/companies/{companyId}/onboarding-data.

Request Example

{
"email": "director@example.com",
"shareholderId": "a91ecbb5-2ea5-4424-87e6-1337d19ad1dc"
}

Response

Success Response (200 OK)

{
"message": "Email sent successfully"
}

Response Fields

FieldTypeDescription
messagestringConfirmation message indicating the dispatch was triggered and linked status was updated to pending acceptance.

Error Responses

  • 400 Bad Request: The specified shareholderId exists in the entity records but is not classified as an active director / controlling officer.
  • 401 Unauthorized: Missing or expired Bearer token.
  • 404 Not Found: Sub-account not found, or shareholderId does not match an active, UBO-approved director of the sub-account.
  • 500 Internal Server Error: Internal platform error.

Code Examples

cURL

curl -X POST "https://gateway.ahrvo.network/banking/ibans/v2/sub-accounts/1045/tnc/send-email" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"email": "director@example.com",
"shareholderId": "a91ecbb5-2ea5-4424-87e6-1337d19ad1dc"
}'

Python

import requests

url = "https://gateway.ahrvo.network/banking/ibans/v2/sub-accounts/1045/tnc/send-email"
headers = {
"Authorization": "Bearer YOUR_ACCESS_TOKEN",
"Content-Type": "application/json",
"Accept": "application/json"
}

payload = {
"email": "director@example.com",
"shareholderId": "a91ecbb5-2ea5-4424-87e6-1337d19ad1dc"
}

response = requests.post(url, json=payload, headers=headers)
print(response.status_code, response.json())

JavaScript (Node.js)

const axios = require('axios');

const url = 'https://gateway.ahrvo.network/banking/ibans/v2/sub-accounts/1045/tnc/send-email';
const headers = {
'Authorization': 'Bearer YOUR_ACCESS_TOKEN',
'Content-Type': 'application/json',
'Accept': 'application/json'
};

const payload = {
email: 'director@example.com',
shareholderId: 'a91ecbb5-2ea5-4424-87e6-1337d19ad1dc'
};

axios.post(url, payload, { headers })
.then(res => console.log('Response:', res.data))
.catch(err => console.error(err.response ? err.response.data : err.message));

Interactive API Explorer