{"id":3905,"date":"2024-08-28T09:22:37","date_gmt":"2024-08-28T09:22:37","guid":{"rendered":"https:\/\/techhub.saworks.io\/?post_type=docs&#038;p=3905"},"modified":"2025-06-25T15:32:01","modified_gmt":"2025-06-25T15:32:01","slug":"recalcul-des-interets-pour-les-comptes-de-pret","status":"publish","type":"docs","link":"https:\/\/techhub.saworks.io\/fr\/docs\/produit-de-banque\/produit-de-pret\/recalcul-des-interets-pour-les-comptes-de-pret\/","title":{"rendered":"Recalcul des Int\u00e9r\u00eats pour les Comptes de Pr\u00eat"},"content":{"rendered":"\n<div class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Champ<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>Version cible<\/strong><\/td><td><\/td><\/tr><tr><td><strong>\u00c9pop\u00e9e<\/strong><\/td><td><\/td><\/tr><tr><td><strong>Statut<\/strong><\/td><td><strong>BROUILLON<\/strong>&nbsp;<em>(\u00c0 valider par l&rsquo;\u00e9quipe m\u00e9tier)<\/em><\/td><\/tr><tr><td><strong>Propri\u00e9taire<\/strong><\/td><td><\/td><\/tr><tr><td><strong>Designer UX\/UI<\/strong><\/td><td><\/td><\/tr><tr><td><strong>D\u00e9veloppeurs<\/strong><\/td><td><\/td><\/tr><tr><td><strong>QA<\/strong><\/td><td><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p><strong>Aper\u00e7u<\/strong><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>En tant que Responsable des Op\u00e9rations, je souhaite configurer un produit de pr\u00eat avec recalcul automatique des int\u00e9r\u00eats<\/strong><\/h3>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Cas standard (aucun recalcul n\u00e9cessaire)<\/strong><\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Lorsque les clients paient :\n<ul class=\"wp-block-list\">\n<li><strong>\u00c0 la date exacte d&rsquo;\u00e9ch\u00e9ance<\/strong><\/li>\n\n\n\n<li><strong>Le montant exact d\u00fb<\/strong><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Cas n\u00e9cessitant un recalcul des int\u00e9r\u00eats<\/strong><\/h4>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li><strong>Paiement du montant exact mais&#8230;<\/strong>\n<ul class=\"wp-block-list\">\n<li>\u2714 En\u00a0<strong>retard<\/strong>\u00a0\u2192 Majoration des int\u00e9r\u00eats<\/li>\n\n\n\n<li>\u2714 En\u00a0<strong>avance<\/strong>\u00a0\u2192 R\u00e9duction des int\u00e9r\u00eats<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Paiement partiel (montant inf\u00e9rieur au d\u00fb)&#8230;<\/strong>\n<ul class=\"wp-block-list\">\n<li>\u2714 \u00c0 l&rsquo;<strong>\u00e9ch\u00e9ance<\/strong>\u00a0\u2192 Recalcul du solde<\/li>\n\n\n\n<li>\u2714 En\u00a0<strong>retard<\/strong>\u00a0\u2192 Recalcul + p\u00e9nalit\u00e9s<\/li>\n\n\n\n<li>\u2714 En\u00a0<strong>avance<\/strong>\u00a0\u2192 Ajustement proportionnel<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Paiement sup\u00e9rieur au montant d\u00fb&#8230;<\/strong>\n<ul class=\"wp-block-list\">\n<li>\u2714 \u00c0 l&rsquo;<strong>\u00e9ch\u00e9ance<\/strong>\u00a0\u2192 Ajustement du capital<\/li>\n\n\n\n<li>\u2714 En\u00a0<strong>retard<\/strong>\u00a0\u2192 Traitement mixte (capital + p\u00e9nalit\u00e9s)<\/li>\n\n\n\n<li>\u2714 En\u00a0<strong>avance<\/strong>\u00a0\u2192 Cr\u00e9dit pour prochaine \u00e9ch\u00e9ance<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Facteurs d\u00e9terminant le calcul pr\u00e9cis des int\u00e9r\u00eats dans ces sc\u00e9narios<\/strong><\/h3>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>A) Base de calcul des jours<\/strong><\/h4>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li><strong>R\u00e9el<\/strong>\u00a0(jours calendaires exacts)<\/li>\n\n\n\n<li><strong>M\u00e9thode des 30 jours<\/strong>\u00a0:\n<ul class=\"wp-block-list\">\n<li>Calcul :\u00a0<code>(Ann\u00e9e2-Ann\u00e9e1)*360 + (Mois2-Mois1)*30 + (Jour2-Jour1)<\/code><\/li>\n\n\n\n<li>R\u00e8gle : Si d1 ou d2 > 30 \u2192 Valeur ramen\u00e9e \u00e0 30<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>B) Nombre de jours dans l&rsquo;ann\u00e9e<\/strong><\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li>R\u00e9el (365\/366)<\/li>\n\n\n\n<li>360 (ann\u00e9e bancaire standard)<\/li>\n\n\n\n<li>365<\/li>\n\n\n\n<li>364 (certains syst\u00e8mes h\u00e9rit\u00e9s)<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>C) Fr\u00e9quence de recalcul du capital restant d\u00fb<\/strong><\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Quotidienne<\/li>\n\n\n\n<li>Hebdomadaire<\/li>\n\n\n\n<li>Bimensuelle (toutes les 2 semaines)<\/li>\n\n\n\n<li>Mensuelle<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Processus automatis\u00e9 de recalcul<\/strong><\/h3>\n\n\n\n<p>Un&nbsp;<strong>traitement programm\u00e9 (Recalcul des Int\u00e9r\u00eats de Pr\u00eat)<\/strong>&nbsp;s&rsquo;ex\u00e9cute :<\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li><strong>Quand<\/strong>\u00a0: En fin de chaque jour ouvrable<\/li>\n\n\n\n<li><strong>Action<\/strong>\u00a0:\n<ul class=\"wp-block-list\">\n<li>V\u00e9rifie tous les comptes actifs avec l&rsquo;option \u00ab\u00a0recalcul des int\u00e9r\u00eats = activ\u00e9\u00a0\u00bb<\/li>\n\n\n\n<li>Compare :\n<ul class=\"wp-block-list\">\n<li>Int\u00e9r\u00eats calcul\u00e9s<\/li>\n\n\n\n<li>Int\u00e9r\u00eats pr\u00e9vus au calendrier de remboursement<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Si concordance<\/strong>\u00a0: [le processus continue&#8230;]<\/li>\n<\/ol>\n\n\n\n<p>De nombreuses institutions financi\u00e8res ont besoin de&nbsp;<strong>recalculer les int\u00e9r\u00eats en fonction de la date r\u00e9elle de remboursement<\/strong>. Cette fonctionnalit\u00e9 est&nbsp;<strong>indispensable<\/strong>&nbsp;pour que Phenix puisse :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>R\u00e9pondre aux exigences op\u00e9rationnelles<\/strong>\u00a0des banques commerciales<\/li>\n\n\n\n<li><strong>S&rsquo;aligner sur les normes comptables<\/strong>\u00a0(IFRS, r\u00e9glementations locales)<\/li>\n\n\n\n<li><strong>Offrir une flexibilit\u00e9<\/strong>\u00a0pour g\u00e9rer les retards, paiements anticip\u00e9s ou partiels<\/li>\n<\/ul>\n\n\n\n<p><strong>Exigences \/ Histoires Utilisateur<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>#<\/th><th>Titre<\/th><th>Histoire Utilisateur<\/th><th>Priorit\u00e9<\/th><th>Notes<\/th><\/tr><\/thead><tbody><tr><td>1<\/td><td><strong>D\u00e9finir un Produit de Pr\u00eat<\/strong><\/td><td><em>En tant que Responsable des Op\u00e9rations, je souhaite d\u00e9finir un produit de pr\u00eat prenant en charge le recalcul des int\u00e9r\u00eats.<\/em><\/td><td><strong>Must Have<\/strong>&nbsp;(Indispensable)<\/td><td><\/td><\/tr><tr><td><\/td><td><strong>Cr\u00e9er un Compte de Pr\u00eat<\/strong><\/td><td><em>En tant qu&rsquo;Agent de Cr\u00e9dit, je souhaite cr\u00e9er un compte de pr\u00eat avec recalcul automatique des int\u00e9r\u00eats.<\/em><\/td><td><strong>Must Have<\/strong>&nbsp;(Indispensable)<\/td><td><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>R\u00e8gles M\u00e9tiers<\/strong><\/h3>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Bases de Calcul des Int\u00e9r\u00eats<\/strong><\/h4>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li><strong>Base Quotidienne (Daily Rest)<\/strong>\n<ul class=\"wp-block-list\">\n<li>Applicable \u00e0 tous types de fr\u00e9quence de remboursement<\/li>\n\n\n\n<li>Nombre de jours dans l&rsquo;ann\u00e9e :\n<ul class=\"wp-block-list\">\n<li><strong>365<\/strong>\u00a0&#8211; Pour toutes fr\u00e9quences de remboursement<\/li>\n\n\n\n<li><strong>364<\/strong>\u00a0&#8211; Pour pr\u00eats hebdomadaires ou bimensuels<\/li>\n\n\n\n<li><strong>360<\/strong>\u00a0&#8211; Pour pr\u00eats mensuels<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Base Hebdomadaire (Weekly Rest)<\/strong>\n<ul class=\"wp-block-list\">\n<li>Uniquement pour pr\u00eats remboursables :\n<ul class=\"wp-block-list\">\n<li>Hebdomadairement<\/li>\n\n\n\n<li>Bimensuellement<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Nombre de jours dans l&rsquo;ann\u00e9e :\u00a0<strong>365 ou 364<\/strong><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Base Bimensuelle (Fortnightly Rest)<\/strong>\n<ul class=\"wp-block-list\">\n<li>Uniquement pour pr\u00eats remboursables bimensuellement<\/li>\n\n\n\n<li>Nombre de jours dans l&rsquo;ann\u00e9e :\u00a0<strong>365 ou 364<\/strong><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Base Mensuelle (Monthly Rest)<\/strong>\n<ul class=\"wp-block-list\">\n<li>Uniquement pour pr\u00eats remboursables mensuellement<\/li>\n\n\n\n<li>Nombre de jours dans l&rsquo;ann\u00e9e :\u00a0<strong>365 ou 360<\/strong><\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<p><strong>Note d&rsquo;impl\u00e9mentation<\/strong>&nbsp;:<br>Ces r\u00e8gles ne sont pas cod\u00e9es directement dans Phenix mais doivent \u00eatre respect\u00e9es lors de :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>La d\u00e9finition des produits de pr\u00eat<\/li>\n\n\n\n<li>La cr\u00e9ation des comptes de pr\u00eat<br>Phenix sera test\u00e9 uniquement dans ces sc\u00e9narios pour garantir des calculs d&rsquo;int\u00e9r\u00eats coh\u00e9rents.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Formule de Calcul des Int\u00e9r\u00eats<\/strong><\/h4>\n\n\n\n<p>Int\u00e9r\u00eats = Capital * Taux d&rsquo;int\u00e9r\u00eat annuel * Nombre de jours calcul\u00e9s \/ Nombre de jours dans l&rsquo;ann\u00e9e<\/p>\n\n\n\n<p>O\u00f9 :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Capital<\/strong>\u00a0= Montant principal selon la base sp\u00e9cifi\u00e9e<\/li>\n\n\n\n<li><strong>Nombre de jours calcul\u00e9s<\/strong>\u00a0= Selon la \u00ab\u00a0Base de Calcul des Jours\u00a0\u00bb choisie<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>R\u00e8gles Compl\u00e9mentaires \u00e0 Respecter<\/strong><\/h3>\n\n\n\n<p>a)&nbsp;<strong>Exc\u00e9dents de Paiement<\/strong><br>Lorsque le recalcul des int\u00e9r\u00eats est activ\u00e9 pour un produit de pr\u00eat :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Tout montant sup\u00e9rieur au d\u00fb ou arri\u00e9r\u00e9 sera\u00a0<strong>automatiquement appliqu\u00e9 au capital restant<\/strong><\/li>\n\n\n\n<li>Ce comportement\u00a0<strong>remplace<\/strong>\u00a0la Strat\u00e9gie de Remboursement s\u00e9lectionn\u00e9e<\/li>\n<\/ul>\n\n\n\n<p>b)&nbsp;<strong>Arr\u00eat de la Capitalisation<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Aucune capitalisation d&rsquo;int\u00e9r\u00eats n&rsquo;est effectu\u00e9e si :\n<ul class=\"wp-block-list\">\n<li>Un montant est en retard depuis plus de X jours<\/li>\n\n\n\n<li>X = seuil pour consid\u00e9rer le compte comme\u00a0<strong>Cr\u00e9ance Douteuse (NPA)<\/strong><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p>c)&nbsp;<strong>Frais au D\u00e9caissement<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Les frais calcul\u00e9s lors du d\u00e9caissement sur\u00a0<strong>(capital + int\u00e9r\u00eats)<\/strong><\/li>\n\n\n\n<li><strong>Ne sont pas recalcul\u00e9s<\/strong>\u00a0si les int\u00e9r\u00eats sont ult\u00e9rieurement ajust\u00e9s<\/li>\n<\/ul>\n\n\n\n<p>d)&nbsp;<strong>Montants Remis (Int\u00e9r\u00eats\/Frais)<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Si un montant a \u00e9t\u00e9 remis (ex. : int\u00e9r\u00eats) et que le recalcul modifie le d\u00fb :\n<ul class=\"wp-block-list\">\n<li><strong>Le montant remis ne change pas automatiquement<\/strong><\/li>\n\n\n\n<li><em>Exemple<\/em>\u00a0:\n<ul class=\"wp-block-list\">\n<li>Int\u00e9r\u00eats initiaux dus : Avr-14 (300\u20ac), Mai-14 (250\u20ac), Juin-14 (200\u20ac)<\/li>\n\n\n\n<li>Remise initiale : 300\u20ac (tout Avr-14)<\/li>\n\n\n\n<li>Apr\u00e8s recalcul : Avr-14 (250\u20ac), Mai-14 (200\u20ac), Juin-14 (150\u20ac)<\/li>\n\n\n\n<li><strong>Remise maintenue \u00e0 300\u20ac<\/strong>\u00a0(250\u20ac pour Avr + 50\u20ac pour Mai)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Exception<\/strong>\u00a0: Si le total recalcul\u00e9 est &lt; montant remis \u2192 Ajustement automatique<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p>e)&nbsp;<strong>Frais D\u00e9j\u00e0 Pay\u00e9s<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Si un frais est recalcul\u00e9 (\u00e0 la hausse ou \u00e0 la baisse) :\n<ul class=\"wp-block-list\">\n<li><strong>Le paiement existant n&rsquo;est pas modifi\u00e9<\/strong><\/li>\n\n\n\n<li><strong>Exc\u00e9dent<\/strong>\u00a0: Remboursable en fin de pr\u00eat<\/li>\n\n\n\n<li><strong>Suppl\u00e9ment<\/strong>\u00a0: \u00c0 percevoir ult\u00e9rieurement<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Exemple Concret<\/strong><\/h3>\n\n\n\n<p><strong>Sc\u00e9nario<\/strong>&nbsp;:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Un pr\u00eat a des int\u00e9r\u00eats recalcul\u00e9s en raison d&rsquo;une transaction ant\u00e9dat\u00e9e<\/li>\n\n\n\n<li>Initialement :\n<ul class=\"wp-block-list\">\n<li>Avr-14 : 300\u20ac (int\u00e9gralement remis)<\/li>\n\n\n\n<li>Mai-14 : 250\u20ac<\/li>\n\n\n\n<li>Juin-14 : 200\u20ac<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Apr\u00e8s recalcul :\n<ul class=\"wp-block-list\">\n<li>Avr-14 : 250\u20ac<\/li>\n\n\n\n<li>Mai-14 : 200\u20ac<\/li>\n\n\n\n<li>Juin-14 : 150\u20ac<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>R\u00e9sultat<\/strong>&nbsp;:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>La remise totale reste \u00e0 300\u20ac (250\u20ac pour Avr + 50\u20ac pour Mai)<\/li>\n\n\n\n<li>Pour ajuster diff\u00e9remment, l&rsquo;utilisateur doit :\n<ol start=\"1\" class=\"wp-block-list\">\n<li>Annuler la remise existante<\/li>\n\n\n\n<li>Recalculer les int\u00e9r\u00eats<\/li>\n\n\n\n<li>Appliquer une nouvelle remise<\/li>\n<\/ol>\n<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Attributs<\/strong><\/h3>\n\n\n\n<p><strong>Pour les Produits de Pr\u00eat et les Comptes de Pr\u00eat<\/strong><\/p>\n\n\n\n<p>*(Note : Pour les Comptes de Pr\u00eat &#8211; les 4 attributs ci-dessous sont h\u00e9rit\u00e9s du Produit de Pr\u00eat et ne peuvent pas \u00eatre modifi\u00e9s au niveau du compte individuel)*<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Attribut<\/th><th>Description<\/th><th>Notes<\/th><\/tr><\/thead><tbody><tr><td><strong>Jours dans l&rsquo;Ann\u00e9e<\/strong><\/td><td>Nombre de jours consid\u00e9r\u00e9s pour une ann\u00e9e dans le calcul des int\u00e9r\u00eats. Options :<br>&#8211; R\u00e9el<br>&#8211; 365<br>&#8211; 360<br>&#8211; 364<\/td><td>&#8211; Non Nullable<br>&#8211; Valeur par d\u00e9faut : \u00ab\u00a0R\u00e9el\u00a0\u00bb<\/td><\/tr><tr><td><strong>Recalcul des Int\u00e9r\u00eats ?<\/strong><\/td><td>Pour ce produit de pr\u00eat, indique si les int\u00e9r\u00eats doivent \u00eatre recalcul\u00e9s en cas de :<br>&#8211; Paiements anticip\u00e9s\/tardifs<br>&#8211; Montant pay\u00e9 diff\u00e9rent du d\u00fb (Vrai\/Faux)<\/td><td>&#8211; Case \u00e0 cocher (Nullable)<br>&#8211; Valeur par d\u00e9faut : Null<\/td><\/tr><tr><td><strong>Fr\u00e9quence de Recalcul du Capital Restant D\u00fb<\/strong><\/td><td>Fr\u00e9quence \u00e0 laquelle le capital restant est recalcul\u00e9 :<br>&#8211; Identique \u00e0 la Fr\u00e9quence de Remboursement<br>&#8211; Quotidienne<br>&#8211; Hebdomadaire<br>&#8211; Bimensuelle<br>&#8211; Mensuelle<\/td><td>&#8211; Menu d\u00e9roulant (Nullable)<br>&#8211; Valeur par d\u00e9faut : Null<\/td><\/tr><tr><td><strong>Base de Calcul des Jours<\/strong><\/td><td>M\u00e9thode pour calculer le nombre de jours entre dates de d\u00e9but et fin :<br>&#8211; R\u00e9el (jours calendaires exacts)<br>&#8211; 30 jours\/mois<\/td><td>&#8211; Valeur par d\u00e9faut : \u00ab\u00a0R\u00e9el\u00a0\u00bb<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>S\u00e9curit\u00e9 et Autorisations<\/strong><\/h3>\n\n\n\n<p>Aucune nouvelle consid\u00e9ration de s\u00e9curit\u00e9 ou permission requise pour cette fonctionnalit\u00e9.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Am\u00e9liorations Fonctionnelles de Phenix<\/strong><\/h3>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li><strong>Am\u00e9lioration des Produits de Pr\u00eat<\/strong>\n<ul class=\"wp-block-list\">\n<li>Ajout des 4 attributs mentionn\u00e9s pr\u00e9c\u00e9demment<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Am\u00e9lioration des Comptes de Pr\u00eat<\/strong>\n<ul class=\"wp-block-list\">\n<li>Ajout des 4 attributs mentionn\u00e9s pr\u00e9c\u00e9demment<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Traitement des Paiements<\/strong><br>Lors de la validation de l&rsquo;\u00e9cran de paiement :\n<ul class=\"wp-block-list\">\n<li>Le syst\u00e8me v\u00e9rifie si le paiement a \u00e9t\u00e9 effectu\u00e9 :\n<ul class=\"wp-block-list\">\n<li>\u00c0 la date pr\u00e9vue<\/li>\n\n\n\n<li>Pour le montant exact<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Si ce n&rsquo;est pas le cas, le syst\u00e8me recalcule :\n<ul class=\"wp-block-list\">\n<li>Les \u00e9ch\u00e9ances actuelles et futures<\/li>\n\n\n\n<li>Les int\u00e9r\u00eats<br>conform\u00e9ment aux R\u00e8gles M\u00e9tiers d\u00e9crites.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Nouveau Traitement Automatis\u00e9<\/strong><br>Mise en place d&rsquo;un nouveau traitement batch pour :\n<ul class=\"wp-block-list\">\n<li>Le calcul quotidien du montant des int\u00e9r\u00eats pour les pr\u00eats<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Nouveaux \u00c9crans<\/strong><\/h3>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>\u00c9cran \u00ab\u00a0Pr\u00e9-paiement du Capital\u00a0\u00bb<\/strong><\/h4>\n\n\n\n<p>Un nouvel \u00e9cran sera ajout\u00e9 pour saisir les d\u00e9tails des&nbsp;<strong>pr\u00e9-paiements de capital<\/strong>.<br><em>Conception similaire \u00e0 l&rsquo;\u00e9cran \u00ab\u00a0Effectuer un Remboursement\u00a0\u00bb.<\/em><\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Champs \u00e0 Saisir<\/strong><\/h3>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li><strong>Date de Transaction<\/strong>\u00a0<em>(saisie)<\/em><\/li>\n\n\n\n<li><strong>Montant du Pr\u00e9-paiement<\/strong>\u00a0<em>(saisie)<\/em><\/li>\n\n\n\n<li><strong>Capital Restant D\u00fb<\/strong>\u00a0<em>(lecture seule)<\/em><\/li>\n\n\n\n<li><strong>Int\u00e9r\u00eats Restants D\u00fbs<\/strong>\u00a0<em>(lecture seule)<\/em><\/li>\n\n\n\n<li><strong>Type de Paiement<\/strong>\u00a0<em>(menu d\u00e9roulant)<\/em><\/li>\n\n\n\n<li><strong>D\u00e9tails de Paiement<\/strong>\u00a0<em>(saisie libre)<\/em><\/li>\n\n\n\n<li><strong>Notes<\/strong>\u00a0<em>(saisie libre)<\/em><\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>R\u00e8gles Fonctionnelles<\/strong><\/h3>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li><strong>Activation du Bouton<\/strong>\u00a0:\n<ul class=\"wp-block-list\">\n<li>Disponible\u00a0<strong>uniquement<\/strong>\u00a0si l&rsquo;option\u00a0<em>\u00ab\u00a0Recalcul des Int\u00e9r\u00eats ?\u00a0\u00bb<\/em>\u00a0est activ\u00e9e (<code>true<\/code>) pour le produit.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Post-Soumission<\/strong>\u00a0:\n<ul class=\"wp-block-list\">\n<li>Recalcul\u00a0<strong>automatique<\/strong>\u00a0des int\u00e9r\u00eats futurs<\/li>\n\n\n\n<li>R\u00e9g\u00e9n\u00e9ration du\u00a0<strong>calendrier de remboursement<\/strong>\u00a0(capital + int\u00e9r\u00eats ajust\u00e9s)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Aper\u00e7u Obligatoire<\/strong>\u00a0:\n<ul class=\"wp-block-list\">\n<li>Affichage d&rsquo;un\u00a0<strong>pr\u00e9visualisation<\/strong>\u00a0du nouveau calendrier avant validation<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Historique<\/strong>\u00a0:\n<ul class=\"wp-block-list\">\n<li>Conservation de l&rsquo;<strong>ancienne version<\/strong>\u00a0du calendrier (consultable ult\u00e9rieurement)<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">Modifications des \u00e9crans existants<\/h3>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li><strong>\u00c9crans des produits de pr\u00eat<\/strong><\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Seront modifi\u00e9s pour inclure les 4 attributs mentionn\u00e9s pr\u00e9c\u00e9demment<\/li>\n<\/ul>\n\n\n\n<ol start=\"2\" class=\"wp-block-list\">\n<li><strong>\u00c9crans des comptes de pr\u00eat<\/strong><\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Seront modifi\u00e9s pour inclure les 4 attributs mentionn\u00e9s pr\u00e9c\u00e9demment<\/li>\n\n\n\n<li>L&rsquo;\u00e9cran du compte de pr\u00eat sera enrichi d&rsquo;un nouveau bouton \u00ab\u00a0Pr\u00e9-paiement du capital\u00a0\u00bb<\/li>\n<\/ul>\n\n\n\n<ol start=\"3\" class=\"wp-block-list\">\n<li><strong>\u00c9cran \u00ab\u00a0Effectuer un paiement\u00a0\u00bb<\/strong><\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Le calcul du montant des int\u00e9r\u00eats sera modifi\u00e9<\/li>\n\n\n\n<li>L&rsquo;application des changements au capital sera mise \u00e0 jour<br>(voir les R\u00e8gles M\u00e9tiers pour les d\u00e9tails de calcul)<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Modifications et Am\u00e9liorations des Traitements Automatis\u00e9s<\/h3>\n\n\n\n<h4 class=\"wp-block-heading\">Nouveau Traitement Automatis\u00e9 : \u00ab\u00a0Recalcul des Int\u00e9r\u00eats pour les Pr\u00eats\u00a0\u00bb<\/h4>\n\n\n\n<p>Un nouveau traitement automatis\u00e9 sera impl\u00e9ment\u00e9 pour recalculer les \u00e9ch\u00e9ances courantes et futures ainsi que les int\u00e9r\u00eats pour tous les pr\u00eats avec des remboursements en retard, conform\u00e9ment aux R\u00e8gles M\u00e9tiers.<\/p>\n\n\n\n<p><strong>S\u00e9lection des Pr\u00eats :<\/strong><br>a) Tous les pr\u00eats o\u00f9 :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>L&rsquo;option \u00ab\u00a0Recalcul des Int\u00e9r\u00eats ?\u00a0\u00bb est activ\u00e9e (true)<\/li>\n\n\n\n<li>ET soit une transaction a eu lieu, soit un remboursement est d\u00fb \u00e0 la date courante<\/li>\n<\/ul>\n\n\n\n<p>b) Tous les pr\u00eats qui :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Ont d\u00e9pass\u00e9 leur derni\u00e8re date de remboursement<\/li>\n\n\n\n<li>ET ont encore un capital restant d\u00fb<br>\u2192 Pour ces pr\u00eats, le traitement calculera les int\u00e9r\u00eats journaliers sur le capital restant et les ajoutera \u00e0 la partie int\u00e9r\u00eats de la derni\u00e8re \u00e9ch\u00e9ance.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\">V\u00e9rifications Requises :<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u00c0 v\u00e9rifier : Si le traitement \u00ab\u00a0R\u00e9sum\u00e9 des Pr\u00eats\u00a0\u00bb n\u00e9cessite des modifications<\/li>\n\n\n\n<li>\u00c0 v\u00e9rifier : Si le traitement \u00ab\u00a0Mise \u00e0 Jour du Vieillissement des Retards\u00a0\u00bb n\u00e9cessite des modifications<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Modifications\/Am\u00e9liorations des \u00c9critures Comptables<\/h3>\n\n\n\n<p><em>Aucun changement n\u00e9cessaire<\/em><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Interaction Utilisateur et Conception<\/h3>\n\n\n\n<p><em>\u00c0 d\u00e9terminer (TBD)<\/em><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Gestion des Exceptions<\/h3>\n\n\n\n<p><em>\u00c0 d\u00e9terminer (TBD)<\/em><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Reporting<\/h3>\n\n\n\n<p><em>Aucun nouveau rapport ni modification des rapports existants requis<\/em><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">APIs<\/h3>\n\n\n\n<p>Les APIs seront am\u00e9lior\u00e9es pour inclure les champs mentionn\u00e9s ci-dessus pour :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Les produits de pr\u00eat<\/li>\n\n\n\n<li>Les comptes de pr\u00eat<\/li>\n<\/ul>\n\n\n\n<p><strong>Modifications de la Base de Donn\u00e9es<\/strong><\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>1. Modifications de la Table \u00ab\u00a0m_product_loan\u00a0\u00bb (Produits de Pr\u00eat)<\/strong><\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Nom de Colonne<\/th><th>Type de Donn\u00e9es<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>days_in_month_enum<\/strong><\/td><td>int<\/td><td>Nombre de jours \u00e0 consid\u00e9rer dans le calcul du pr\u00eat<br><strong>Valeurs possibles :<\/strong><br>&#8211; R\u00e9el (jours calendaires)<br>&#8211; 30 jours<\/td><\/tr><tr><td><strong>days_in_year_enum<\/strong><\/td><td>int<\/td><td>Nombre de jours \u00e0 consid\u00e9rer dans le calcul du pr\u00eat<br><strong>Valeurs possibles :<\/strong><br>&#8211; R\u00e9el<br>&#8211; 360<br>&#8211; 365<br>&#8211; 364<\/td><\/tr><tr><td><strong>interest_recalculation_enabled<\/strong><\/td><td>tinyint<\/td><td>Indicateur bool\u00e9en (0\/1) sp\u00e9cifiant si un recalcul des int\u00e9r\u00eats est requis lorsque le paiement ne respecte pas l&rsquo;\u00e9ch\u00e9ancier.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>2. Modifications de la table \u00ab\u00a0m_loan\u00a0\u00bb (Comptes de pr\u00eat)<\/strong><\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Nom de colonne<\/th><th>Type de donn\u00e9es<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>days_in_month_enum<\/strong><\/td><td>int<\/td><td>Nombre de jours \u00e0 utiliser pour les calculs du pr\u00eat<br><strong>Valeurs :<\/strong><br>&#8211; R\u00e9el (jours calendaires exacts)<br>&#8211; 30 jours (m\u00e9thode standard)<\/td><\/tr><tr><td><strong>days_in_year_enum<\/strong><\/td><td>int<\/td><td>Nombre de jours \u00e0 consid\u00e9rer pour une ann\u00e9e dans les calculs<br><strong>Valeurs :<\/strong><br>&#8211; R\u00e9el (365\/366)<br>&#8211; 360 (ann\u00e9e bancaire)<br>&#8211; 365<br>&#8211; 364 (syst\u00e8mes h\u00e9rit\u00e9s)<\/td><\/tr><tr><td><strong>interest_recalculation_enabled<\/strong><\/td><td>tinyint<\/td><td>Indicateur bool\u00e9en (0\/1) d\u00e9terminant si un recalcul des int\u00e9r\u00eats est n\u00e9cessaire lorsque les paiements ne respectent pas l&rsquo;\u00e9ch\u00e9ancier<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>3. Param\u00e8tres de recalcul des int\u00e9r\u00eats (m_product_loan_recalculation_details)<\/strong><\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Nom de colonne<\/th><th>Type de donn\u00e9es<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>product_id<\/strong><\/td><td>bigint<\/td><td>R\u00e9f\u00e9rence \u00e0 la table m_product_loan (cl\u00e9 \u00e9trang\u00e8re)<\/td><\/tr><tr><td><strong>compound_type_enum<\/strong><\/td><td>int<\/td><td>Strat\u00e9gie de capitalisation :<br>&#8211; 0 : Aucune<br>&#8211; 1 : Int\u00e9r\u00eats uniquement<br>&#8211; 2 : Frais uniquement<br>&#8211; 3 : Int\u00e9r\u00eats et frais<\/td><\/tr><tr><td><strong>reschedule_strategy_enum<\/strong><\/td><td>int<\/td><td>Strat\u00e9gie de r\u00e9\u00e9chelonnement pour pr\u00e9paiements :<br>&#8211; 0 : R\u00e9\u00e9chelonner les prochains remboursements<br>&#8211; 1 : R\u00e9duire le nombre d&rsquo;\u00e9ch\u00e9ances<br>&#8211; 2 : R\u00e9duire le montant des EMI<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>3. Param\u00e8tres de recalcul des int\u00e9r\u00eats (m_loan_recalculation_details)<\/strong><\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Nom de colonne<\/th><th>Type de donn\u00e9es<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>loan_id<\/strong><\/td><td>bigint<\/td><td>R\u00e9f\u00e9rence \u00e0 la table m_loan (cl\u00e9 \u00e9trang\u00e8re)<\/td><\/tr><tr><td><strong>compound_type_enum<\/strong><\/td><td>int<\/td><td>Strat\u00e9gie de capitalisation :<br>&#8211; 0 : Aucune<br>&#8211; 1 : Int\u00e9r\u00eats uniquement<br>&#8211; 2 : Frais uniquement<br>&#8211; 3 : Int\u00e9r\u00eats et frais<\/td><\/tr><tr><td><strong>reschedule_strategy_enum<\/strong><\/td><td>int<\/td><td>Strat\u00e9gie de r\u00e9\u00e9chelonnement pour pr\u00e9paiements :<br>&#8211; 0 : R\u00e9\u00e9chelonner les prochains remboursements<br>&#8211; 1 : R\u00e9duire le nombre d&rsquo;\u00e9ch\u00e9ances<br>&#8211; 2 : R\u00e9duire le montant des mensualit\u00e9s (EMI)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Cas d&rsquo;utilisation :<\/h3>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li><strong>Identifier les recalculs n\u00e9cessaires<\/strong><br>V\u00e9rifier le paiement par rapport \u00e0 l&rsquo;\u00e9ch\u00e9ancier et traiter le recalcul dans les cas suivants :\n<ul class=\"wp-block-list\">\n<li>Paiement en retard (identifi\u00e9 par un traitement automatis\u00e9)<\/li>\n\n\n\n<li>Saisie r\u00e9troactive<\/li>\n\n\n\n<li>Pr\u00e9-paiement<\/li>\n\n\n\n<li>Paiement \u00e0 l&rsquo;\u00e9ch\u00e9ance mais avec montant diff\u00e9rent (ex : 500\u20ac ou 1500\u20ac au lieu de 1000\u20ac d\u00fb le 3 du mois)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Traiter le recalcul<\/strong>\u00a0:\n<ul class=\"wp-block-list\">\n<li>D\u00e9terminer le capital restant d\u00fb<\/li>\n\n\n\n<li>Calculer le montant des int\u00e9r\u00eats capitalis\u00e9s<\/li>\n\n\n\n<li>R\u00e9g\u00e9n\u00e9rer l&rsquo;\u00e9ch\u00e9ancier en fonction :\n<ul class=\"wp-block-list\">\n<li>Du capital restant<\/li>\n\n\n\n<li>De la fr\u00e9quence sp\u00e9cifi\u00e9e (via l&rsquo;instance calendaire)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Pour les paiements en retard :\n<ul class=\"wp-block-list\">\n<li>Ajouter les int\u00e9r\u00eats suppl\u00e9mentaires \u00e0 la prochaine \u00e9ch\u00e9ance<\/li>\n\n\n\n<li>Pour la derni\u00e8re \u00e9ch\u00e9ance : cr\u00e9er des \u00e9ch\u00e9ances suppl\u00e9mentaires d\u00e9di\u00e9es aux int\u00e9r\u00eats<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Pour les pr\u00e9-paiements :\n<ul class=\"wp-block-list\">\n<li>Appliquer l&rsquo;une des strat\u00e9gies de r\u00e9\u00e9chelonnement<\/li>\n\n\n\n<li>Ajuster le montant des mensualit\u00e9s (EMI)<\/li>\n\n\n\n<li>Ajuster la dur\u00e9e totale du pr\u00eat<\/li>\n\n\n\n<li>Mettre \u00e0 jour les prochaines \u00e9ch\u00e9ances<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>G\u00e9rer les nouveaux champs<\/strong>\u00a0:\n<ul class=\"wp-block-list\">\n<li>Ajouter les nouveaux champs pour les produits et comptes de pr\u00eat<\/li>\n\n\n\n<li>Modifiables uniquement au niveau produit<\/li>\n\n\n\n<li>Mais conservant une copie au niveau du compte<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Nouvel \u00e9cran pour pr\u00e9-paiement<\/strong>\u00a0:\n<ul class=\"wp-block-list\">\n<li>Fonctionnement similaire \u00e0 l&rsquo;\u00e9cran de remboursement standard<\/li>\n\n\n\n<li>Particularit\u00e9 : recalcule automatiquement les int\u00e9r\u00eats en d\u00e9finissant la date de cl\u00f4ture \u00e0 aujourd&rsquo;hui<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Modifier le g\u00e9n\u00e9rateur d&rsquo;\u00e9ch\u00e9ancier<\/strong>\u00a0:\n<ul class=\"wp-block-list\">\n<li>Prendre en compte les nouvelles valeurs :\n<ul class=\"wp-block-list\">\n<li>Nombre de jours dans l&rsquo;ann\u00e9e<\/li>\n\n\n\n<li>Nombre de jours dans le mois<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Pour tous les calculs d&rsquo;int\u00e9r\u00eats<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Questions \u00e0 traiter<\/strong><\/h3>\n\n\n\n<p>Voici une liste de questions soulev\u00e9es par ce document d&rsquo;exigences :<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td><strong>Question<\/strong><\/td><td><strong>Outcome<\/strong><\/td><\/tr><tr><td><\/td><td><\/td><\/tr><\/tbody><\/table><\/figure>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Champ Description Version cible \u00c9pop\u00e9e Statut BROUILLON&nbsp;(\u00c0 valider par l&rsquo;\u00e9quipe m\u00e9tier) Propri\u00e9taire Designer UX\/UI D\u00e9veloppeurs QA Aper\u00e7u En tant que Responsable des Op\u00e9rations, [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":3823,"menu_order":5,"comment_status":"open","ping_status":"closed","template":"","doc_tag":[],"doc_badge":[],"class_list":["post-3905","docs","type-docs","status-publish","hentry"],"author_avatar":"https:\/\/secure.gravatar.com\/avatar\/6a70e7c73db9f245e650948d09d74f61?s=96&d=mm&r=g","author_name":"Annick N'dri","_links":{"self":[{"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/docs\/3905"}],"collection":[{"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/docs"}],"about":[{"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/types\/docs"}],"author":[{"embeddable":true,"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/comments?post=3905"}],"version-history":[{"count":0,"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/docs\/3905\/revisions"}],"up":[{"embeddable":true,"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/docs\/3823"}],"wp:attachment":[{"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/media?parent=3905"}],"wp:term":[{"taxonomy":"doc_tag","embeddable":true,"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/doc_tag?post=3905"},{"taxonomy":"doc_badge","embeddable":true,"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/doc_badge?post=3905"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}