Simulateur Trajectoire FI

Dernière mise à jour des specs publiées :

Spécifications Fonctionnelles - Revenus Salariés et Carrière

Ce document décrit les revenus d'activité salariée du Principal et de son conjoint pendant la phase d'accumulation. Les revenus issus du freelance sont décrits dans freelance.mdnon publie dans ce lot, et les pensions dans retraite.md.


💶 1. Salaire net avant impôt

À partir du salaire brut annuel, on calcule un net avant impôt via un taux de conversion dépendant du statut :

Le revenu imposable correspondant (assiette de l'IR) applique ensuite l'abattement forfaitaire de 10 % décrit dans fiscalite.md §2.1 : $$\text{Revenu Imposable} = \text{Net avant IR} \times 0,90$$


📈 2. Croissance de carrière (salaire brut du Principal)

Le salaire brut du Principal évolue avec un taux de croissance réel unique $g_p$ (croissance_principal), appliqué chaque année depuis l'âge actuel. Soit $A_{\text{actuel}}$ son âge actuel, $S_0$ son revenu brut de départ (revenu_brut_principal) et $y = \max(0,\ A - A_{\text{actuel}})$ le nombre d'années écoulées :

$$S_P(y) = S_0 \times (1 + g_p)^y$$

Le taux $g_p$ est un taux réel (net d'inflation), par défaut $2\,\%$. Avec $g_p = 0$, le revenu du Principal reste constant sur toute la carrière.

Les anciens paramètres croissance_phase1, croissance_phase2 et croissance_phase3 ne structurent plus le calcul courant. Un scénario legacy qui les contient encore est migré vers croissance_principal par composition équivalente sur 10 ans :

$$g_p = \left((1+g_1)^2 \times (1+g_2)^5 \times (1+g_3)^3\right)^{1/10} - 1$$

Si une phase legacy manque, on utilise les anciens défauts de cette phase avant composition : g1 = 0,03, g2 = 0,03, g3 = 0,01. Les anciens pourcentages stockés en points (-2 pour -2 %, 3,5 pour 3,5 %) sont normalisés avant cette composition.


👫 3. Revenu du conjoint

Si conjoint_present = NON, le conjoint est absent du modèle : son revenu d'activité vaut toujours $0\ €$, conjoint_arrete et age_arret_conjoint sont inertes, et les valeurs saisies dans les champs conjoint sont conservées uniquement pour un éventuel retour à conjoint_present = OUI.

Le salaire brut du conjoint évolue à un taux de croissance réel unique constant $g_c$ (croissance_conjoint), appliqué chaque année depuis l'âge actuel. Soit $A_{\text{actuel}}$ l'âge actuel, $B_0$ le revenu brut de départ (revenu_brut_conjoint) et $y = \max(0,\ A - A_{\text{actuel}})$ le nombre d'années écoulées : $$\text{Brut Conjoint}(y) = B_0 \times (1 + g_c)^{y}$$

Le taux $g_c$ est un taux réel (net d'inflation), par défaut $2\,\%$. Avec $g_c = 0$, le revenu du conjoint reste constant sur toute la carrière.


🔀 4. Règles d'activité et d'arrêt

Pour chaque âge $A$ de la projection :

4.1 Principal

Vocabulaire — « arrêt » avec Barista. Quand le Barista est actif, $A_{\text{arrêt}}$ désigne l'arrêt de la carrière principale, pas l'arrêt de toute activité rémunérée (cf. projection.md §1.1non publie dans ce lot).

4.2 Conjoint



5. ARE de transition (allocation chômage)

Le Livret rationnel utilise une estimation de l'Allocation d'aide au retour à l'emploi (ARE) pour dimensionner le tampon de transition professionnelle. Cette estimation est une approximation déterministe dérivée du salaire brut annuel du Principal, et non un revenu ajouté à la projection.

Source réglementaire : France Travail, page « Comment est calculé le montant de mon allocation ? », règles affichées le 2026-06-05 : https://www.francetravail.fr/candidat/mes-droits-aux-aides-et-allocati/lessentiel-a-savoir-sur-lallocat/quelle-somme-vais-je-recevoir/comment-est-calcule-le-montant-d.html.

5.1 Salaire journalier de référence simplifié

Le modèle ne dispose pas du dossier France Travail complet. On retient donc l'hypothèse simple d'une année pleine de salaire :

$$SJR = \frac{\text{Salaire brut annuel de référence}}{365}$$

Pour l'année d'âge $A$, le salaire brut de référence est le salaire brut du Principal calculé par le taux unique du §2, c'est-à-dire calcPrincipalGrossSalary(params, A).

5.2 Allocation journalière brute

France Travail calcule deux montants et retient le plus élevé :

$$ARE_{1} = 40{,}4\% \times SJR + 13{,}18$$ $$ARE_{2} = 57\% \times SJR$$

Le montant journalier brut retenu est ensuite borné :

$$ARE_{\text{brute jour}} = \min\Big(\max(ARE_1, ARE_2, 32{,}13),\ 75\% \times SJR\Big)$$

Les montants fixes $13{,}18$ et $32{,}13$ sont ceux publiés par France Travail depuis le 1er juillet 2025. Le modèle ne traite pas les cas particuliers : temps partiel, pensions d'invalidité, dégressivité à partir du 7e mois, régime Alsace-Moselle, exonérations CSG/CRDS, ni prélèvement à la source.

5.3 Estimation nette mensuelle

Pour passer du brut journalier à une estimation nette, le modèle retranche :

$$\text{Prelevements}_{jour} = ARE_{\text{brute jour}} \times (1 - 1{,}75\%) \times (6{,}2\% + 0{,}5\%) + SJR \times 3\%$$

$$ARE_{\text{nette jour}} = \max(0,\ ARE_{\text{brute jour}} - \text{Prelevements}_{jour})$$

L'estimation mensuelle utilise une moyenne annuelle de jours indemnisables :

$$ARE_{\text{nette mois}} = ARE_{\text{nette jour}} \times \frac{365}{12}$$

Cette valeur alimente uniquement le Livret rationnel de enveloppes.md §5.2non publie dans ce lot.


☕ 6. Revenu Barista (activité d'appoint du Principal)

Le Barista FIRE permet à Principal de conserver une activité d'appoint, moins rémunératrice, après l'arrêt de sa carrière principale et avant la retraite. Voir la note de décision barista-fire-modelisation.mdnon publie dans ce lot. Cette section décrit le calcul du revenu Barista ; les conditions d'activation (statique A1, dynamique B1) sont en §6.2.

6.1 Du brut au net et à l'imposable

Le revenu Barista est saisi en brut annuel (barista_revenu_brut) et passe par le même pipeline fiscal qu'un salaire, avec un taux net dédié $\tau_{\text{barista}}$ (constante datée baristaNetRate, par défaut $78\%$ — l'activité d'appoint n'est pas supposée cadre) :

$$\text{Net avant IR}_{\text{barista}} = \text{barista\_revenu\_brut} \times \tau_{\text{barista}}$$

Le revenu imposable utilise la même règle que les salaires de fiscalite.md §2.1 : réintégration de la CSG/CRDS non déductible, puis abattement professionnel de 10 % avec plancher et plafond. En code, il doit donc passer par taxableSalaryIncome :

$$\text{Imposable}_{\text{barista}} = taxableSalaryIncome(\text{barista\_revenu\_brut},\ \tau_{\text{barista}})$$

L'imposable Barista est cumulé avec les autres revenus imposables du foyer dans le calcul de l'IR (projection.md §2.2non publie dans ce lot). Le revenu Barista est un revenu d'activité : il entre dans l'assiette d'activité servant au plafond de déduction PER.

6.2 Mode A1 — Barista statique

Quand barista_mode = A1, le Principal perçoit barista_revenu_brut chaque année de la fenêtre :

$$A_{\text{arrêt}} \le A < \min(\text{barista\_fin\_age},\ A_{\text{retraite}})$$

Le revenu est indépendant du patrimoine. En dehors de cette fenêtre (avant l'arrêt de carrière principale, ou à partir de la retraite), il n'y a aucun revenu Barista.

Mode B1 (dynamique) — différé. Le mode B1 déclenche le Barista uniquement en cas de tension patrimoniale ; il sera spécifié dans un lot ultérieur (cf. barista-fire-modelisation.md §2.2 et §8non publie dans ce lot). Tant que B1 n'est pas implémenté, seuls OFF et A1 sont actifs.


Mise en œuvre : revenus.jsnon publie dans ce lot (calcPrincipalIncome, calcConjointIncome, calcPrincipalGrossSalary, calcConjointGrossSalary, calcUnemploymentBenefitFromAnnualGross). La consolidation des revenus dans la projection annuelle est décrite dans projection.md §2.1non publie dans ce lot.