Correction bug importation de données de cashback
This commit is contained in:
@@ -179,7 +179,7 @@ const MODULES = {
|
||||
remboursements: {
|
||||
label: 'Remboursements',
|
||||
required: ['investissement_id', 'date_remb'],
|
||||
optional: ['capital', 'interets_bruts', 'prelev_sociaux', 'prelev_forfaitaire', 'statut'],
|
||||
optional: ['capital', 'cashback', 'interets_bruts', 'prelev_sociaux', 'prelev_forfaitaire', 'statut'],
|
||||
needsInvestisseur: true,
|
||||
},
|
||||
plateformes: {
|
||||
@@ -326,6 +326,9 @@ const FIELD_HINTS_OVERRIDE = {
|
||||
interets_bruts: 'intérêts bruts perçus, en euros (nombre, avant prélèvements). ⚠️ Voir la section RÈGLE CAPITAL vs '
|
||||
+ 'INTÉRÊTS ci-dessous avant de remplir ce champ : ne recopie JAMAIS aveuglément le montant total d\'une ligne de '
|
||||
+ 'remboursement dans ce champ sans vérifier sa cohérence avec les prélèvements sociaux/IR associés.',
|
||||
cashback: 'montant de cashback/prime/bonus perçu, en euros (nombre) — voir la section RÈGLE CAPITAL vs INTÉRÊTS '
|
||||
+ 'ci-dessous : une ligne de cashback/bonus/récompense se reconnaît à son libellé (pas à sa position dans le '
|
||||
+ 'fichier) et n\'est jamais soumise à prélèvement.',
|
||||
},
|
||||
investissements: {
|
||||
nom_projet: 'trouve le nom du projet naturellement dans le fichier, puis FORMATE-le ainsi : '
|
||||
@@ -393,9 +396,21 @@ function buildReferenceSection(mod, plats, investissements, scopePlateforme) {
|
||||
+ `d'intérêts bruts à partir des prélèvements eux-mêmes — interets_bruts ≈ prélèvement_sociaux ÷ 0,172, à recouper avec prélèvement_forfaitaire ÷ 0,128 `
|
||||
+ `(les deux estimations doivent être proches ; en cas d'écart, privilégie leur moyenne) — puis capital = montant total de la ligne − interets_bruts ainsi recalculé. `
|
||||
+ `N'utilise JAMAIS le montant total brut de la ligne comme interets_bruts dans ce cas.\n`
|
||||
+ `4. Si AUCUNE ligne de prélèvement n'est associée à la ligne de remboursement (aucun CSG/CRDS ni prélèvement IR/PFU adjacent), il s'agit d'un remboursement `
|
||||
+ `4. IDENTIFICATION DU CASHBACK/BONUS — avant d'appliquer la règle 5 ci-dessous, vérifie si le LIBELLÉ de la ligne `
|
||||
+ `indique une prime, un bonus, un cashback, une récompense, un code cadeau ou une rémunération de parrainage/filleul `
|
||||
+ `(mots-clés typiques : "cashback", "bonus", "prime", "récompense", "code cadeau", "parrainage", "filleul", `
|
||||
+ `"rémunération" hors mensualité). Ce type de versement se reconnaît à son LIBELLÉ, jamais à sa position dans le `
|
||||
+ `fichier ni à l'absence de ligne de prélèvement adjacente (une ligne de remboursement de capital pur n'a elle non `
|
||||
+ `plus aucun prélèvement adjacent — ne confonds pas les deux cas). Si c'est le cas : renseigne uniquement le champ `
|
||||
+ `cashback = montant total de la ligne (capital = 0, interets_bruts = 0, prelev_sociaux = 0, prelev_forfaitaire = 0), `
|
||||
+ `ce type de versement n'étant jamais soumis à prélèvement. Si ce versement est lié à un projet identifiable de la `
|
||||
+ `liste des investissements ci-dessous, utilise cet investissement_id ; si le libellé ne mentionne AUCUN projet `
|
||||
+ `identifiable (ex. bonus de parrainage global, non lié à un prêt précis), N'INCLUS PAS cette ligne dans le JSON — `
|
||||
+ `le module d'import ne permet pas d'enregistrer un versement sans investissement associé.\n`
|
||||
+ `5. Si AUCUNE ligne de prélèvement n'est associée à la ligne de remboursement (aucun CSG/CRDS ni prélèvement IR/PFU adjacent) `
|
||||
+ `ET que ce n'est PAS une ligne de cashback/bonus (voir règle 4 ci-dessus), il s'agit d'un remboursement `
|
||||
+ `de capital PUR (souvent l'échéance finale d'un prêt in fine/différé) : capital = montant total de la ligne.\n`
|
||||
+ `5. ⚠️ RÈGLE CRITIQUE — présence systématique des champs : sur CHAQUE ligne du JSON généré, inclus TOUJOURS explicitement les 5 champs `
|
||||
+ `6. ⚠️ RÈGLE CRITIQUE — présence systématique des champs : sur CHAQUE ligne du JSON généré, inclus TOUJOURS explicitement les 5 champs `
|
||||
+ `capital, cashback, interets_bruts, prelev_sociaux, prelev_forfaitaire — même quand leur valeur est 0. N'omets JAMAIS un champ sous prétexte `
|
||||
+ `qu'il vaut 0 sur cette ligne précise (ex. une ligne de remboursement de capital pur doit quand même inclure "interets_bruts": 0, "prelev_sociaux": 0, `
|
||||
+ `"prelev_forfaitaire": 0, et pas seulement "capital"). Cette règle est impérative : l'application détecte les colonnes disponibles à partir des champs `
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user