Jornada Sem Redirecionamento (JSR)
O fluxo abaixo representa a interação de uma ITP integrada ao Brick Bank® com qualquer detentora de contas para o vínculo de conta e pagamento sem redirecionamento.
Vínculo de Dispositivo
- O usuário solicita o vínculo de conta via Open Finance junto à instituição Iniciadora de Pagamentos [1] e seleciona a instituição Detentora de Contas para selecionar e vincular a conta em seu dispositivo;
- A instituição Iniciadora de Pagamentos realiza uma solicitação de vínculo ao Brick Bank® [2] através do endpoint POST /api/admin/payment-initiation/v1/enrollments com os dados de vínculo de conta no body da requisição;
- O Brick Bank® recebe a requisição, valida o body e realiza uma requisição para a Detentora de Contas criar o vínculo de dispositivo (enrollmentId). [3];
- O vínculo é criado com o status AWAITING_RISK_SIGNAL [4];
- O Brick Bank® recebe as informações de vínculo de dispositivo e retorna os dados para a Iniciadora de Pagamentos [5];
- A instituição Iniciadora de Pagamentos envia os sinais de riscos do dispositivo através do endpoint POST /api/enrollments/{enrollmentId}/risk-signals [6];
- O Brick Bank recebe os parâmetros de sinais de riscos e envia para a Detentora de Contas [7];
- O status do vínculo altera para AWAITING_HOLDER_VALIDATION;
- A Detentora de Contas envia os dados de sinais de riscos recebidos para o Brick Bank [8];
- O Brick Bank retorna as informações de sinais de riscos para a Iniciadora de Pagamentos [9];
- A Iniciadora de Pagamentos informa o usuário e o redireciona para a Detentora de Contas para realizar a autenticação [10];
- O usuário faz a autenticação e em seguida, a Detentora de Contas apresenta a tela de informações de vínculo de dispositivo [11];
Autorização do Vínculo
- O usuário autoriza o vínculo na Detentora de Contas [12];
- O status do vínculo altera para AWAITING_ENROLLMENT;
- A Detentora de Contas redireciona o usuário para a Iniciadora de Pagamentos [13];
- A Iniciadora de Pagamentos notifica o usuário que o vínculo foi concluído com sucesso;
- A Iniciadora de Pagamentos solicita o token de callback para o Brick Bank® através do endpoint POST /api/admin/payment-initiation/v1/enrollments/callback [14];
- O Brick Bank solicita o token de callback para a Detentora de Contas [15] que retorna o token gerado para o Brick Bank [16];
- O Brick Bank retorna o token de callback para a Iniciadora de Pagamentos [17];
- A Iniciadora de Pagamentos faz a busca de criação de chave através do endpoint POST /enrollments/{enrollmentId}/fido-registration-options [18];
- O Brick Bank faz a busca de parâmetros de criação de chave para a Detentora de Contas [19];
- A Detentora de Conta retorna os parâmetros [20];
- O Brick Bank recebe os parâmetros e retorna para a Iniciadora de Pagamentos [21];
- A Iniciadora de Pagamentos solicita um gesto para o usuário realizar a autenticação (biometria, FaceID, PIN, etc) [22];
- O usuário realiza o gesto de sua preferência [23];
- A Iniciadora de Pagamentos cria a credencial [24] e envia os dados da credencial gerada para o Brick Bank através do endpoint POST /enrollments/{enrollmentId}/fido-registration} [25];
- O Brick Bank® recebe os dados da credencial e envia para a Detentora de Contas [26];
- A Detentora de Contas recebe os dados da credencial, valida e armazena [27];
- O status do vínculo altera para AUTHORISED;
- A Detentora de Contas retorna para o Brick Bank® o HTTP 204 No Content para sinalizar que a solicitação foi realizada com sucesso [28];
- O Brick Bank® retorna para a Iniciadora de Pagamentos o HTTP 204 No Content para sinalizar que a solicitação foi realizada com sucesso [29];
- A Iniciadora de Pagamentos sinaliza ao usuário que o vínculo de conta foi realizado com sucesso [30];
Efetivação do Pagamento
- O usuário realiza um pagamento sem redirecionamento na Iniciadora de Pagamentos [31];
- A Iniciadora de Pagamentos obtém os parâmetros de autenticação através da chamada na API (POST {enrollmentId}/fido-sign-options) para o Brick Bank® [32];
- O Brick Bank® recebe a requisição e consulta os parâmetros na Detentora de Contas [33] que retorna os parâmetros para o Brick Bank® [34];
- O Brick Bank® recebe os parâmetros e retorna para a Iniciadora de Pagamentos [35];
- A Iniciadora de Pagamentos solicita o gesto do usuário para aprovar o pagamento [36];
- O usuário autentica através dos parâmetros definidos e aprova o pagamento [37];
- A Iniciadora de Pagamentos recebe o gesto do usuário e aprova o pagamento para o Brick Bank® através da chamada (POST /consent) [38];
- O Brick Bank® recebe a autorização do pagamento e chama o Detentor de Contas através do POST /{consentId}/authorise, que retorna todas as informações de autorização do pagamento [39];
- A Detentora de Contas autoriza o pagamento e retorna todas as informações de autorização para o Brick Bank® [40];
- O Brick Bank® retorna todas as informações de autorização do pagamento para a Iniciadora de Pagamento [41];
- A Iniciadora de Pagamentos apresenta a tela de efetivação do pagamento [42].
Updated 2 months ago