Saltar al contenido principal

Boufin Connect (1.2.0)

Boufin Connect

A continuación, se describen los diferentes endpoints que utiliza Boufin Connect. Esta API permite a las aplicaciones cliente consultar y gestionar consentimientos, así como generar tokens y obtener información detallada de los productos financieros autorizados por el usuario.

Autenticación

El servicio de Boufin Connect utiliza los siguientes mecanismos de autenticación:

  • 🔑 API Key: Clave secreta persistente. Se usa para autenticar clientes de confianza (server-to-server) y autorizar operaciones privilegiadas.
  • JWT Bearer Token: El servicio utiliza tokens JWT (JSON Web Token) como mecanismo de autenticación para operaciones seguras y controladas.
    • 🔒 Token OTP: Token de un solo uso generado para inicializar Boufin Connect y autorizar la sesión del usuario.
    • 🔒 Task Token: Token asociado a un usuario específico (target), utilizado para consultar consentimientos y productos financieros autorizados. Cada uno está vinculado a un identificador de usuario, permitiendo acceder únicamente a los datos de ese usuario.

ApiKeyAuth

Autenticarse enviando la 🔑 API Key asociada a la organización.

Security Scheme Type: API Key
Header parameter name: x-api-key

jwtBearerToken

Autenticarse enviando el 🔒 Task Token obtenido previamente.

Security Scheme Type: HTTP
HTTP Authorization Scheme: bearer
Bearer format: JWT

Consentimientos

Listado de consentimientos

Permite obtener la lista paginada de consentimientos asociados al identificador utilizado para crear el 🔒 Task Token.

Authorizations:
jwtBearerToken
query Parameters
page
integer
Default: 1

Número de página a consultar en la lista paginada de consentimientos.

limit
integer
Default: 10

Cantidad máxima de consentimientos a retornar por página.

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Obtener consentimiento por id

Permite obtener los detalles de un consentimiento específico utilizando su ID.

Authorizations:
jwtBearerToken
path Parameters
consentId
required
string

Identificador único del consentimiento.

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Descargar archivo de consentimiento

Permite obtener una URL firmada temporal para descargar el archivo PDF del consentimiento. La URL generada tiene una validez de 5 minutos.

Authorizations:
jwtBearerToken
path Parameters
consentId
required
string

Identificador único del consentimiento.

Responses

Response samples

Content type
application/json

Revocar un consentimiento

Permite revocar un consentimiento activo, estableciendo su estado como INACTIVE y sub-estado como REVOKED. Una vez revocado, el consentimiento no puede ser utilizado para extraer datos.

Authorizations:
jwtBearerToken
Request Body schema: application/json
required
consentId
required
string <uuid>

Identificador único del consentimiento a revocar.

Responses

Request samples

Content type
application/json
{
  • "consentId": "e521cf62-a45f-49c5-8372-94853fffeb55"
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Productos - Sync (Deprecado)

Obtener datos de un producto Deprecated

Deprecado — Usar POST /api/v1/products/retrieve-data/tasks en su lugar.

Permite recuperar datos de un producto específico asociado a un consentimiento. El campo data contiene el resultado correspondiente al producto solicitado; el formato exacto varía según product. Para más información, consultar la documentación de modelos de banca personal o banca empresa.

Authorizations:
jwtBearerToken
Request Body schema: application/json
required
product
required
string (ProductType)
Enum: "tef" "bill" "product-balance" "financial-report" "product-balance-investment" "identity-validation" "movement" "income-report" "pat" "pac" "transfer" "consumer-loan" "mortgage" "investment-report" "credit-card-unbilled-transaction" "credit-card-statement" "account-balance" "identity-validation-clave-unica" "tax-folder" "tax-folder-pdf" "tax-folder-clave-unica" "tax-folder-pdf-clave-unica" "property-tax" "property-tax-clave-unica" "dte" "dte-clave-unica" "sworn-declaration" "sworn-declaration-clave-unica" "tax-situation" "debt" "insurance" "personal-information" "contribution" "job" "consolidate" "fiscal-statement" "fiscal-statement-clave-unica" "birth-certificate" "balances"

ID de la acción que el usuario autoriza.

consentId
required
string <uuid>

Identificador único del consentimiento.

Responses

Request samples

Content type
application/json
{
  • "product": "tef",
  • "consentId": "e521cf62-a45f-49c5-8372-94853fffeb55"
}

Response samples

Content type
application/json
Example

Extracción exitosa

{
  • "taskStatus": "success",
  • "taskStatusCode": 200,
  • "data": [
    ]
}

Productos - Async

Iniciar tarea de obtención de datos de un producto (async)

Inicia de forma asíncrona la recuperación de datos de un producto asociado a un consentimiento activo. La respuesta incluye un taskId para consultar el estado de la tarea mediante polling. El taskId tiene una validez de 3 semanas desde su creación.

Authorizations:
jwtBearerToken
Request Body schema: application/json
required
product
required
string (ProductType)
Enum: "tef" "bill" "product-balance" "financial-report" "product-balance-investment" "identity-validation" "movement" "income-report" "pat" "pac" "transfer" "consumer-loan" "mortgage" "investment-report" "credit-card-unbilled-transaction" "credit-card-statement" "account-balance" "identity-validation-clave-unica" "tax-folder" "tax-folder-pdf" "tax-folder-clave-unica" "tax-folder-pdf-clave-unica" "property-tax" "property-tax-clave-unica" "dte" "dte-clave-unica" "sworn-declaration" "sworn-declaration-clave-unica" "tax-situation" "debt" "insurance" "personal-information" "contribution" "job" "consolidate" "fiscal-statement" "fiscal-statement-clave-unica" "birth-certificate" "balances"

ID de la acción que el usuario autoriza.

consentId
required
string <uuid>

Identificador único del consentimiento.

Responses

Request samples

Content type
application/json
{
  • "product": "tef",
  • "consentId": "e521cf62-a45f-49c5-8372-94853fffeb55"
}

Response samples

Content type
application/json
{
  • "taskId": "task-12345-abcde"
}

Consultar estado de tarea de producto (polling)

Consulta el estado de una tarea de obtención de producto previamente iniciada a partir de su taskId. Retorna pending o running mientras está en curso, y los datos del producto una vez finalizada. El campo data contiene el resultado correspondiente al producto solicitado; el formato exacto varía según product. Para más información, consultar la documentación de modelos.

Authorizations:
jwtBearerToken
path Parameters
taskId
required
string [ 1 .. 100 ] characters
Example: task-12345-abcde

Identificador único de la tarea.

Responses

Response samples

Content type
application/json
Example
{
  • "taskStatus": "success",
  • "taskStatusCode": 200,
  • "results": [
    ]
}

Tokens

Crea un Token OTP

Permite crear un 🔒 Token OTP para iniciar el flujo de autenticación con Boufin Connect.

Authorizations:
ApiKeyAuth
Request Body schema: application/json
required
products
required
Array of strings (ProductType)
Items Enum: "tef" "bill" "product-balance" "financial-report" "product-balance-investment" "identity-validation" "movement" "income-report" "pat" "pac" "transfer" "consumer-loan" "mortgage" "investment-report" "credit-card-unbilled-transaction" "credit-card-statement" "account-balance" "identity-validation-clave-unica" "tax-folder" "tax-folder-pdf" "tax-folder-clave-unica" "tax-folder-pdf-clave-unica" "property-tax" "property-tax-clave-unica" "dte" "dte-clave-unica" "sworn-declaration" "sworn-declaration-clave-unica" "tax-situation" "debt" "insurance" "personal-information" "contribution" "job" "consolidate" "fiscal-statement" "fiscal-statement-clave-unica" "birth-certificate" "balances"

Lista de IDs de las acciones que se van a autorizar en el consentimiento.

clientId
required
string <uuid>

Identificador único del cliente.

required
object

Datos de identificación del usuario.

object

Datos de identificación de la empresa.

locale
string
Default: "es-CL"

Configuración regional y de idioma.

widgetConfigId
required
string

Identificador único de la configuración del widget. Distingue entre mayúsculas y minúsculas. Para obtener más detalles, consulta la guía de configuración inicial.

object

Configuración que permite definir los criterios de filtrado para determinar qué entidades estarán disponibles al usuario.

Responses

Request samples

Content type
application/json
{
  • "products": [
    ],
  • "clientId": "5e505642-9024-474d-9434-e5a44f505cc5",
  • "user": {
    },
  • "company": {
    },
  • "locale": "es-CL",
  • "widgetConfigId": "string",
  • "filters": {
    }
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Crear Task Token

Permite crear un 🔒 Task Token asociado a un cliente y un usuario específico.

Authorizations:
ApiKeyAuth
Request Body schema: application/json
required
clientId
required
string <uuid>

Identificador único del cliente.

target
required
string

Identificador del usuario para el cual se solicita el Task Token. En Chile corresponde al RUT.

Responses

Request samples

Content type
application/json
{
  • "clientId": "5e505642-9024-474d-9434-e5a44f505cc5",
  • "target": "string"
}

Response samples

Content type
application/json
{
  • "data": {
    }
}