Chaque code TVA de Mercator est associé à 2 jeux de cases à mouvementer. Un jeu pour les écritures de type "factures" et un jeu pour celles de type "note de crédit".
Par défaut, Mercator prend en compte le signe global de l'écriture pour déterminer lequel de ces 2 jeux utiliser :
- total de la facture positif -> facture
- total négatif -> note de crédit
Dans certains cas, cette situation peut conduire à des cases négatives au niveau de la déclaration de TVA, ce qui n'est pas admis par l'Administration (belge).
Exemple : une facture contient ces deux lignes :
- 1000 EUR de marchandises à 21 % de TVA
- reprise de vidange pour 1500 EUR (vidange = aucun mouvement TVA)
Le total de cette facture est donc de -290 EUR.
Par défaut, Mercator considère donc cette facture comme une note de crédit et mouvemente ces cases :
Pour résoudre cela, il est possible de mettre à OUI l'option "Décl. TVA : NC si dans séquence". Dans ce cas, Mercator détermine si l'écriture est une note de crédit ou une facture uniquement sur base du déroulant présentant le sous-type dans le premier onglet de la séquence (sous le libellé du journal). Dans le cas où cette option est à OUI, une facture négative mais encodée dans le journal de factures sera considérée comme une facture et les montants viendront en déduction des cases mouvementées par le jeu "factures".
Le résultat pour l'écriture d'exemple sera celui-ci :
Remarques :
- La modification de cette version requiert un redémarrage de Mercator et elle n'est prise en compte qu'après ce redémarrage.
- L'Administration n'autorise pas que les montants relatifs aux notes de crédit soient portés en déduction des cases relatives aux factures. Cette fonctionnalité ne dispense donc aucunement de l'obligation de distinguer sur le plan TVA les factures des notes de crédit.
- Il convient de mettre en place un système évitant d'encoder des factures négatives dans une séquence de factures (hormis les situations telles que dans notre exemple) ou des notes de crédit positives dans une séquence de notes de crédit. Si les documents sont centralisés depuis la gestion commerciale, cela peut être fait simplement via un customize placé dans les séquences de la gestion commerciale. Un exemple de code est repris ci-dessous.
- Cette option est générale : elle s'applique donc tant aux ventes qu'aux achats.
- La modification de cette option influera sur la réédition de déclarations de TVA déjà rentrées.
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using MercatorApi;
using MercatorUi;
namespace Billing
{
public class Customizer : MercatorUi.ICustomizers.IBillingEngineCreated, MercatorUi.ICustomizers.IBillingEngineClosed
{
public void BillingEngineCreated(MercatorUi.Engine.Gescom.BillingEngine billingEngine)
{
billingEngine.BeforeSave += new MercatorUi.Engine.Gescom.BillingEngine.BeforeSaveEventHandler(BillingEngine_BeforeSave);
}
public void BillingEngineClosed(MercatorUi.Engine.Gescom.BillingEngine billingEngine)
{
billingEngine.BeforeSave -= new MercatorUi.Engine.Gescom.BillingEngine.BeforeSaveEventHandler(BillingEngine_BeforeSave);
}
void BillingEngine_BeforeSave(object sender, MercatorUi.Engine.Gescom.BillingEngine.BeforeSaveEventArgs e)
{
MercatorUi.Engine.Gescom.BillingEngine billingEngine = (MercatorUi.Engine.Gescom.BillingEngine)sender;
if (Api.ConvertToDouble(billingEngine.PIEDS["tot_ttc_dv"]) > 0)
{
MercatorUi.Dialogs.Stop("Ce document n'est pas une note de crédit. Impossible de le valider !");
e.CancelSave = true;
}
}
}
}