Vous consultez une page technique concernant le logiciel de gestion Mercator. Celle-ci contient des informations spécifiques destinées aux professionnels de Mercator. Souhaitez-vous être redirigés vers des informations plus générales ?


   Ne plus poser cette question

Aide à la gestion de l'escompte

0000002051     -      30/06/2017

Mercator comptabilité offre des fonctionnalités d'aide à la gestion de l'escompte. Pour les activer, il faut ajouter ces champs dans la base de données :

  • Dans la table PIEDS_C
    • ESCPTE_DV float: montant de l'escompte en devise du document
    • ESCPTE_FB float : montant de l'escompte en devise de base
    • ESCPTE_ECH datetime : date de validité de l'escompte
  • Dans la table CLI (optionnel)
    • C_ESC_DJ smallint : délai en jours pour le calcul de la date de validité de l'escompte par rapport à la date du document pour ce client
  • Dans la table FOU (optionnel)
    • F_ESC_DJ smallint : délai en jours pour le calcul de la date de validité de l'escompte par rapport à la date du document pour ce fournisseur

Le cas échéant, adaptez les écrans d'écritures comptables et de signalétiques pour faire apparaître ces nouveaux champs.

Il faut aussi créer un code TVA d'escompte, pour les ventes et/ou pour les achats et dans lequel :

  • le régime est à blanc
  • le taux est zéro
  • toutes les zones de cases et comptes sont vides

Dans les options, indiquez ces codes TVA dans "Comptabilité / Code TVA escompte automatique ventes" et "Comptabilité / Code TVA escompte automatique achats". Si la valeur d'une de ces options est à blanc, alors la fonctionnalité est désactivée pour ce type d'écritures (ventes - achats).

Lors de la validation d'une nouvelle écriture, si la zone C_ESCPTE du client (pour une vente) ou F_ESCPTE du fournisseur (pour un achat) contient une valeur non nulle (en l'occurrence, le taux d'escompte habituel), alors Mercator présentera cette boîte de dialogue :

escompte

Si on répond "Annuler", le processus de sauvegarde de l'écritrure en cours est interrompu.

Si on répond "Non", Mercator n'applique aucune aide à l'escompte, l'écriture n'est pas modifiée et la question ne sera plus posée.

Si on répond "Oui", alors Mercator va :

  • Appliquer l'escompte pour diminuer la base HTVA sur chacune des lignes encodées pour laquelle le montant de la TVA est non nul. Le montant de la TVA sera adapté en conséquence.
  • Dupliquer les lignes encodées, calculer le montant de l'escompte correspondant à la ligne d'origine et placer le code TVA d'escompte
  • Si la comptabilité analytique (en mode complet) est active, alors les données analytiques seront automatiquement adaptées en fonction des modifications apportées ci-dessus.
  • Sauvegarder la date d'escompte dans le champ ESCPTE_ECH de PIEDS_C.

Notons que l'aide à l'escompte ne s'active pas si l'écriture en cours contient déjà une ligne utilisant le code TVA d'escompte automatique. Mercator considère en effet dans ce cas que l'escompte a été géré manuellement par l'utilisateur.

Notons encore que cette mécanique ne s'active pas non plus si l'option "Escompte non déduit affecte base TVA" est à NON, puisque dans ce cas, l'encodage d'un escompte n'a pas d'incidence sur le calcul des bases de TVA.


Calcul des totaux de l'écriture comptable :

Si l'option  "Escompte non déduit affecte base TVA" est à OUI, alors les champs ESCPTE_DV et ESCPTE_FB de PIEDS_C vont contenir, respectivement en devise de l'écriture et en devise de base, le montant de l'escompte, étant calculé comme la somme des bases HTVA pour les lignes où le code TVA est le code TVA d'escompte automatique. Peu importe que ces lignes aient été encodées manuellement ou via l'aide décrite ci-dessus. Ces champs calculés ne sont pas modifiables par l'utilisateur.

Si l'option "Escompte non déduit affecte base TVA" est à NON, alors les champs ESCPTE_DV et ESCPTE_FB de PIEDS_C sont libres et peuvent contenir une valeur saisie par l'utilisateur.

Dans les deux cas, ces montants sont pris en compte par la liaison bancaire afin que ce montant d'escompte puisse être ultérieurement déduit lors du paiement.


Paiement via la liaison bancaire :

escompte_paie

Dans la grille du bas (détail des documents pour le fournisseur sélectionné), 3 colonnes sont apparues pour indiquer :

  • le montant de l'escompte
  • si l'escompte est déduit ou non
  • la date de validité de l'escompte

 


Remarques :

Les écritures comptables correspondant à des escomptes non conditionnels, çàd déduits immédiatement lors de l'encodage de la facture, ne sont pas concernées par les informations de cette page.


Ce qui précède concerne les documents encodés directement dans la comptabilité.
Si l'option "Outils \ Options \ Encodage - Escompte non déduite affecte la base TVA" est à oui et que la facture d'origine a été encodée dans la gestion commerciale Mercator, la facture comptable est générée via la centralisation de Mercator. Dans ce cas, la ligne d'escompte est également générée. Le code ci-dessous permet de compléter le code TVA de cette ligne additionnelle concernant l'escompte avec le code TVA défini dans "Outils \ Options \ Comptabilité - Code TVA escompte automatique achats".

Zoom
if (bookingEngine.Type == 2)
{
    //Forcer le régime de TVA escompte à la ligne, pour pouvoir calculer l'escompte en achats lorsqu'il diminue la base TVA.
    if (bookingEngine.Context == MercatorUi.Engine.Cpta.BookingEngine.ContextEnum.PostIntoAccounting
        && _Divers.Get_ESC_ND_TVA(bookingEngine.PIEDS_C) == "OUI"
        && Convert.ToDouble(bookingEngine.PIEDS_C["HeaderTotal"]).CompareTo(0, Globals.DEC_DEV_C) != 0
        && Globals.Params["CODTVAESCA"] != "")
    {
        double escpte_pc = Convert.ToDouble(bookingEngine.FOU["f_escpte"]);
        if (escpte_pc.CompareTo(0, Globals.DEC_DEV_C) != 0)
        {
            foreach (DataRow bookingLine in bookingEngine.LIGNES_C.Select("id_tva = ''"))
                bookingLine["id_tva"] = Globals.Params["CODTVAESCA"];
        }
        bookingEngine.UpdateAmounts();
    }
}