# Role Management

## Overview

The platform implements a sophisticated role management system that follows the entity-role separation of concerns architecture. This document covers role assignment and management for customer and proxy roles.

For detailed information about entity types and their relationships, see [Entity and Role Management](/documentation/entity_role_management_after_refactor.md).

## Role Types

The platform supports two main role types:

#### Customer Role

* Can be assigned to natural persons, legal entities, or joint persons
* Represents the primary banking relationship
* Requires comprehensive onboarding and validation

For entity preparation information, see:

* [Natural Person Management](/documentation/entity_role_management_after_refactor/natural_person_management.md) for natural persons and joint persons
* [Legal Entity Management](/documentation/entity_role_management_after_refactor/legal_entity_management.md) for legal entities

#### Proxy Role

* Can only be assigned to natural persons
* Represents authorization to act on behalf of another entity
* Multiple proxy types supported:
  * Guardian (for minors)
  * Signatory (for legal entities)
  * Joint Account Holder
  * General Power of Attorney
  * Liquidator
  * Information Proxy

For natural person preparation information, see [Natural Person Management](/documentation/entity_role_management_after_refactor/natural_person_management.md).

## Role Assignment

After preparing the entities, roles can be assigned to them.

### Customer Role Assignment

To assign a customer role to an entity, the partner must:

1. Assign the customer role to the entity using `POST /roles/customers` with the `entityId` and `entityType`
2. Upload required documents related to the customer role using `POST /v2/documents/` with `resourceType` set to CUSTOMER

### Proxy Role Assignment

To assign a proxy role, the partner must:

1. Ensure both the representing natural person and the entity to be represented are already created
2. Assign the proxy role using `POST /roles/proxies` with the natural person's ID and the `entityId` and `entityType` of the entity to be represented
3. Upload required proxy-specific documents using `POST /v2/documents/` with `resourceType` set to PROXY:
   * For Guardian proxies: `PROOF_OF_SINGLE_CUSTODY`, `PROOF_OF_CUSTODY`
   * For Liquidator proxies: `INSOLVENCY_ORDER`
   * For General Power of Attorney with death validity: `INHERITANCE_LEGITIMATION`
   * For other proxy types: General documents (`GENERAL`, `CONTRACTS`, etc.)

## Role Onboarding

The platform supports comprehensive onboarding processes for both customer and proxy roles. For detailed information about onboarding processes, validations, KYC integration, and sequence diagrams, see [Onboarding](/documentation/entity_role_management_after_refactor/onboarding.md).

## Role-Specific Document Requirements

For detailed information about role-specific document requirements, including customer role documents, proxy role documents, and specific requirements for different proxy types, see [Legal Entity Management](/documentation/entity_role_management_after_refactor/legal_entity_management.md).

## Conclusion

The role management system provides a comprehensive framework for handling customer and proxy roles within the platform. The separation of entities and roles ensures clean architecture while supporting complex business processes.

The flexible proxy system supports various authorization scenarios required for different business needs, while role assignment processes ensure proper documentation and authorization requirements are met.

For detailed information about onboarding processes, validations, and sequence diagrams, see [Onboarding](/documentation/entity_role_management_after_refactor/onboarding.md).


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.tradevest.ai/documentation/entity_role_management_after_refactor/roles_management.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
