Token OTP
Una vez completada la configuración inicial, el siguiente paso es generar un Token OTP (One-Time Password) desde el backend. Este token permite autenticar y autorizar las sesiones de extracción de datos de manera segura.
Tipos de flujo
Boufin Connect soporta dos tipos de flujo según el tipo de usuario:
- Flujo de persona natural: La configuración base para usuarios individuales que autorizan la extracción de información de sus cuentas personales.
- Flujo de persona jurídica: Utiliza la misma configuración del flujo de persona natural, pero agrega información adicional de la empresa.
Endpoint
Ambos flujos utilizan el siguiente endpoint:
POST https://BACKEND_URL/api/v1/token/otp/create
Los identificadores y credenciales necesarios para este endpoint (Client ID, Widget Config ID y API key) se obtienen del Customer Success Manager de Boufin. Para más detalles, consulte la sección de identificadores y credenciales en la configuración inicial.
Flujo de persona natural
Para usuarios individuales que autorizan la extracción de información de sus cuentas personales.
Ejemplo
curl -X POST https://BACKEND_URL/api/v1/token/otp/create \
-H "Content-Type: application/json" \
-H "x-api-key: bf_sk_3f2a1b4c5d6e7f8g9h0i1j2k3l4m5n6o" \
-d '{
"products": ["movement", "product-balance"],
"user": {
"username": "1111111-1",
"email": "correo@synaptic.cl"
},
"filters": {
"entities": {
"include": {
"types": ["business-bank"]
}
}
},
"clientId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"widgetConfigId": "d2945J2DzQtHNlXiNFLO"
}'
Argumentos
products
(array, requerido)- Lista de IDs de las acciones que el usuario autoriza. Para ver los posibles valores, el listado de acciones disponibles.
user
(object, requerido)Datos de identificación del usuario.
username
(string, requerido) - Identificador del usuario. En el caso de Chile, corresponde al RUT, el cual puede incluir o no puntos y guión, pero debe contener el dígito verificador correspondiente.email
(string, opcional) - Correo electrónico del usuario.
filters
(object, opcional)Configuración que permite definir los criterios de filtrado para determinar qué entidades estarán disponibles al usuario. Estas son las cuentas que podrá elegir y conectar.
entities.include.types
(array, opcional) - Especifica los tipos de entidades disponibles para conexión. Valores posibles:bank
,business-bank
,government
,service
,afp
,exchange
.
clientId
(string, requerido)- Identificador único del cliente (ver Identificadores y credenciales).
widgetConfigId
(string, requerido)- Identificador de configuración de Boufin Connect (ver Identificadores y credenciales).
Flujo de persona jurídica
Para empresas que autorizan la extracción de información de sus cuentas corporativas.
Ejemplo
curl -X POST https://BACKEND_URL/api/v1/token/otp/create \
-H "Content-Type: application/json" \
-H "x-api-key: bf_sk_3f2a1b4c5d6e7f8g9h0i1j2k3l4m5n6o" \
-d '{
"products": ["movement", "product-balance"],
"user": {
"username": "1111111-1",
"email": "correo@synaptic.cl"
},
"company": {
"id": "12312312-3"
},
"filters": {
"entities": {
"include": {
"types": ["business-bank"]
}
}
},
"clientId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"widgetConfigId": "d352DzQtHNlXi45ANFLt"
}'
Argumentos
Los argumentos son los mismos que el flujo de persona natural, con la adición de:
company
(object, requerido)- Datos de identificación de la empresa.
id
(string, requerido) - Identificador de la empresa. En el caso de Chile corresponde al RUT.
Respuesta
Ambos flujos retornan la siguiente estructura de respuesta:
{
"data": {
"otpToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"consentId": "c9ee477f-39d5-4777-9b32-0855badc2138"
}
}
otpToken
(string)- Token JWT de un solo uso que se utiliza para inicializar Boufin Connect.
consentId
(string)- Identificador único del consentimiento generado para esta sesión.