// ============================================================ // Monarch — Simulateurs : Plus-value immobilière (IS) · Cession de titres (holding) // Requiert window.MSC (simcore.jsx) et window.__mscShared (simulators2.jsx). // ============================================================ (function () { const { useState, useEffect } = React; const M = window.MSC; const { C, SERIF, BODY, fmt, pct, CountEuro, injectCore, useReveal, Eyebrow, Label, MoneyInput, Shell, InputsCard, Doctrine, Alert, CTAEmail, ProsCons } = M; function shared() { return window.__mscShared; } // abattement plus-value des particuliers (IR + PS) selon durée function abattementIR(d) { if (d <= 5) return 0; if (d >= 22) return 1; return Math.min(1, (Math.min(d, 21) - 5) * 0.06 + (d >= 22 ? 0.04 : 0)); } function abattementPS(d) { if (d <= 5) return 0; if (d >= 30) return 1; let a = 0; a += Math.max(0, Math.min(d, 21) - 5) * 0.0165; if (d >= 22) a += 0.016; if (d > 22) a += Math.min(d, 30) - 22 ? (Math.min(d, 30) - 22) * 0.09 : 0; return Math.min(1, a); } // ===================================================== // 9. PLUS-VALUE IMMOBILIÈRE — le piège de l'amortissement // ===================================================== function RealEstateCapitalGainSimulator() { useEffect(injectCore, []); const { ParamRecap } = shared(); const [achat, setAchat] = useState(500000); const [revente, setRevente] = useState(800000); const [duree, setDuree] = useState(15); const [done, setDone] = useState(false); const [busy, setBusy] = useState(false); const reveal = useReveal(done, 250); const P = Math.max(0, Number(achat) || 0); const R = Math.max(0, Number(revente) || 0); const D = Math.max(1, Math.min(40, Number(duree) || 1)); const pvBrute = Math.max(0, R - P); // Particulier / SCI IR const baseIR = pvBrute * (1 - abattementIR(D)); const basePS = pvBrute * (1 - abattementPS(D)); const impotParticulier = baseIR * 0.19 + basePS * 0.172; // IS : amortissement ~3 %/an plafonné à 100 % const tauxAmort = Math.min(1, 0.03 * D); const vnc = P * (1 - tauxAmort); const baseIS = Math.max(0, R - vnc); const impotIS = (baseIS <= 42500 ? baseIS * 0.15 : 42500 * 0.15 + (baseIS - 42500) * 0.25); const go = () => { setBusy(true); setDone(false); setTimeout(() => { setBusy(false); setDone(true); }, 700); }; const maxBase = Math.max(baseIR, basePS, baseIS, 1); return ( {!done &&
{D} ans
setDuree(Number(e.target.value))} style={{ width: "100%", marginTop: 8, accentColor: C.sauge }} />
} {done &&
setDone(false)} />
Deux impôts qui évoluent en sens inverse

Deux assiettes en sens inverse

VNC ≈ {fmt(vnc)} (amortissement {Math.round(tauxAmort * 100)} %). Base IS = revente − VNC = {fmt(baseIS)}. Calcul indicatif (taux réduit 19 % sur l'immobilier non retenu).

L'IS est un formidable outil de capitalisation immobilière, mais un désastre à la revente. La majorité des SCI à l'IS sont créées sans stratégie de sortie. L'ingénierie du cabinet anticipe cette friction dès l'acquisition (OBO immobilier, dissociation des flux, calendrier de cession) pour éviter l'impasse fiscale lors de la liquidation de l'actif.

}
); } function ViseRow({ label, sub, taxLabel, tax, base, max, run, color, danger }) { const [w, setW] = useState(false); useEffect(() => { if (run) { const id = setTimeout(() => setW(true), 80); return () => clearTimeout(id); } else setW(false); }, [run]); return (
{label}
{sub} · base {fmt(base)} {taxLabel}
); } // ===================================================== // 10. CESSION DE TITRES — puissance de la holding // ===================================================== function SecuritiesCapitalGainSimulator() { useEffect(injectCore, []); const { ParamRecap } = shared(); const [acq, setAcq] = useState(10000); const [cession, setCession] = useState(3000000); const [done, setDone] = useState(false); const [busy, setBusy] = useState(false); const reveal = useReveal(done, 250); const A = Math.max(0, Number(acq) || 0); const V = Math.max(0, Number(cession) || 0); const pv = Math.max(0, V - A); const flat = pv * 0.314; const resteDirect = V - flat; const qpfc = pv * 0.12 * 0.25; // 12 % réintégrés, taxés IS 25 % ≈ 3 % const resteHolding = V - qpfc; const tauxEff = pv > 0 ? (qpfc / pv) * 100 : 0; const go = () => { setBusy(true); setDone(false); setTimeout(() => { setBusy(false); setDone(true); }, 700); }; return ( {!done &&
} {done &&
setDone(false)} />

Beaucoup confondent ce mécanisme avec l'apport-cession (150-0 B ter), qui contraint vos réinvestissements pendant 24 mois. Vendre une filiale que votre holding détient depuis plus de deux ans vous offre une liberté totale d'allocation du capital, avec un taux effectif d'environ 3 %. L'organisation précoce de votre groupe sanctuarise le fruit de votre travail futur.

}
); } function Reservoir({ tone, title, eyebrow, reste, perte, base, reveal, lossLabel, resteLabel, good }) { const leak = tone === "leak"; const fillH = pct(reste, base); // % conservé return (
{eyebrow}

{title}

{resteLabel}
{lossLabel}
); } window.RealEstateCapitalGainSimulator = RealEstateCapitalGainSimulator; window.SecuritiesCapitalGainSimulator = SecuritiesCapitalGainSimulator; })();