Legal Entity - Partner Ident Service
Legal Entity Onboarding - Partner Ident Service
This guide describes the happy-path onboarding of a legal entity customer using the Tradevest API, where the partner performs the identification of natural persons externally.
The onboarding process consists of a defined sequence of API calls that create and link the required entities, roles, documents, and authorizations before the final onboarding is triggered.
The Tradevest API is asynchronous by design. Most create or update operations return either a UUID or an HTTP success status immediately. The current state of a resource can be retrieved at any time via the corresponding GET endpoints. In addition, Tradevest emits webhook notifications for relevant lifecycle events.
Overview of Required Steps
To onboard a legal entity as a customer, the following steps must be completed in the order listed below:
Prerequisites (Subscribe to Webhooks)
Create legal entity (
POST /entities/legal-entities)Create legal representatives (
POST /entities/{legalEntityId}/legal-representatives)Create beneficial owners (
POST /entities/{legalEntityId}/beneficial-owners)Create customer role for legal entity (
POST /roles/customers)Upload legal entity documents (
POST /v2/documents)Create natural persons (proxies) (
POST /entities/natural-persons)Create natural person identification (
POST /entities/natural-persons/{naturalPersonId}/identification)Upload identification certificate for natural persons (
POST /v2/documents)Create proxies (
POST /roles/proxies)Sign Tradevest legal documents (
POST /v2/documents/sign)Onboard legal entity as customer (
POST /roles/onboardings)Monitor onboarding status (
GET /roles/onboardings/{onboardingId})
0. Prerequisites
Webhook Event
Before starting the onboarding process, ensure that webhook subscriptions are configured for the following event types, which are required to monitor the lifecycle of the onboarding process:
LEGAL_ENTITY_NOTIFICATIONLEGAL_REPRESENTATIVE_NOTIFICATIONBENEFICIAL_OWNER_NOTIFICATIONPROXY_NOTIFICATIONCUSTOMER_NOTIFICATIONNATURAL_PERSON_NOTIFICATIONDOCUMENT_NOTIFICATIONONBOARDING_NOTIFICATION
Webhook notifications are strongly recommended. If webhooks are not configured, partners must actively poll the corresponding GET endpoints to retrieve status updates. It is important to note though, that error reasons are only returned via webhook notifications.
Refer to the API Reference – Webhooks section for instructions on how to create, update, and delete webhook subscriptions, and to the Partner Webhooks section for details on webhook payloads.
1. Create Legal Entity
After collecting all required information from the legal entity to be onboarded, create the legal entity using the following request.
Additional required parameters include:
legalEntityIdentifier: if you create a product withproductCode: DEPOSITORY_ACCOUNTfor the customer.
To retrieve valid naceSectors values, refer to the corresponding section in the API Reference.
Request
Response
A subsequent GET /entities/legal-entities/{legalEntityId} request returns the full legal entity resource, including the following system-generated fields:
globalId– A Tradevest-wide unique identifier used to match legal entities across partnerscreatedOnmodifiedOnlegalEntityStatus
The legal entity remains in status: CREATED until the onboarding process is explicitly triggered.
2. Create Legal Representatives
Legal representatives are natural persons who are authorized to act on behalf of the legal entity (for example, to execute trades). At least one legal representative is mandatory for each legal entity.
Notes for Proxies: Legal representatives may later be assigned proxy roles in order to act for the company as a signatory. As part of the onboarding at least one proxy must be created, which must be one of the legal representatives. In the Tradevest API these are considered two different resources though. Therefore we advise, that you collect the data for the natural Person once and if the customer selects one of the legal representatives to be the proxy, that you then reuse the data that was collected previously. What shall be considered, is that the dataset of a legal-representative and a proxy do not match 100%. Therefore when asking the customer for input, both input requirements have to be requested.
Notes for Beneficial Owners & Legal Representatives:
The table below shows which parameters are required for each endpoint. The sum of all fields is needed for a legal representative that shall be a Proxy.
Tradevest API parameter
Legal Representative
Natural Person as Proxy
gender
n/a
required
firstName
required
required
lastname
required
required
birthDay
required
required
birthPlace
required
required
birthCountry
required
required
isUsNationality
required
required
nationalities
required
required
function
required
n/a
soleSignatureAuthorized
required
n/a
factaControllingPerson
required
n/a
taxDetails.taxId
required, if fatcaControllingPerson: true
required if taxResidency not DE
taxDetails.taxResidency
required, if fatcaControllingPerson: true
required
mainAddress{}
not required
required
contact.phone
n/a
required
contact.email
n/a
required
Request
Response
For each legal representative, the Tradevest system automatically generates the following fields:
globalIdcreatedOnmodifiedOnstatus
Once all legal representatives have been created, proceed to the next step.
3. Create Beneficial Owners
Beneficial owners must be created for each natural person who owns 25% or more directly or indirectly either of
the legal entity or
the voting rights
Each such beneficial owner is assigned the type REAL_UBO_25.
If no beneficial owner meeting this threshold exists, the system automatically creates fictive beneficial owners (FICTIVE_UBO) based on the legal representatives associated with the legal entity. This ensures regulatory compliance with beneficial ownership requirements.
Request
Response
The corresponding GET /entities/beneficial-owners/{beneficialOwnerId} endpoint returns the full beneficial owner resource, including:
globalIdstatusboTypecreatedOnmodifiedOn
All required beneficial owners must be created before onboarding can be triggered.
4. Create Customer Role For Legal Entity
To explicitly mark the legal entity as a customer, a customer role must be created. This step also defines the reference accounts used for incoming and outgoing funds.
Creating a customer does not onboard the entity. It only assigns the CUSTOMER role and prepares the entity for onboarding.
Request
Response
The customer resource can be retrieved via GET /roles/customers/{customerId}.
Parameters created by the Tradevest system include:
customerIdcustomerStatuscreatedOnmodifiedOn
5. Upload Legal Entity Documents
Tradevest relies on partners to perform KYC/KYB checks. To ensure regulatory compliance, specific legal entity documents must be uploaded.
Documents are uploaded using POST /v2/documents. Each document must include metadata and be linked to the relevant entity. All document upload requests must include the Requestor-Id header set to the naturalPersonId which is uploading the file.
The required document types depend on the legal form of the entity:
legalForm
documentType
LIMITED_LIABILITY_COMPANY
CURRENT_REGISTRY_EXTRACT, SHAREHOLDER_LIST
PUBLIC_LIMITED_COMPANY
CURRENT_REGISTRY_EXTRACT, TRANSPARENCY_REGISTER_EXTRACT
FOUNDATION
CURRENT_REGISTRY_EXTRACT, STATUTE
ASSOCIATION
STATUTE
REGISTERED_BUSINESSMAN
CURRENT_REGISTRY_EXTRACT
LIMITED_PARTNERSHIP
CURRENT_REGISTRY_EXTRACT, TRANSPARENCY_REGISTER_EXTRACT
GENERAL_PARTNERSHIP
CURRENT_REGISTRY_EXTRACT, SHAREHOLDER_LIST, TRANSPARENCY_REGISTER_EXTRACT
LIMITED_LIABILITY_COMPANY_AND_LIMITED_PARTNERSHIP
CURRENT_REGISTRY_EXTRACT, SHAREHOLDER_LIST, TRANSPARENCY_REGISTER_EXTRACT
PARTNERSHIP
PARTNERSHIP_AGREEMENT
Furthermore the following must be considered:
Allowed File MIME types: PDF only
Maximum File Size: 6 MB
Onboarding will fail if not all mandatory legal entity documents have been uploaded.
Request
Response
Once this step is successfully completed all information about the legal entity has been provided and the proxies for signatories have to be created in order to allow these people to act for the company.
6. Create Natural Person for Proxy
Natural persons who will later be authorized to act on behalf of the legal entity (signatories) must be created. These persons may be legal representatives or other individuals designated by the entity.
Request
Response
7. Create Natural Person Identification
Since partners perform identification externally, the identification results must be transferred to Tradevest.
Request
Response
This request returns HTTP Code 202 Accepted.
8. Upload Identification Certificate
For each natural person acting as a proxy, an identification certificate summarizing the identification process must be uploaded.
Request
Response
9. Create Proxies
To authorize a natural person to act on behalf of the legal entity, create a proxy with proxyType = SIGNATORY. Only individual representation scopeType: INDIVIDUAL is currently supported.
Multiple proxies may be created and can also be added or deactivated at a later stage.
Request
Response
10. Sign Tradevest Legal Documents
Before onboarding, Tradevest legal documents (e.g. Terms and Conditions, Data Privacy Policy) must be presented to the customer and accepted.
Only proxies with proxyType = SIGNATORY are authorized to sign these documents.
The signing process consists of:
Retrieving valid documents
Downloading document files
Displaying documents to the user
User acceptance
Submitting the signature confirmation
Request valid documents to be signed
For each partner Tradevest uploads the valid legal documents and they will be accessible through the partner documents endpoint. In order to ensure that you are always referring to the valid document to show to the customer, the following request can be sent:
Requests
GET /partner-documents?isValid=true&documentType=DATA_PRIVACY_POLICYGET /partner-documents?isValid=true&documentType=TERMS_AND_CONDITIONS
Response (example for DATA_PRIVACY_POLICY)
Download document and show to customer
In order to download the most recent document send the following
Request
POST /partner-documents/{documentId}/file
Response
The response is a base64 decoded file, which must be encoded by the partners application. In the example above the response is heavily shortened through the dots in the center…
Send Signature confirmation
After the customer has received the chance to read the document and acknowledge them by activating a checkbox a Sign request is sent.
The naturalPersonId in the requests should be the one from the person that is signing the documents.
Request (here only shown for one document)
Response
This request only returns HTTP Code 202 Accepted.
11. Onboard Legal Entity as Customer
As the final step of the onboarding of a legal entity customer, the actual onboarding process has to be triggered for the legal entity. Make sure that all of the above steps have been executed correctly (entities statuses are valid, documents have been uploaded, required fields are provided).
After triggering this process, some asynchronous processes are started, which will take a few seconds to minutes depending on the data load and complexity of the legal entity structure.
Possible outcomes in this process are:
Fixable Validation Issues: If the validation failure is related to issues that can be fixed (e.g. missing documents or missing proxy), only the onboarding status is set to
REJECTEDwhile all related elements return to theirCREATEDstatus. The partner is notified about the specific validation errors and must make the necessary corrections (adding the missing document or proxy) before initiating a new onboarding request.Critical Validation Issues: If the validation failure involves sensitive data that cannot be corrected or if the entity should not be onboarded in the system for compliance reasons, all elements of the onboarding will be rejected.
The partner is notified about the validation outcome in both cases.
Trigger Onboarding Process
Request
Response
12. Monitor Onboarding Status
By querying the onboardings endpoint and subscribing to ONBOARDING_NOTIFICATION webhooks you will monitor the onboarding process. After the initial CREATED status, the following statuses can be a result:
INVALID: In case of incorrect statuses on any of the entities that were created earlier.PENDING: In case of successful validations of the entity statuses the onboarding status will change toPENDINGwhile all background checks are conducted.APPROVED: Once all background checks have been conducted successfully.REVIEW: For companies not registered in Germany the background checks are not fully automated, thus the status will always beREVIEW. Also for some German companies a manual Review by the Tradevest Ops team will have to be conducted.REJECTED: In case our compliance and risk rules do not approve of the customer.
Request
Response
Last updated

