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:
- 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
- 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
- O usuário solicita o compartilhamento de seus dados via Open Finance junto à instituição Receptora de Dados [1];
- 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;
- O consentimento é criado com o status
AWAITING_AUTHORISATION
;
- O consentimento é criado com o status
- O Brick Bank® retorna para a Receptora de Dados a URL de redirecionamento para a Transmissora de Dados [3];
- Essa URL deve ser previamente configurada no Dev Tools pela Transmissora de Dados;
- A Receptora de Dados informa o usuário e o redireciona para a Transmissora de Dados [4];
- A Transmissora de Dados apresenta a tela de autenticação para o usuário [5];
- O usuário realiza a autenticação na Transmissora de Dados [6];
- A Transmissora de Dados captura o CPF/CNPJ do usuário/empresa e criptografa essa informação [7];
- A Transmissora de Dados realiza a chamada POST /{interactionId}/login e envia os dados criptografados do cliente no body da requisição [8];
- 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;
- A Transmissora de Dados deve disponibilizar uma API para descriptografar o CPF/CNPJ [9];
- 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;
- 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
- O usuário autoriza o consentimento de compartilhamento na Transmissora de Dados [13];
- A Transmissora de Dados realiza a chamada POST /{consent_interaction_id}/consent para aprovar o consentimento no Brick Bank® [14];
- O status do consentimento é alterado para
AUTHORISED
;
- O status do consentimento é alterado para
- O Brick Bank® retorna para a Transmissora de Dados a URL de redirecionamento para a Receptora de Dados [15];
- A Transmissora de Dados informa o usuário e o redireciona para a Receptora de Dados [16];
- A Receptora de Dados solicita o compartilhamento dos dados para o Brick Bank® [17];
- Para acessar os endpoints
- O Brick Bank® recebe a requisição e a encaminha à Transmissora de Dados [18];
- A Transmissora de Dados retorna um HTTP Status Code 201 com os dados do compartilhamento [19];
- O Brick Bank® retorna os dados do compartilhamento para a Receptora de Dados [20];
Rejeição do compartilhamento
- O usuário rejeita o consentimento de compartilhamento na Transmissora de Dados [22];
- A Transmissora de Dados rejeita o consentimento junto ao Brick Bank® via POST /interactionId/cancel [23];
- O status do consentimento é alterado para
REJECTED
;
- O status do consentimento é alterado para
- O Brick Bank® retorna para a Transmissora de Dados a URL de redirecionamento para a Receptora de Dados [24];
- A Transmissora de Dados informa o usuário e o redireciona para a Receptora de Dados [25].
Updated 10 months ago