Servicios de Automatización Financiera Widget (1.2.0)
E-mail: team@boufin.com URL: https://www.boufin.com
A continuación se describen los diferentes endpoints, así como también el flujo para implementar el Widget
⚠️ Para realizar el siguiente flujo se necesita una API KEY.
⚠️ URL de Boufin Widget.
- Sandbox: https://widget-sandbox.boufin.com
- Staging: https://widget-staging.boufin.com
- Producción: https://widget.boufin.com
- Acciones que debes hacer tu: 👨💻
- Acciones que hacemos nosotros: 🤖
- 👨💻 -> Desde tu servidor debes obtener un
🔑 Token Query
y🔒 Token OTP
utilizando unaAPI KEY
(⚠️👮 Cuidado de no exponer la Api Key en tu aplicación pública, esta debe ser resguardada y usada solo en ambiente de backend). - 👨💻 -> Entregas el
🔒 Token OTP
a tu aplicacion (web o mobile) para que levante el Widget siguiendo estas instrucciones. - 🤖 -> El Widget utiliza el
🔒 Token OTP
para autorizar la sesión y desplegar la interfaz para que el usuario final pueda realizar el flujo de extracción. - 🤖 -> Al finalizar un proceso de extracción, se enviará a tu aplicación mediante post-message el
taskId
.- 4.1. 🤖 -> El Widget maneja distintos estados que pueden ser comunicados a tu aplicación, para más detalles, ver las instrucciones de integración.
- 👨💻 -> Desde tu servidor utilizando el
🔑 Token Query
del punto 1 y eltaskId
debes consultar el resultado de la extracción a la API Boufin.- 5.1. Si consultas el resultado usando el
taskId
enviado al terminar el proceso de extracción (eventoonSuccess
), Los datos extraidos estarán disponibles inmediatamente al finalizar el flujo del Widget. - 5.2. Si consultas el resultado usando el
taskId
antes de que el proceso de extracción haya terminado (eventoonStart
), la API Boufin retornará un estado pending o running durante el tiempo que dure el proceso de extracción. Si hay un error durante el proceso de extracción, la API Boufin retornará el estado correspondiente (wrong_login o error).
- 5.1. Si consultas el resultado usando el
A continuación puedes ver como funciona la integración del Widget.
El servicio de widget utiliza los siguientes mecanismos de autenticación:
API Key
: Token de autenticación para usar las APIs de Boufin🔒 Token OTP
: Token de un solo uso para autenticar la sesión de uso del widget🔑 Token Query
: Token para obtener el resultado de una tarea de extracción iniciada por el widget
Obtención de Tokens
Permite obtener el token de autenticación para el uso del widget (tokenOtp) y el token para consultar el resultado de una tarea de extracción (tokenQuery).
Authorizations:
apiKey
Request Body schema: application/json
configuración
name required | string Nombre del usuario |
username required | string rut o email del usuario |
flowType required | string (Token) Enum: "extraction:bill" "extraction:tef" "extraction:update-salary" "extraction:investment" "..." Tipo de flujo de extracción (Ver todos los tipos de flujo disponibles) |
Responses
Request samples
- Payload
- cURL
Content type
application/json
{- "username": "11.111.111-1",
- "name": "Juan Perez",
- "flowType": "extraction:bill"
}
Response samples
- 200
- 401
- 429
Content type
application/json
{- "tokenOtp": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.ZGF0YQ==.SiGQMoPq9LK4Es44h",
- "tokenQuery": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.ZGF0YQ==.SiGQMoPq9LK4Es44hidp6Vy4t9UtogVnLmPALLg1IqLtqZujGWCw6HBG424Fx0xHPziEkTPdh2REmTCL5f"
}
Consultar el estado del proceso de extracción
Consultar el estado y/o obtener los resultados de la extracción.
Authorizations:
tokenQuery
path Parameters
taskId required | string ID de la tarea |
Responses
Request samples
- cURL
curl "https://${URL}/api/v1/tasks/${TASK_ID}" \ -H "Authorization: Bearer ${TOKEN_QUERY}"
Response samples
- 200
- 401
- 403
Content type
application/json
Example
Extracción exitosa
{- "taskStatus": "success",
- "taskStatusCode": 200,
- "results": {
- "username": "11111111-1",
- "entityId": "banco-estado",
- "data": [
- {
- "name": "Juan Pérez",
- "rut": "11.111.111-1",
- "bankName": "Banco Estado",
- "bankCode": "012",
- "accountNumber": "0-000-22-22222-2",
- "accountType": "corriente",
- "email": "juan.perez@gmail.com",
- "alias": "juan"
}, - {
- "name": "Hector Vargas",
- "rut": "22.222.222-2",
- "bankName": "Banco Santander",
- "bankCode": "037",
- "accountNumber": "0-000-33-33333-3",
- "accountType": "vista",
- "email": "hector.vargas22@gmail.com",
- "alias": ""
}
]
}
}