> ## Documentation Index
> Fetch the complete documentation index at: https://transfiya.me/llms.txt
> Use this file to discover all available pages before exploring further.

# Como crear una llave de tipo cuenta

> Cómo registrar llaves en Transfiya

Para la creación de llaves, se utilizará la interfaz de aplicación destinada a la creación de signers.

La plataforma Transfiya utiliza tipos de datos y [esquemas dinámicos](../about/about-validations) para garantizar la integridad y consistencia de los datos en toda la plataforma. Esto incluye reglas de validación para diversos campos dentro del sistema.

**Tipos de Validaciones:**

| Tipo signer | Schema aplicada | Descripción                                |
| ----------- | --------------- | ------------------------------------------ |
| `BUSINESS`  | BUSINESS        | Representa una empresa o persona jurídica. |

## Sintaxis de Referencia para el campo *aliasValue*

* **bankAccountType**: tipo de cuenta (en minúsculas), basado en los valores estándar de Transfiya.
* **bankAccountNumber**: número de cuenta bancaria
* **routerReference**: código de compensación o Bicfi válido del banco.

<Info>
  Este formato unificado garantiza consistencia y compatibilidad con los mecanismos de enrutamiento de Transfiya, facilitando la interoperabilidad entre participantes.
</Info>

## 🏦 Tipos de Cuenta Soportados

A continuación se listan los tipos de cuenta reconocidos en Transfiya:

| Nombre                        | Valor  |
| :---------------------------- | :----- |
| Cuenta de ahorros             | `svgs` |
| Cuenta corriente              | `cacc` |
| Depósito de bajo monto        | `dbmo` |
| Depósito ordinario            | `dord` |
| Depósito inclusivo bajo monto | `dbmi` |

<Tip>
  Estos valores deben utilizarse exclusivamente en minúsculas y reflejan el tipo de cuenta real registrada por el firmante en el sistema financiero.
</Tip>

## 🌐 Referencia Bancaria

El identificador del banco (`bankReference`) debe ser el código de compensación o Bicfi válido, que permita una resolución clara y única del participante receptor.

## ✅ Ejemplo de referencia válida

**<u>svgs:44255107106500\@7095</u>**

### Ejemplo llave persona

A continuación se presenta un ejemplo de creación de una llave tipo 'BUSINESS' donde el tipo de Alias es "ACCOUNT":

<Tabs>
  <Tab title="Request">
    ```json theme={null}
    curl -X POST \
    -H "x-api-key: <API_KEY>" \
    -H "Authorization: Bearer <TOKEN>" \
    -H "Content-Type: application/json" \
    -d '{
    "labels": {
    "aliasType": "ACCOUNT",
    "aliasValue": "svgs:1234@7095",
    "type": "BUSINESS",
    "name": "Jorge SAS",
    "proprietary": "NIT",
    "identification": "1010101010",
    "bankAccountType": "SVGS",
    "bankAccountNumber": "10010010001",
    "routerReference": "$bancorojo"
    },
    "keeper": [{
    "scheme": "ecdsa-ed25519",
    "public": "0463e75c8b975f069813ca8e6c36c0b6fd246eac708affb7ed2c6480fa201defe8725322d6380ec66e94f6dcb49f635c0ca51296e48da4a12b3ec66582a1297adf"
    }]
    }' "<base URL>/v1/signer"
    ```
  </Tab>

  <Tab title="Response">
    ```json theme={null}
    {
      "signer_id": "4c57ac39-16f0-489b-89d9-bddfcd352a36",
      "handle": "wRFmYXS2sP9ho9VCZ3j4FuP1j55ABeFvsF",
      "labels": {
        "aliasType": "ACCOUNT",
        "aliasValue": "svgs:1234@b7095,
        "type": "BUSINESS",
        "name": "Jorge SAS",
        "proprietary": "NIT",
        "identification": "1010101010",
        "bankAccountType": "SVGS",
        "bankAccountNumber": "10010010001",
        "routerReference": "$bancorojo"
        "created": "2024-10-11T11:59:24.241-05:00"
      },
      "keeper": [
        {
          "scheme": "ecdsa-ed25519",
          "public": "0463e75c8b975f069813ca8e6c36c0b6fd246eac708affb7ed2c6480fa201defe8725322d6380ec66e94f6dcb49f635c0ca51296e48da4a12b3ec66582a1297adf"
        }
      ],
      "error": {
        "code": 0,
        "message": "Success"
      }
    }
    ```
  </Tab>
</Tabs>

### Campos de entrada:

| **Etiqueta**      | **Descripción**                                               | **Tipo** | **Longitud**                                                 | **Obligatoriedad** |
| :---------------- | :------------------------------------------------------------ | :------- | :----------------------------------------------------------- | :----------------- |
| aliasType         | Tipo de llave: ACCOUNT                                        | Texto    | N/A                                                          | Si                 |
| aliasValue        | Valor de la llave. Ej: svgs:44255107106500\@1001              | Texto    | 1-Máximo 34 carácteres                                       | Si                 |
| type              | Tipo de signer: BUSINESS                                      | Texto    | N/A                                                          | Si                 |
| name              | Nombre para identificación                                    | Texto    | 1-140 carácteres                                             | Si                 |
| proprietary       | Tipo de documento, admite: CC,CE,PA,TI,NUIP,NIT,OTR,PPT y PEP | Texto    | 1-4                                                          | Si                 |
| identification    | Número de identificación                                      | Texto    | 1-18 carácteres                                              | Si                 |
| bankAccountType   | Número de cuenta, admite: SVGS, TRAS,CACC,DBMO,DORD, DBMI     | Texto    | 1-4                                                          | Si                 |
| bankAccountNumber | Número de la cuenta                                           | Texto    | 1-Máximo 34 dígitos                                          | Si                 |
| routerReference   | Identificador de billetera del banco en Transfiya.            | Texto    | 1- Máximo 34 caracteres alfanuméricos, debe comenzar con `$` | Si                 |
