Saltar al contenido principal

Extracción de datos

Una vez completado el proceso de autorización y obtenido el consentId, el siguiente paso es extraer los datos de los productos financieros autorizados por el usuario. Este proceso se realiza en dos etapas: la creación de un Task Token y la posterior extracción de datos del producto.

Task Token

El Task Token es un token JWT asociado a un usuario específico que permite consultar consentimientos y productos financieros autorizados. Cada token está vinculado a un identificador de usuario, permitiendo acceder únicamente a los datos de ese usuario específico.

Endpoint

POST https://BACKEND_URL/api/v1/token/task

Ejemplo

curl -X POST https://BACKEND_URL/api/v1/token/task
-H "Content-Type: application/json"
-H "x-api-key: bf_sk_3f2a1b4c5d6e7f8g9h0i1j2k3l4m5n6o"
-d '{
"target": "12312312-3",
"clientId": "1E65AE48-F9CF-49F2-8012-FB910179852F"
}'

Argumentos

  • target (string, requerido)

    • Identificador del usuario para el cual se solicita el Task Token. En el caso de Chile, corresponde al RUT.
      • Para flujo de persona natural: RUT del usuario individual.
      • Para flujo de persona jurídica: RUT de la empresa.
  • clientId (string, requerido)

Respuesta

{
"data": {
"taskToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}
}
  • taskToken (string)

    • Token JWT que se utilizará para autorizar las consultas de datos de productos.

Extracción de datos de productos

Una vez obtenido el Task Token, es posible extraer los datos de productos específicos asociados a los consentimientos autorizados por el usuario.

info

Cada solicitud permite extraer datos de un solo producto por solicitud. Para obtener datos de múltiples productos, es necesario realizar solicitudes separadas para cada uno.

Endpoint

POST https://BACKEND_URL/api/v1/products/retrieve-data

Ejemplo

curl -X POST https://BACKEND_URL/api/v1/products/retrieve-data
-H "Content-Type: application/json"
-H "Authorization: Bearer TASK_TOKEN"
-d '{
"product": "tef",
"consentId": "e521cf62-a45f-49c5-8372-94853fffeb55"
}'

Argumentos

  • product (string, requerido)

    • ID de la acción que el usuario autorizó. Para ver los posibles valores, revisar el listado de acciones disponibles.
  • consentId (string, requerido)

    • Identificador único del consentimiento obtenido durante el proceso de autorización.

Respuesta

{
"data": {
// El contenido depende del producto solicitado
// Ver documentación para detalles específicos
}
}

La estructura de la respuesta en el campo data varía según el producto solicitado. Para obtener información detallada sobre los esquemas de respuesta de cada producto, revisar la documentación de modelos de datos.

Consideraciones importantes

  • El Task Token tiene un tiempo de expiración limitado. Es necesario utilizarlo dentro del período de validez.
  • Solo es posible extraer datos de productos que fueron previamente autorizados por el usuario durante el proceso de consentimiento.
  • Cada solicitud de extracción debe incluir un consentId válido y activo.
  • La disponibilidad de datos puede variar según la entidad financiera y el tipo de producto solicitado.

Gestión de consentimientos

Boufin Connect proporciona endpoints para consultar y gestionar los consentimientos asociados a un usuario específico. Estos endpoints permiten verificar el estado de los consentimientos, obtener información detallada y administrar las autorizaciones activas.

Obtener consentimiento específico

Permite obtener los detalles completos de un consentimiento específico utilizando su identificador único.

Endpoint

GET https://BACKEND_URL/api/v1/consents/{consentId}

Ejemplo

curl -X GET "https://BACKEND_URL/api/v1/consents/c9ee477f-39d5-4777-9b32-0855badc2138" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer TASK_TOKEN"

Parámetros

  • consentId (string, requerido)

    • Identificador único del consentimiento a consultar.

Respuesta

{
"data": {
"id": "c9ee477f-39d5-4777-9b32-0855badc2138",
"products": ["movement", "product-balance"],
"tyc": {
"actualVersion": 2
},
"entity": {
"id": "banco-chile",
"name": "Banco de Chile",
"type": "bank"
},
"status": "success",
"subStatus": "ACTIVE",
"validUntil": "2025-12-31T23:59:59Z"
}
}

Cada consentimiento contiene la siguiente información:

  • id (string)

    • Identificador único del consentimiento.
  • products (array)

    • Lista de productos/acciones incluidas en el consentimiento.
  • tyc (object)

    • Información sobre la versión de términos y condiciones aceptada.
    • actualVersion (integer) - Versión del Término y Condiciones (TyC) aceptado.
  • entity (object)

    • Información de la entidad financiera autorizada por el usuario para la extracción de productos/acciones.
    • id (string) - Identificador de la entidad.
    • name (string) - Nombre de la entidad.
    • type (string) - Tipo de entidad. Valores posibles: bank, business-bank, government, service, afp, exchange.
  • status (string)

    • Indica el estado del consentimiento.
    • Valores posibles: ACTIVE, IN_PROGRESS, INACTIVE.
  • subStatus (string)

    • Sub-estado específico del consentimiento que proporciona información más detallada sobre el motivo del valor de status.
    • Valores posibles: ONE_SHOT_ALREADY_USED, EXPIRED, REVOKED, DISCARDED, IN_PROGRESS, INVALID_PASSWORD, ACTIVE.
  • validUntil (string)

    • Fecha de expiración del consentimiento en formato ISO 8601.
  • terminatedAt (string, opcional)

    • Fecha de terminación del consentimiento en formato ISO 8601. Solo presente si el consentimiento ha sido terminado.

Listado de consentimientos

Permite obtener una lista paginada de todos los consentimientos asociados al usuario identificado por el Task Token.

Endpoint

GET https://BACKEND_URL/api/v1/consents

Ejemplo

curl -X GET "https://BACKEND_URL/api/v1/consents?page=1&limit=10" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer TASK_TOKEN"

Parámetros

  • page (integer, opcional)

    • Número de página a consultar en la lista paginada de consentimientos.
    • Valor por defecto: 1
  • limit (integer, opcional)

    • Cantidad máxima de consentimientos a retornar por página.
    • Valor por defecto: 10

Respuesta

{
"data": {
"consents": [
{
"id": "c9ee477f-39d5-4777-9b32-0855badc2138",
"products": ["movement", "product-balance"],
"tyc": {
"actualVersion": 2
},
"entity": {
"id": "banco-chile",
"name": "Banco de Chile",
"type": "bank"
},
"status": "success",
"subStatus": "ACTIVE",
"validUntil": "2025-12-31T23:59:59Z"
}
],
"hasNext": false,
"count": 1
}
}
  • consents (array)

    • Lista de consentimientos en la página actual.
  • hasNext (boolean)

    • Indica si existen más páginas disponibles.
  • count (integer)

    • Total de consentimientos que cumplen los filtros.