Tipos de autorização

A API da Trio é responsável por realizar a autenticação na instituição financeira desejada por isso padronizamos o formato de autenticação. A seguir vamos detalhar cada tipo disponível na Trio.

O formato de autenticação pode ser identificado através do campo authorization_type do endpoint de instituição.

Basic

Esta autorização é padrão para a maioria das instituições. Neste processo a autorização acontece através de usuário e senha.

No endpoint de instituição, temos disponível o campo fields que contém a relação dos campos necessários para realizar a autenticação.

Com estes campos podemos montar o objeto credential necessário na criação da Connection.

Device

Esta autorização é implementada quando precisamos de uma identificação do dispositivo que está sendo utilizado. Para isso implementamos o seguinte fluxo:

  1. Você envia um POST com a criação da conexão:
curl -X POST https://sandbox.trio.com.br/connections \ 
  -H "Content-Type: application/json" \
  -d '{
    "institution_id": "373b03d4-ad8b-46e6-9362-aa979a1c45bb",
    "credential": { "username": "11223344556", "password": "1020304Q" }
  }' \ 
  -u {client_id}:{client_secret}
  1. A Trio responderá 201 criando uma conexão com o status device_auth_pending:
{
    "id": "02fd2ff1-97b6-486d-9959-fb04942a4c76",
  "message": "Please, now allow access to Trio in your financial institution.",
  "status": "device_auth_pending"
}
  1. O usuário autoriza o dispositivo da Trio que dependendo da instituição poderá ser identificado da seguinte forma: TRIO-#####;

  2. Você envia um PATCH atualizando a conexão criada. Em algumas instituições será necessário enviar um código de confirmação e você poderá fazer isso através do objeto credential atualizando a conexão:

curl -X PATCH https://sandbox.trio.com.br/connections/02fd2ff1-97b6-486d-9959-fb04942a4c76 \ 
  -H "Content-Type: application/json" \
  -d '{
    "credential": {
      "code": "abc"
    }
  }' \ 
  -u {client_id}:{client_secret}
  1. A Trio responderá com 200 atualizando a conexão com a seguinte resposta:
{
  "data": {
    "type": "fetch_accounts",
    "status": "pending",
    "connection_id": "17a1affd-9efb-49fa-aa6e-4840af0e9395",
    "category": "ACCOUNTS"
  }
}
  1. A Trio notificará os webhooks cadastrados com o evento fetch_accounts. Mais informações na seção de Webhooks.

Did this page help you?