Iniciar sesión

Endpoint: POST /login/

🚧

Para todos los ejemplos utilizaremos los mismos datos de prueba:

  • Un usuario que tiene sólo una cuenta bancaria asociada
  • Credenciales
    -Username: 12345
    -Password: gfdsa
  • Credenciales 2FA OTP:
    -Username: 12345otp
    -Password: asdfg
    -OTP: 8888
  • Credenciales 2FA Pregunta Personal:
    -Username: 12345pq
    -Password: asdfg
    -Personal question: prometeo
  • La institución de prueba: "test"

Como hablamos anteriormente, para obtener todas las funcionalidades deberás iniciar sesión en el banco deseado con las credenciales del usuario bancario que deseas consultar. Aquí te explicamos cómo:

Parámetros requeridos

📘

¡Recuerda tu API KEY!

Recuerda que todas las requests deben incluir el API keyAPI key - Es la clave de autenticación única del cliente que deberá utilizar en todas las solicitudes de información (API Calls) al servicio PrometeoAPI., ya sea usando el header X-API-Key o el parametro api_key en la url.

Parámetros

Descripción

provider

Corresponde al nombre del banco, en minúsculas y sin tildes (Devuelto por el endpoint de listado de providers).

username

Documento o nombre de usuario utilizado para ingresar al home banking o app de la institución financiera.

password

Contraseña del usuario web de la institución financiera.

🚧

Parámetros opcionales

Para algunos bancos no alcanza con los parámetros requeridos por lo tanto antes de iniciar sesión con el banco deseado, primero consulte el EndpointEndpoint - Es el punto de intercambio de información en la API de Campos requeridos para iniciar sesión.

Posibles respuestas

STATUS

DESCRIPCIÓN

status

  • select_client es necesario seleccionar un cliente.

  • wrong_credentials - usuario o password inválidos.

  • missing_credentials falta un campo de credenciales.

  • logged_in sesión iniciada correctamente.

  • interaction_required se requiere algún tipo de inicio de sesión interactiva, podría ser un captcha o una pregunta de seguridad.

key

Clave de autenticación que deberá ser usada en todas las requests siguientes (no estará presente si el status es un error).

Ejemplos

Iniciar sesión

POST /login/ HTTP/1.1
Host: banking.sandbox.prometeoapi.com
Accept: application/json
Content-Type: application/x-www-form-urlencoded
X-API-Key: <API-Key>

provider=test&username=12345&password=gfdsa
curl -X POST "https://banking.sandbox.prometeoapi.com/login/" -d "provider=test&username=12345&password=gfdsa" -H "X-API-Key: <API-Key>"
import requests

requests.post('https://banking.sandbox.prometeoapi.com/login/', data={
    'provider': 'test',
    'username': '12345',
    'password': 'gfdsa',
}, headers={
    'X-API-Key': '<API-Key>'
})
var request = require('request');

request.post({
  "url": "https://banking.sandbox.prometeoapi.com/login/",
  "json": true,
  "headers": {
    "X-API-Key": "<API-Key>"
  },
  "form": {
    "provider": "test",
    "username": "12345",
    "password": "gfdsa"
  }
});

Respuesta exitosa:

{
  "status" : "logged_in",
  "key" : "163d06b2-3378-4383-9868-71c2b6fb28da",
}

Respuesta errónea:

{"status": "wrong_credentials"}

Respuesta con interacción requerida:

Para reforzar el sistema de seguridad, algunas instituciones financieras requieren una interacción por parte del usuario, como un TokenToken - Es una llave electrónica que hace más seguro el intercambio de información. Existen dos tipos, el hard token, un dispositivo electrónico físico que genera códigos de seguridad requeridos para realizar ciertas acciones; y por otro lado, el soft token genera los mismos códigos que el hard token, pero a través de una app móvil. otp, preguntas de seguridad o confirmación 2FA.

{
    "context": "Nombre de la empresa más grande de OpenBanking en LATAM",
    "field": "personal_question",
    "key": "be612b0a-c972-4fb1-bb16-798956a3efa1",
    "status": "interaction_required"
}

Iniciar sesión con interacción:

Para los inicios de sesión con interacción primero debe enviar los parámetros que figuran como no interactivos (Consultelos en Campos requeridos para iniciar sesión) y luego hacer un segundo login adicionando los campos interactivos.

POST /login/?key=be612b0a-c972-4fb1-bb16-798956a3efa1 HTTP/1.1
Host: banking.sandbox.prometeoapi.com
Accept: application/json
Content-Type: application/x-www-form-urlencoded
X-API-Key: <API KEY>

provider=test&username=12345pq&password=asdfg&personal_question=prometeo
curl -X POST "https://banking.sandbox.prometeoapi.com/login/?key=163d06b2-3378-4383-9868-71c2b6fb28da" -d "provider=test&username=12345&password=asdfg&personal_question=uno" -H "X-API-Key: <API KEY>"
import requests

requests.post('https://banking.sandbox.prometeoapi.com/login/', params={
    'key': '163d06b2-3378-4383-9868-71c2b6fb28da',
}, data={
    'provider': 'test',
    'username': '12345',
    'password': 'asdfg',
    'personal_question': 'uno',
}, headers={
    'X-API-Key': '<API KEY>'
})
var request = require('request');

request.post({
  "url": "https://banking.sandbox.prometeoapi.com/login/",
  "json": true,
  "headers": {
    "X-API-Key": "<API KEY>"
  },
  "qs": {
    "key": "163d06b2-3378-4383-9868-71c2b6fb28da"
  },
  "form": {
    "provider": "test",
    "username": "12345",
    "password": "asdfg",
    "personal_question": "uno"
  }
});

Did this page help you?