---
name: Fonctionnalité réinvestissement automatique des intérêts
description: auto_reinvest par investissement — déclenché automatiquement après chaque remboursement, brut ou net selon la fiscalité de la plateforme
type: project
originSessionId: f8882910-b8d1-4a87-ab0b-2962aa6aad7b
---
Fonctionnalité ajoutée : réinvestissement automatique des intérêts après chaque remboursement.

**DB (migrations dans `db/index.js`) :**
- `investissements.auto_reinvest` INTEGER DEFAULT 0
- `reinvestissements.source` TEXT DEFAULT 'manuel' ('manuel' | 'auto')
- Migration `fiscalite_locale` (interets_bruts_avant_local, taxe_locale sur remboursements) était tronquée — réparée dans la même session

**Backend :**
- Route `PUT /api/investissements/:id/auto-reinvest { active: bool }` dans `investissements.js`
- `GET /api/investissements/:id` retourne maintenant `plateforme_fiscalite` (JOIN sur plateformes)
- `POST /api/remboursements` : si `auto_reinvest=1`, crée un reinvestissement avec `source='auto'`
  - Plateforme `flat_tax` (France) → montant = `interets_nets`
  - Autres plateformes → montant = `interets_bruts`

**Frontend (`InvestissementDetail.jsx`) :**
- Modal "Ajouter un réinvestissement" : sélecteur tabs "Manuel" / "Automatique"
  - Tab Manuel = formulaire existant
  - Tab Automatique = activation/désactivation + description brut/net selon plateforme
  - État `reinvTab` reset à 'manuel' à chaque ouverture via `openReinvModal(tab='manuel')`
- Bloc "Réinvestissements complémentaires" visible dès que `auto_reinvest=1` (même sans reinvest existant)
- Badge `auto` sur les lignes créées automatiquement
- Menu ⋮ carte "Informations du projet" : entrée "Désactiver le réinvestissement auto" visible si actif

**Why:** Permettre de réinvestir automatiquement les intérêts perçus pour capitaliser sans saisie manuelle.
