Fluxos de integração

Entenda como funciona o fluxo de compartilhamento e suas integrações como Transmissora de Dados.

Realizar compartilhamento de dados

O fluxo abaixo representa a interação de qualquer receptora com uma transmissora de dados integrada ao Brick Bank® para o compartilhamento de dados. Perceba que:

  1. toda a comunicação com o ecossistema é feita através da plataforma Brick Bank®, abstraindo toda a camada de segurança e validação de consentimento; e
  2. qualquer acesso aos dados deverá ser viabilizado pela própria transmissora, uma vez que os dados pertencem à instituição e não estão armazenados no Brick Bank®.

Criação do consentimento

  1. O usuário solicita o compartilhamento de seus dados via Open Finance junto à instituição Receptora de Dados [1];
  2. A instituição Receptora de Dados realiza uma solicitação de consentimento ao Brick Bank® [2], o qual realiza todas as validações de segurança e de autorização para a Transmissora de Dados e cria o consentimento;
    1. O consentimento é criado com o status AWAITING_AUTHORISATION;
  3. O Brick Bank® retorna para a Receptora de Dados a URL de redirecionamento para a Transmissora de Dados [3];
    1. Essa URL deve ser previamente configurada no Dev Tools pela Transmissora de Dados;
  4. A Receptora de Dados informa o usuário e o redireciona para a Transmissora de Dados [4];
  5. A Transmissora de Dados apresenta a tela de autenticação para o usuário [5];
  6. O usuário realiza a autenticação na Transmissora de Dados [6];
  7. A Transmissora de Dados captura o CPF/CNPJ do usuário/empresa e criptografa essa informação [7];
  8. A Transmissora de Dados realiza a chamada POST /{interactionId}/login e envia os dados criptografados do cliente no body da requisição [8];
  9. O Brick Bank® recebe a requisição e realiza uma consulta para verificar se os dados do consentimento pertencem ao usuário recém autenticado;
    1. A Transmissora de Dados deve disponibilizar uma API para descriptografar o CPF/CNPJ [9];
    2. Em caso de divergência entre os dados do consentimento e os dados do login, o Brick Bank® realiza uma trava de segurança para que o consentimento não seja aprovado por um usuário indevido;
  10. O Brick Bank® retorna todos os dados do consentimento para a Transmissora de Dados [11] para que ela monte a tela de autorização [12];

Autorização do compartilhamento

  1. O usuário autoriza o consentimento de compartilhamento na Transmissora de Dados [13];
  2. A Transmissora de Dados realiza a chamada POST /{consent_interaction_id}/consent para aprovar o consentimento no Brick Bank® [14];
    1. O status do consentimento é alterado para AUTHORISED;
  3. O Brick Bank® retorna para a Transmissora de Dados a URL de redirecionamento para a Receptora de Dados [15];
  4. A Transmissora de Dados informa o usuário e o redireciona para a Receptora de Dados [16];
  5. A Receptora de Dados solicita o compartilhamento dos dados para o Brick Bank® [17];
    1. Para acessar os endpoints
  6. O Brick Bank® recebe a requisição e a encaminha à Transmissora de Dados [18];
  7. A Transmissora de Dados retorna um HTTP Status Code 201 com os dados do compartilhamento [19];
  8. O Brick Bank® retorna os dados do compartilhamento para a Receptora de Dados [20];

Rejeição do compartilhamento

  1. O usuário rejeita o consentimento de compartilhamento na Transmissora de Dados [22];
  2. A Transmissora de Dados rejeita o consentimento junto ao Brick Bank® via POST /interactionId/cancel [23];
    1. O status do consentimento é alterado para REJECTED;
  3. O Brick Bank® retorna para a Transmissora de Dados a URL de redirecionamento para a Receptora de Dados [24];
  4. A Transmissora de Dados informa o usuário e o redireciona para a Receptora de Dados [25].