← Todos os artigos

Consentimento no Open Finance: o que diz a regulação e como desenhar uma jornada que converte

O que a Resolução Conjunta nº 1 exige do consentimento no Open Finance, o que mudou com a Resolução Conjunta nº 7 e boas práticas de UX para aumentar a taxa de conexão com segurança.

Equipe Malvo ·

Atualizado em

Sem consentimento, nenhum dado de cliente circula no Open Finance. E um fluxo de consentimento mal desenhado derruba a taxa de conexão do seu produto. Por isso vale tratar o tema em duas frentes: o que a regulação exige e como transformar essa exigência numa experiência que o usuário conclua.

O que diz a regulação

A Resolução Conjunta nº 1/2020 disciplina o Open Finance e divide a solicitação de compartilhamento em três etapas: consentimento, autenticação e confirmação. Pelo art. 8º, elas acontecem exclusivamente por canais eletrônicos, de forma sucessiva e ininterrupta, com segurança, agilidade, precisão e conveniência.

O art. 10 diz que o consentimento deve:

  • ser solicitado em linguagem clara, objetiva e adequada;
  • referir-se a finalidades determinadas;
  • ter prazo de validade compatível com essas finalidades;
  • discriminar a instituição transmissora e os dados que serão compartilhados;
  • incluir a identificação do cliente.

Sobre o prazo, um detalhe que confunde muita gente. A redação original limitava a validade a doze meses. A Resolução Conjunta nº 7, de 26/10/2023, mudou o texto para "prazo de validade compatível com as finalidades" (veja o texto consolidado). Muito conteúdo antigo ainda cita o limite de 12 meses, então confira sempre a versão vigente da norma.

A mesma resolução proíbe obter consentimento por contrato de adesão, por formulário com aceite já marcado ou de forma presumida, sem manifestação ativa do cliente.

A jornada do usuário

O FAQ do Open Finance Brasil descreve o fluxo do ponto de vista do cliente:

  1. Ele se identifica e dá o consentimento no canal da instituição que vai receber os dados, ou seja, no seu produto.
  2. É redirecionado para a instituição que detém os dados, onde autentica a identidade e confirma o compartilhamento.
  3. Volta ao ambiente de origem, que informa que o compartilhamento foi efetivado.

Cada troca de tela é um ponto em que o usuário pode desistir. O desenho da experiência pesa tanto quanto a integração técnica.

Boas práticas de UX para mais conexões concluídas

Explique o porquê antes de abrir o fluxo

Diga em uma frase o que o usuário ganha ao conectar a conta, por exemplo: "Conecte sua conta para importar o extrato automaticamente e parar de enviar planilhas". Finalidade clara é exigência da norma e também o melhor argumento que você tem.

Peça só o necessário

Um produto de conciliação provavelmente precisa de contas e transações, e não de investimentos. Com escopo menor, a tela de consentimento fica mais simples e o pedido parece mais razoável.

Avise sobre o redirecionamento

Conte ao usuário que ele vai para o aplicativo ou site do banco e depois volta. Quem não espera o redirecionamento tende a achar que algo quebrou.

Não confie só no retorno do navegador

O usuário pode fechar a aba antes de voltar ao seu produto. Por isso, na Malvo, o callback de sucesso do widget é best-effort, e a fonte da verdade sobre a conexão são os webhooks. Atualize o estado da conexão a partir dos eventos do servidor, não apenas do que acontece no navegador.

Mostre o estado da conexão

Exiba qual banco está conectado, desde quando e quando os dados foram atualizados pela última vez. Essa transparência reduz chamados de suporte.

Facilite revogar e renovar

O cliente pode revogar o consentimento quando quiser. Dê a ele um caminho claro para isso dentro do produto. Quando o consentimento estiver perto de expirar, ofereça a renovação de forma simples.

Renovar sem perder o histórico

Um erro comum acontece quando o consentimento expira: a aplicação cria uma conexão nova e perde o vínculo com os dados anteriores. Na Malvo, a renovação é feita no mesmo Item. O histórico continua lá, e contas e transações não aparecem duplicadas no seu banco de dados.

Checklist de conformidade e experiência

  • A finalidade está descrita em linguagem simples?
  • Os dados pedidos se limitam ao que essa finalidade exige?
  • Nenhuma caixa de aceite vem marcada por padrão?
  • O usuário sabe que será redirecionado ao banco?
  • O estado da conexão é atualizado por webhook?
  • Existe uma tela de gestão de conexões com opção de revogar?
  • Existe fluxo de renovação antes do vencimento?

O que fica no servidor

Credenciais da API nunca devem chegar ao frontend. O padrão recomendado funciona assim: o backend se autentica com client ID e secret e gera um token de conexão de curta duração. Só esse token vai para o navegador, para abrir o widget. Toda leitura de dados acontece de servidor para servidor.

Conformidade que também converte

Um fluxo de consentimento bem feito atende à regulação e, ao mesmo tempo, aumenta a taxa de conexão. O usuário que entende a finalidade, vê um pedido enxuto e encontra o estado da conexão atualizado tem motivo para confiar e chegar até o fim.

O Connect Widget da Malvo já traz essa jornada pronta. Ele é hospedado, funciona com React, React Native, Flutter e script global, usa webhooks como fonte da verdade e renova o consentimento no mesmo Item. Veja como integrar o Connect Widget.