;(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

Dúvidas do IR 2018


Dúvidas do IR 2018

IR 2018: Como declarar o salário de empregado doméstico

Getty Images/iStockphoto
Imagem: Getty Images/iStockphoto

11/04/2018 14h08

Quem possui empregado doméstico pode descontar do Imposto de Renda 2018 as contribuições pagas para a Previdência Social dele. Não confunda com o salário pago ao empregado, que não é dedutível do IR e não precisa ser informado na sua declaração.

A chamada contribuição patronal ao INSS do empregado doméstico pode ser abatida do IR do patrão até o limite de R$ 1.171,84.

Esse valor engloba a alíquota de 8% de INSS recolhida pelo empregador, mais 0,8% a título de Seguro para Acidente de Trabalho (também chamado de Risco de Acidente de Trabalho – RAT) e já considera os pagamentos de 13º salário e adicional de férias. Se você recolheu INSS acima desse valor para seu empregado doméstico em 2017, o programa do IR irá abater seu imposto apenas até o limite permitido.

Para informar a contribuição ao INSS do empregado doméstico no IR 2018, abra a ficha “Pagamentos efetuados”, clique em “Novo” e selecione o código 50.

É preciso informar nome do empregado, F e o Número de Inscrição do Trabalhador (NIT) ou o Número do Programa de Integração Social (PIS). Você só pode deduzir o INSS de um empregado na sua declaração.

Se você tem dois ou mais empregados em casa, mas há outras pessoas que declaram IR, como seu cônjuge ou seu filho, eles podem usar os dados dos demais empregados para abater o IR nas respectivas declarações, respeitando o limite de um empregado por declaração. O mesmo empregado não pode aparecer em duas declarações diferentes.

Quem utiliza os serviços de diarista ou faxineira não pode colocá-las no IR. O desconto é válido apenas para o recolhimento de INSS de empregado doméstico com carteira registrada, ou seja, que trabalha de forma permanente na sua residência. A faxineira ou diarista não possui vínculo empregatício, é uma profissional autônoma.

Leia também:

IR 2018: Posso deduzir gastos com remédios na declaração do imposto?

UOL Notícias

Dúvidas do IR 2018

Dúvidas do IR 2018