Betriebseinnahmen
€0
Gesamt im Jahr
Betriebsausgaben
€0
Abzugsfähig
Gewinn (EÜR)
€0
Betriebseinnahmen − Betriebsausgaben
Verbleibend nach Steuern
€0
Geschätzter Nettobetrag
Kleinunternehmer-Umsatzgrenze 2026
Lfd. Umsatz0%
€0€25.000 (Vorjahresgrenze)€100.000
Einnahmen-Überschuss-Rechnung
Made by gik studio
'; const w=window.open('','_blank'); w.document.write(html); w.document.close();w.focus();setTimeout(()=>w.print(),400); } function exportEURtxt(){ const year=$('s-year').value; const income=getTotalIncome(); const ausgaben=parseFloat($('i-ausgaben').value)||0; const homeoffice=Math.min(parseFloat($('i-homeoffice').value)||0,1260); const bewirtungRaw=parseFloat($('i-bewirtung').value)||0; const bewirtungAbzug=bewirtungRaw*0.7; const totalAusg=ausgaben+homeoffice+bewirtungAbzug; const gewinn=Math.max(0,income-totalAusg); const sep='='.repeat(40); const t=T[lang]; let txt='EÜR '+year+'\n'+sep+'\n\n'; txt+=t.txtInc+'\n'; txt+=' '+t.txtRev+': '+fmtDec(income)+'\n'; txt+=t.txtSum+': '+fmtDec(income)+'\n\n'; txt+=t.txtExp+'\n'; txt+=' '+t.txtGen+': '+fmtDec(ausgaben)+'\n'; if(homeoffice>0) txt+=' '+t.txtHo+': '+fmtDec(homeoffice)+'\n'; if(bewirtungRaw>0) txt+=' '+t.txtBew+': '+fmtDec(bewirtungAbzug)+'\n'; txt+=t.txtSum+': '+fmtDec(totalAusg)+'\n\n'; txt+=sep+'\n'; txt+=t.txtProf+': '+fmtDec(gewinn)+'\n\n'; txt+=t.txtFoot; const a=document.createElement('a'); a.href='data:text/plain;charset=utf-8,'+encodeURIComponent(txt); a.download='eur-'+year+'.txt';a.click(); } // ── Autocomplete ────────────────────────────────────────────────────────── function acLoad(k){try{return JSON.parse(localStorage.getItem(k)||'[]');}catch(e){return[];}} function acSave(k,v){ if(!v||v.trim().length<2)return; const t=v.trim(),list=acLoad(k),ix=list.indexOf(t); if(ix>-1)list.splice(ix,1); list.unshift(t); if(list.length>30)list.length=30; try{localStorage.setItem(k,JSON.stringify(list));}catch(e){} } function initAC(id,k){ const inp=document.getElementById(id); if(!inp)return; const wrap=document.createElement('div'); wrap.className='ac-wrap'; inp.parentNode.insertBefore(wrap,inp); wrap.appendChild(inp); const dd=document.createElement('div'); dd.className='ac-dropdown'; wrap.appendChild(dd); let ai=-1,cur=[]; function showAC(q){ cur=acLoad(k).filter(v=>v.toLowerCase().includes(q.toLowerCase())).slice(0,8); if(!cur.length||q.length<2){dd.style.display='none';return;} dd.innerHTML=cur.map(v=>`
${v.replace(/&/g,'&').replace(/`).join(''); dd.style.display='block';ai=-1; Array.from(dd.children).forEach((el,i)=>{ el.addEventListener('mousedown',ev=>{ev.preventDefault();inp.value=cur[i];dd.style.display='none';inp.dispatchEvent(new Event('input',{bubbles:true}));inp.dispatchEvent(new Event('change',{bubbles:true}));}); }); } inp.addEventListener('input',function(){showAC(this.value.trim());}); inp.addEventListener('focus',function(){if(this.value.trim().length>=2)showAC(this.value.trim());}); inp.addEventListener('blur',()=>setTimeout(()=>{dd.style.display='none';},150)); inp.addEventListener('keydown',function(e){ const its=Array.from(dd.children); if(dd.style.display==='none'||!its.length)return; if(e.key==='ArrowDown'){e.preventDefault();ai=Math.min(ai+1,its.length-1);} else if(e.key==='ArrowUp'){e.preventDefault();ai=Math.max(ai-1,-1);} else if(e.key==='Enter'&&ai>=0){e.preventDefault();inp.value=cur[ai];dd.style.display='none';inp.dispatchEvent(new Event('input',{bubbles:true}));inp.dispatchEvent(new Event('change',{bubbles:true}));return;} else if(e.key==='Escape'){dd.style.display='none';return;} its.forEach((el,i)=>el.className='ac-item'+(i===ai?' ac-active':'')); }); } // ── Init ────────────────────────────────────────────────────────────────── $('inc-date').value=new Date().toISOString().split('T')[0]; renderIncomeLog(); onRechtsformChange(); calc(); initAC('inc-desc','eur-ac-desc'); window.toggleSidebar = function() { const layout = document.querySelector('.layout'); layout.classList.toggle('collapsed'); localStorage.setItem('rechnio_sidebar_collapsed', layout.classList.contains('collapsed')); }; if(localStorage.getItem('rechnio_sidebar_collapsed')==='true'){ document.querySelector('.layout').classList.add('collapsed'); } // Global Sync: Theme & Language (function() { const savedLang = localStorage.getItem('rechnio_lang'); if (savedLang && savedLang !== lang) setLang(savedLang); const savedTheme = localStorage.getItem('rechnio_theme'); if (savedTheme === 'dark') { document.body.classList.add('dark'); document.getElementById('theme-btn').textContent = '☀️'; dark = true; } })();

Toolkit-Einstellungen

Globales Profil synchronisieren Teile Name, Adresse und IBAN zwischen deinen Tools.
Verbundene Tools