Fluxos de integração

Entenda como funciona o fluxo de consentimento e suas integrações como Receptora de Dados.

Compartilhar dados

O fluxo abaixo representa a interação de um Receptor de Dados integrado ao Brick Bank® com qualquer Transmissora para o Compartilhamento de Dados.

Fluxo de criação de consentimento.

Fluxo de criação de consentimento.

Criação do consentimento

  1. O usuário solicita o compartilhamento de seus dados via Open Finance junto à instituição Receptora de Dados [1] e seleciona a instituição Transmissora de Dados para transmitir os dados selecionados;
  2. A instituição Receptora de Dados realiza uma solicitação de consentimento ao Brick Bank® [2] através do endpoint POST /api/admin/data-reception/v1/consents com os dados de consentimento no body da requisição;
  3. O Brick Bank® recebe a requisição, valida o body e realiza uma requisição para a Transmissora de Dados criar o consentimento [3];
    1. O consentimento é criado com o status AWAITING_AUTHORISATION [4];
  4. O Brick Bank® recebe a URL de redirecionamento e o ID do consentimento da Transmissora de Dados e envia para a instituição Receptora de Dados [5];
  5. A Receptora de Dados informa o usuário e o redireciona para a Transmissora de Dados [6];
  6. A Transmissora de Dados apresenta a tela de autenticação para o usuário [7];
  7. O usuário realiza a autenticação na Transmissora de Dados [8];
  8. A Transmissora de Dados apresenta todos os dados do consentimento para o usuário [9];

Autorização do compartilhamento

  1. O usuário autoriza o consentimento de compartilhamento na Transmissora de Dados [10];
  2. A Transmissora de Dados redireciona o usuário para a Receptora de Dados [11];
    1. O status do consentimento é alterado para AUTHORISED;
  3. A Receptora de Dados notifica o usuário que o compartilhamento foi concluído com sucesso [12];

Consumo dos dados

  1. A Receptora de Dados recebe os paâmetros de aprovação de consentimento e realiza uma chamada no endpoint POST /api/admin/data-reception/v1/consents/callback do Brick Bank® [13];
  2. O Brick Bank® recebe a requisição e solicita a geração do access_token de callback para o Transmissor de Dados [14];
  3. O Transmissor de Dados gera o access_token de callback via fluxo OpenID [15];
    1. Em caso de expiração do acess_token gerado, é possível realizar o fluxo de refresh_token para renovação [16];
    2. A Receptora de Dados recebe a requisição com os parâmetros de refresh_token e retorna para o Brick Bank® [17];
  4. O Brick Bank® envia o access_token de callback para a Receptora de Dados [18];
  5. A Receptora de Dados realiza uma chamada no endpoint GET /open-banking/resources/v2/resources do Brick Bank® com o access_token no header, para obter a lista de recursos do consentimento [19];
  6. O Brick Bank® recebe a requisição e realiza uma chamada no endpoint GET /open-banking/resources/v2/resources da Transmissora de Dados [20];
  7. A Transmissora de Dados retorna a lista de recursos do consentimento para o Brick Bank® [21];
  8. O Brick Bank® envia a lista de recursos para a Receptora de Dados [22];
  9. A Receptora de Dados inicia o consumo de dados e realiza uma chamada no Brick Bank® para receber um dado específico;
    1. Exemplo, GET /open-banking/customers/v2/personal/identifications com o access_token no header [23];
  10. O Brick Bank® recebe a requisição e realiza uma chamada no endpoint GET /open-banking/customers/v2/personal/identifications da Transmissora de Dados [24];
  11. O Transmissor de Dados recebe a requisição e retorna os dados solicitados para o Brick Bank® [25];
  12. O Brick Bank® recebe os dados e retorna para o Receptor de Dados [26];

Rejeição do compartilhamento

  1. O fluxo inicia com o usuário selecionando os dados que gostaria de trazer para o Receptor de Dados e seleciona qual instituição que irá transmitir os dados;
  2. O Receptor de Dados realiza uma chamada no endpoint /api/admin/data-reception/v1/consents do Brick Bank®;
  3. O Brick Bank® recebe a requisição e solicita o consentimento para o Transmissor de Dados;
    1. O consentimento é gerado e a URL de redirecionamento para o Transmissor de Dados é enviado para o Brick Bank®;
    2. O Brick Bank® envia a URL de redirecionamento para o Receptor de Dados;
  4. O usuário é notificado e redirecionado para o Transmissor de Dados;
    1. O usuário realiza o login no Transmissor de Dados;
    2. Verifica e aprova o consentimento no Transmissor de Dados;
  5. O usuário é redirecionado para o Receptor de Dados;
  6. O Receptor de Dados recebe todos os parâmetros de consentimento e realiza uma chamada no endpoint /api/admin/data-reception/v1/consents/callback;
    1. O token é gerado a partir do fluxo OpenID no Brick Bank® e é retornado para o Receptor de Dados;
  7. Durante o consumo de dados, é necessário realizar o processo de Refresh Token para renovar o token de acesso aos dados;
    1. O Transmissor de Dados retorna o token atualizado;
  8. O Receptor de Dados realiza uma requisição de consumo de dados;
    1. O Brick Bank® recebe a requisição e realiza a chamada no Transmissor de Dados;
    2. O Transmissor de Dados disponibiliza os dados solicitados;
    3. O Brick Bank® retorna os dados disponibilizados para o Receptor de Dados.

Renovação Simplificada