Motor de Consentimento

Aqui você encontra um mapeamento de parte da infraestrutura do ambiente Open Finance: o Motor de Consentimento, cujas APIs são responsáveis por gerir o consentimento do cliente para as integrações possíveis. Suas funcionalidades são:

  • criar Consentimento;

  • validar um Consentimento;

  • atualizar os aprovadores do Consentimento;

  • atualizar as permissões do Consentimento;

  • autorizar um Consentimento;

  • rejeitar um Consentimento;

  • revogar um Consentimento;

  • atualizar os recursos de um Consentimento.

Especificações oficiais do BACEN para o Motor de Consentimento.

O Open Finance Brasil especifica dois grupos de instituições que podem participar do ecossistema de integração:

  • Instituições Transmissoras - Provedores de serviços de pagamento de manutenção de contas (ASPSP): Uma ASPSP é qualquer instituição financeira que oferece uma conta de pagamento com acesso online. As ASPSPs devem fornecer acesso para permitir que terceiros (TPP) registrados acessem as informações da conta através de APIs.

  • Instituições Provedoras - Provedores terceirizados (TPP): As instituições provedoras são organizações que usam APIs desenvolvidas pelas ASPSP para acessar contas de clientes, a fim de fornecer serviços de informações de contas.

Jornada de Consentimento TPP

As APIs da Jornada de Consentimento TPP são utilizadas pelas Instituições Financeiras (IFs) para realizar um pedido de consentimento em nome do usuário em outra IF. O Open Finance exige que as IFs se integrem, e essas APIs abstraem a complexidade dessa integração.

Jornada de Consentimento ASPSP

As APIs da Jornada de Consentimento ASPSP permitem que a Instituição Financeira (IF) receba pedidos de consentimento e consumo de dados de outras IFs. Além disso, elas facilitam a integração da jornada do cliente para aprovação de consentimento e também aprovações em múltiplas alçadas.

Interceptores

Para expor suas APIs de Open Finance para consumo, você precisa adicionar interceptores específicos que realizam validações e tarefas fundamentais no contexto de Open Finance. Nós oferecemos interceptores personalizados (custom interceptors) prontos no Admin Portal. [em construção]

Os interceptores para Open Finance são:

  • Access Token Authorization;

  • Certificate Extractor;

  • Update Location;

  • Consent Validation;

  • Signature Validation;

  • Permission Validation.

Access Token Authorization

Este interceptor é necessário para todas as APIs que serão expostas e que são relacionadas ao Open Finance. O Access Token Authorization faz a validação do access token informado na requisição.

Certificate Extractor

Como o próprio nome diz, o Certificate Extrator extrai o certificado que chega e o repassa adiante. Essa extração acontece para que o certificado possa ser interpretado, de modo que os vínculos e devidas validações sejam feitos.

Update Location

As requisições que chegam passam primeiro pelo API Gateway antes de chegar ao Authorization Server. O Authorization Server então faz redirecionamentos internos, criando domínios para as chamadas internas. O Update Location atualiza os endereços desses domínios para que possam ser vistos por quem fez a requisição.

O Consent Validation Interceptor é usado em conjunto com o Permissions Validation Interceptor para certificar que o consentimento criado pelo usuário na ASPSP e as permissions da API que vai ser acessada atendam o agrupamento definido pelo Open Finance Brasil.

Signature Validation

Interceptor usado no fluxo de iniciação de pagamento para validar mensagens JWS enviadas pela instituição iniciadora. Esse interceptor pode ser usado no fluxo de requisição e de resposta da API sendo responsável por validar o payload, assinar e codificar em base64.

Permissions Validation

Esse interceptor é usado para validar o agrupamento de permissons definido pelo Open Finance Brasil para acesso aos recursos do cliente na instituição ASPSP. Após a configuração desse interceptor, a API estará pronta pra validar se o consentimento contém as permissions necessárias para acesso ao recurso. Cada interceptor deve conter as permissions estritamente necessárias para o acesso do recurso específico.

Links úteis:

Thanks for your feedback!
EDIT
How useful was this article to you?