# My Belvo Portal O My Belvo Portal (MBP) permite que os usuários gerenciem os consentimentos que deram anteriormente a aplicativos (usando o produto OFDA da Belvo) para acessar seus dados na Rede de Open Finance. Conformidade de gerenciamento de consentimento Como parte das regulamentações para a Rede de Open Finance do Brasil, todas as pessoas físicas e jurídicas devem ser capazes de gerenciar os consentimentos que concederam a aplicativos que acessam seus dados pessoais. Consequentemente, seu aplicativo **deve** oferecer opções diretas e facilmente acessíveis para os usuários acessarem o My Belvo Portal. Isso pode ser alcançado vinculando diretamente à instância da Belvo ou integrando sua própria instância personalizada. ## Confirmar Identidade Antes que os usuários possam acessar suas informações de consentimento, eles precisarão confirmar sua identidade autenticando-se com uma instituição bancária com a qual possuem uma conta. ### Entrar Na tela de **Entrar**, o usuário precisa fornecer seu CPF (Pessoas Físicas) ou a combinação de CNPJ e CPF (Empresas). ### Seleção de Instituição Na tela de **Seleção de Instituição**, o usuário seleciona qual instituição deseja usar para autenticar-se. ### Revisar Solicitação de Consentimento de Autenticação Na tela de **Consentimento** de autenticação, o usuário pode revisar quais dados serão usados para autenticar (**Conferir resumo do consentimento**) assim como por quanto tempo o consentimento será válido (**Prazo de compartilhamento**). Por padrão, isso é definido para um dia e não pode ser alterado pelo usuário. ### Redirecionamento e Confirmação O usuário é então redirecionado para sua instituição e, uma vez que conceda seu consentimento na instituição, é redirecionado de volta para o widget. Agora eles podem acessar o My Belvo Portal clicando em **Acessar Meu Portal Belvo**. ## Verificando Consentimentos Uma vez no MBP, o usuário pode verificar seus consentimentos de Open Finance clicando em **Meus compartilhamentos**, selecionando o consentimento e, em seguida, visualizando os detalhes do consentimento. ## Opções de Hospedagem MBP Em sua aplicação, você pode direcionar seus usuários para gerenciar seus consentimentos de duas maneiras: - Usando a instância universal do MBP da Belvo. (**Recomendado**) - Iniciando uma instância do MBP que exibirá apenas os consentimentos que seus usuários deram à sua aplicação. ### MBP no Site da Belvo No site da Belvo, hospedamos uma instância universal do MBP que qualquer usuário pode usar para gerenciar seus consentimentos. Esta instância consolida todos os consentimentos que eles concederam usando o produto OFDA da Belvo. Em seu aplicativo, você pode direcionar seus usuários para a instância universal do MBP da Belvo usando este URL: `https://meuportal.belvo.com/`. Se você deseja que seus usuários vejam apenas os consentimentos que concederam ao seu aplicativo, veja MBP customized consent view. ### Visualização de consentimento personalizada do MBP Você pode personalizar o MBP para exibir apenas os consentimentos que seu usuário concedeu à sua aplicação, facilitando para eles o gerenciamento de seus consentimentos. Para criar um MBP personalizado que exiba apenas os consentimentos concedidos à sua aplicação: 1. Crie um `access_token` (Para indivíduos, você precisará fornecer os detalhes do CPF. Para empresas, são necessários os detalhes do CPF e CNPJ). Individual ```curl cURL Request curl -X POST \ https://sandbox.belvo.com/api/token/ \ -H 'Content-Type: application/json' \ -H 'Host: sandbox.belvo.com' \ -d 'Veja o exemplo de payload abaixo' ``` ```json JSON Payload para Usuários Individuais { "id": "{{secretId}}", "password": "{{secretPassword}}", "scopes": "read_consents,write_consents,write_consent_callback", "widget": { "openfinance_feature": "consent_management", "consent": { "terms_and_conditions_url": "url_to_your_terms_and_conditions", "permissions": ["REGISTER", "ACCOUNTS", "CREDIT_CARDS", "CREDIT_OPERATIONS"], "identification_info": [ { "type": "CPF", "number": "individual_cpf", "name": "individual_full_name" } ] } } } ``` Business ```curl cURL Request curl -X POST \ https://sandbox.belvo.com/api/token/ \ -H 'Content-Type: application/json' \ -H 'Host: sandbox.belvo.com' \ -d 'Veja o exemplo de payload abaixo' ``` ```json JSON Payload para Usuários Empresariais { "id": "{{secretId}}", "password": "{{secretPassword}}", "scopes": "read_consents,write_consents,write_consent_callback", "widget": { "openfinance_feature": "consent_management", "consent": { "terms_and_conditions_url": "url_to_your_terms_and_conditions", "permissions": ["REGISTER", "ACCOUNTS", "CREDIT_CARDS", "CREDIT_OPERATIONS"], "identification_info": [ { "type": "CPF", "number": "individual_cpf", "name": "individual_full_name" }, { "type": "CNPJ", "number": "business_cnpj", "name": "business_name" } ] } } } ``` 1. Adicione o `access_token` à URL do MBP: `https://meuportal.belvo.com/?access_token={accessToken}`. 2. Forneça ao seu usuário a URL gerada. ❇️ Feito! Assim que seu usuário fizer login no MBP, ele poderá gerenciar os consentimentos que concedeu à sua aplicação. ## Renovação de consentimento com o MBP O MBP também pode ser usado para renovar um consentimento expirado. A Belvo enviará um webhook quando o consentimento de um dos seus usuários expirar. Um exemplo de payload de webhook é o seguinte: ```json Exemplo de Webhook de Consentimento { "webhook_id": "e6f08793f967445fb74ce16beae665bc", "webhook_type": "CONSENT", "webhook_code": "consent_expired", "link_id": "3d3364b7-0175-483d-a58b-b471f251e533", "external_id": null, "data": { "consent_id": "29a54e55-21f0-4d02-8e34-797ab7d43940", "action": "renew", "institution": "ofmockbank_br_retail", "institution_display_name": "OF Mockbank", "institution_icon_logo": "https://logo.com" } } ``` | Campo | Descrição | | --- | --- | | `link_id` | O ID do link associado ao consentimento. | | `consent_id` | O ID do consentimento. | | `action` | Uma indicação da ação que você precisa realizar. Para webhooks `consent_expired`, isso é sempre definido como `renew`. | | `institution` | A instituição para a qual o usuário forneceu seu consentimento. | | `institution_display_name` | O nome de exibição da instituição. | | `institution_icon_logo` | A URL do logotipo da instituição. | Após receber o webhook, você pode configurar o MBP para o modo 'renovar consentimento' criando uma URL com as seguintes informações: ```text URL de Exemplo https://meuportal.belvo.com/ ?access_token={accessToken} &link_id={webhook_link_id} &consent_id={webhook_consent_id} &institution={webhook_institution} &institution_display_name={the_display_name_url_encoded} &institution_icon_logo={url_to_icon} &action=renew ``` | Campo de Consulta | Descrição | Exemplo | | --- | --- | --- | | `access_token` | Um `access_token` recém-gerado para o MBP. Para instruções sobre como criar um `access_token` para o MBP, consulte a seção MBP customized consent view. | N/A | | `link_id` | O `link_id` que você recebeu no evento de webhook `consent_expired`. | `link_id=6b94a043-9a96-4dd3-b889-30f4dcbd9608` | | `consent_id` | O `consent_id` que você recebeu no evento de webhook `consent_expired` (localizado no objeto `data`). | `consent_id=2c63f6a0-22ea-4edf-a15c-9c1c2f92a20d` | | `institution` | A `institution` que você recebeu no evento de webhook `consent_expired` (localizado no objeto `data`). | `institution=ofc_mockbank_br` | | `institution_display_name` | O `institution_display_name` (codificado em URL) que você recebeu no evento de webhook `consent_expired` (localizado no objeto `data`). | `institution_display_name=OF%20Mockbank` | | `institution_icon_logo` | A URL do `institution_icon_logo` que você recebeu no evento de webhook `consent_expired` (localizado no objeto `data`). | `institution_icon_logo=https://logo.com` | | `action` | A `action` no evento de webhook `consent_expired` (localizado no objeto `data`). Para webhooks `consent_expired`, essa ação será sempre `renew`. | `action=renew` | Direcionar seus usuários para esta URL os guiará automaticamente pelo processo de renovação de consentimento.