;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Logo Pagbenk Seu dinheiro rende mais
Topo

Imposto de Renda 2021: Como declarar plano de previdência privada

Colaboração para o UOL, de São Paulo

10/03/2021 04h00

Os investimentos feitos em planos de previdência privada ao longo de 2020 devem ser informados pelo contribuinte na declaração do Imposto de Renda 2020. A forma como as informações serão prestadas à Receita depende do tipo de plano.

Veja quais são os procedimentos para declarar planos do tipo VGBL (Vida Gerador de Benefício Livre) e PGBL (Plano Gerador de Benefício Livre). Vale lembrar que as contribuições feitas em planos do tipo PGBL podem ser deduzidas da base de cálculo do Imposto de Renda até o limite de 12% da renda tributável.

Como declarar VGBL

As contribuições feitas em planos do tipo VGBL devem ser informadas na ficha de "Bens e Direitos". Clique em "novo" e selecione o código 97, referente a VGBL. Informe o CNPJ da instituição financeira responsável pelo plano. Na "discriminação", informe o valor total da contribuição feita no ano ado, conforme informado no informe enviado pela instituição financeira.

IR VGBL - Reprodução - Reprodução
Imagem: Reprodução

Por exemplo, se você tinha R$ 15 mil aplicados no fim de 2019 e investiu mais R$ 10 mil em 2020, coloque essa informação na "discriminação". Informe o valor de R$ 15 mil no campo "situação em 31/12/2019" e coloque R$ 25 mil (R$ 15 mil mais os R$ 10 mil investidos no ano ado) no campo "situação em 31/12/2020".

Os rendimentos obtidos com o plano ao longo do ano ado não devem ser declarados porque o investimento não foi resgatado.

Porém, se você fez um resgate parcial ou total do VGBL, informe na ficha de "Bens e Direitos", no campo "discriminação", que houve o resgate e o valor. No campo situação em 31/12/2020, informe o valor de 2019 menos o resgate (siga os valores que estão no informe de rendimentos), ou coloque zero para resgate total.

No caso de resgate ou recebimento de benefício, os rendimentos obtidos com o VGBL devem ser informados em outra ficha da declaração. Basta seguir as informações do informe de rendimentos fornecido pela instituição financeira.

Se o seu plano tem regime de tributação progressiva, o rendimento será informado na ficha "Rendimentos Tributáveis Recebidos de Pessoa Jurídica". Porém, se o regime de tributação do VGBL é regressivo, o rendimento entra na ficha "Rendimentos Sujeitos à Tributação Exclusiva".

Como declarar PGBL, Fapi ou fundo de pensão

As contribuições a planos de previdência privada do tipo PGBL, Fapi ou a entidades públicas fechadas de previdência complementar devem ser informadas na ficha "Pagamentos e Doações Efetuados".

Selecione o código de acordo com o tipo de plano: "36 - Previdência Complementar" para PGBL; "37 - Contribuições para as entidades de previdência complementar fechadas de natureza pública" ou "38 - Fundo de Aposentadoria Programada Individual" para Fapi .

IR PGBL - Reprodução - Reprodução
Imagem: Reprodução

O investimento em previdência privada somente poderá ser usado para dedução do Imposto de Renda se você optar pelo modelo completo de declaração. O próprio programa calcula o limite de 12% da renda permitido para essa dedução.

Se você resgatou o plano ou já está recebendo benefício, os valores retirados devem ser informados na declaração de acordo com o tipo de tributação.

Se o plano tiver tributação progressiva, os saques entrarão na ficha "Rendimentos Tributáveis Recebidos de Pessoa Jurídica". Para plano com tributação regressiva, informe as retiradas na ficha "Rendimentos Sujeitos à Tributação Exclusiva".

Lembre-se de seguir as informações conforme estão no informe de rendimentos fornecido pela instituição responsável pelo plano de previdência. Planos do tipo PGBL, Fapi ou de entidade pública de previdência complementar não devem ser informados na ficha de "Bens e Direitos".

UOL Economia+ fará evento para quem quer investir

Entre 23 e 25 de março, o UOL Economia+ e a casa de análises Levante Ideias de Investimento realizarão evento online gratuito.

O economista Felipe Bevilacqua, analista certificado e gestor especialista da Levante, comandará três grandes aulas para explicar ao leitor do UOL como assumir as rédeas do próprio dinheiro. O evento é gratuito para todos os leitores UOL.

Garanta o seu lugar no evento aqui:

Ao clicar em “Enviar”, você concorda com a Política de Privacidade do Grupo UOL e aceita receber e-mails de produtos e serviços do Grupo UOL e demais empresas integrantes de seu grupo econômico. O Grupo UOL utiliza as informações fornecidas para entrar em contato ofertando produtos e serviços. Você pode deixar de receber essas comunicações quando quiser.

O Imposto de Renda é uma declaração que deve ser realizada por pessoas e empresas à Receita Federal anualmente. No documento, devem ser relatados todos os rendimentos ganhos ao longo daquele período. Por meio da declaração, o governo analisa quais tributos já foram pagos pelo contribuinte e se o declarante deve receber restituição ou pagar algum valor de acordo com a tabela preestabelecida. Veja abaixo todas as notícias e informações sobre o Imposto de Renda 2025.