KYC with nested stakeholders (AUS)

This page contains only params relevant for the specific example. For a complete list of params for this API call visit this page.

Nested entities

When the stakeholder of an entity is another entity (e.g. a parent company), you can nest the parent company verification details. In the example bellow, we have the target entity and two stakeholders: one individual and one private company. How you nest the company structure depends on the legal structure of the entities.

Note on submitting stakeholders

For each trust, the same individual can hold multiple stakeholder roles. For example, in a trust, a person can be both a trustee and a beneficiary. We strongly recommend submitting an individual in only one stakeholder role. If there is a specific role that must be included (i.e., is required), such as trustee, submit the individual in that role to avoid running multiple KYCs (identity verifications) for the same person within a single KYB, which would be redundant. This is a cost-effective approach. For instance, if John ok Citizen is both a trustee and beneficiary of MY TRUST, submit John ok Citizen as a trustee, as this role is required to be submitted, rather than as both. This will prevent duplicate charges for verification. Even if the individual is submitted under one role, bronID will map any additional relevant roles in the background and include them in the documentation.

Runnable example

const apiEndpoint = 'https://dev.bronid.com/verify'; // request body const kycData = { "metadata_version": "4", "metadata_serviceUid": "XL7ULiU6B4QE9Y2iWFZnhtMDKFN2", "metadata_secretKey": "api_sec_NJAtNcRtUrPlf7xYDrMNP9URI-ZfN314", "type": "unRegulatedTrust", "fields": { "country": "AUS", "name": "My Unregulated Trust", "unRegulatedTrustType": "familyTrust", "registeredOfficeRequired": "125 York Street, SYDNEY NSW 2000", "trustDeed": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==" }, "stakeholders": [ { "type": "individual", "role": "beneficiaries", "fields": { "firstName": "Jane", "middleName": "ok", "lastName": "Citizen", "gender": "female", "dateOfBirth": "20/12/1982", "unitNumber": "1", "streetNumber": "95", "streetName": "Lennox", "streetType": "Street", "suburb": "CASINO", "postcode": "2470", "state": "NSW", "email": "email@gmail.com", "country": "AUS" } }, { "type": "privateCompany", "role": "trustee", "fields": { "country": "AUS", "acn": "123456789", "abn": "16123456789", "name": "My Company", "registeredOffice": "125 York Street, SYDNEY NSW 2000", "principalPlaceOfBusiness": "250 York Street, SYDNEY NSW 2000", "companyExtract": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==" }, "stakeholders": [{ "type": "individual", "role": "shareholders", "fields": { "firstName": "Second", "middleName": "ok", "lastName": "Citizen", "gender": "female", "dateOfBirth": "20/10/1980", "unitNumber": "1", "streetNumber": "95", "streetName": "Lennox", "streetType": "Street", "suburb": "CASINO", "postcode": "2470", "state": "NSW", "email": "email@gmail.com", "country": "AUS" } }] } ] }; console.log('Running request. Please wait...') // submit the KYC data to the bronID API try { const response = await fetch(apiEndpoint, { method: 'POST', headers: { 'Content-Type': 'application/json', }, body: JSON.stringify(kycData), }); if (!response.ok) { const errorData = await response.json(); console.log('error! click the results to expand them'); console.log(JSON.stringify(errorData, null, 2)); } else { const bronIdResult = await response.json(); const printResult = 'bronId API response: ' + JSON.stringify(bronIdResult, null, 2); console.log(printResult); } } catch (error) { console.log('Fetch error: ', error); } // Click “▶ run” to try this code live and run your first KYC.