Beheer van cadeaubonnen in het commercieel beheer (versie 10.10 en later)

0000003081     -      26-08-2025

Mercator 10.10 maakt het genereren en gebruiken van cadeaubonnen mogelijk (in de vorm van een betaalwijze).

Configuratie

Om deze functionaliteit te activeren, moet men:

  • In de tabel STOCK, voeg S_PAYTERMBONCAD bit toe
  • In de tabellen HISCAISS en LIGNES_V, voeg IDBONCADPAYTERM char(10) toe

alter table STOCK add S_PAYTERMBONCAD bit not null default 0
alter table LIGNES_V add IDBONCADPAYTERM char(10) not null default ''
alter table HISCAISS add IDBONCADPAYTERM char(10) not null default ''
Als u een geldigheidsdatum voor de cadeaubonnen wilt beheren, moet u het veld DATEBONCADEAUPAYTERM van het type date toevoegen in LIGNES_V 
alter table lignes_v add DATEBONCADEAUPAYTERM date not null default '19000101'
Start vervolgens een database-update via "Tools > Geavanceerde Tools > SQL Database > Update".
Het veld PIEDS_V.BONCADEAU varchar(MAX) wordt automatisch aangemaakt. Men moet deze kolom dus niet handmatig aanmaken.
Na het herstarten van Mercator moet u een betalingswijze met volgende omschrijving definiëren, afhankelijk van de taal van het dossier:

  • Frans: Bon cadeau
  • Nederlands: Cadeaubon
  • Engels: Gift card
  • Duits: Geschenkkarte.

 

Als u een geldigheidsdatum voor cadeaubonnen beheert, moet u de optie BC_VALID invullen om het aantal dagen aan te geven dat een cadeaubon geldig is. Het wordt aanbevolen om het vakje "Auto bedrag" aan te vinken bij de verkoopsequenties waar cadeaubonnen zullen ingegeven worden als betaling.
 

Gebruik

Eerst moet u de artikels aanmaken die voor de verkoop van cadeaubonnen worden gebruikt en S_PAYTERMBONCAD aanvinken bij deze artikels.
U kan bijvoorbeeld meerdere artikels met een vaste prijs aanmaken of één artikel aanmaken waarbij u handmatig de prijs ingeeft.
Bij ingave van deze artikels in een verkoop wordt er in de optie BC_GENID

  • ofwel automatisch een ID gegenereerd
  • ofwel zal er gevraagd worden om deze ID in te vullen.

Het is ook mogelijk om een ID te forceren via code:

Zoom
using System;
using System.Data;
using MercatorApi;
using MercatorUi;
using MercatorUi.Engine.Gescom;

namespace Billing
{
    public class CustomizerMercatorUi.ICustomizers.IBillingEngineCreated, MercatorUi.ICustomizers.IBillingEngineClosed
    {
        public void BillingEngineCreated(MercatorUi.Engine.Gescom.BillingEngine billingEngine)
        {
            billingEngine.BeforeBonCadeauAskVoucher += BillingEngine_BeforeBonCadeauAskVoucher;
        }

        public void BillingEngineClosed(MercatorUi.Engine.Gescom.BillingEngine billingEngine)
        {
            billingEngine.BeforeBonCadeauAskVoucher -= BillingEngine_BeforeBonCadeauAskVoucher;
        }

        private void BillingEngine_BeforeBonCadeauAskVoucher(object sender, BillingEngine.BeforeBonCadeauAskVoucherEventArgs e)
        {
            for (int i = 0; i <= 3; i++)
            {
                string idBon = Api.Ident();
                Api.LastError = "";
                var exists = Api.ZselectDirect(Globals.RepData, "if exists(select * from lignes_v where IDBONCADPAYTERM=@idBon) select 1 else select 0", new MercatorSqlParam("@idBon", idBon, SqlDbType.Char));
                if (!string.IsNullOrEmpty(Api.LastError))
                    Dialogs.Stop(Api.LastError);
                if (!Convert.ToBoolean(exists))
                {
                    e.IdBonCadeau = idBon;
                    break;
                }
                else if (i == 3)
                {
                    Dialogs.Stop("Cadeaubon: Unieke code wordt niet teruggevonden!");
                }
            }
        }
    }
}

 

Het is mogelijk om cadeaubonnen af te drukken. Hiervoor moet u de optie PRINT_BC configureren en kan de lay-out worden gewijzigd via "Tools > Modellen Documenten" nadat u een verkoop met een cadeaubon hebt geopend.

Werking

Om deze cadeaubon terug te sturen, gebruik je de betaalwijze "Cadeaubon". Het bedrag wordt automatisch ingevuld (zie opmerking hierboven over het vakje "Auto bedrag" dat moet worden aangevinkt). Bij de registratie wordt u gevraagd om de identificatiecode van de cadeaubon in te vullen. Als u deze identificatiecode niet handmatig wilt invoeren, moet u deze instellen via e.IdBonCadeau in de BeforeSendRequestPayTerm event van het object Payments van de BillingForm.

Mercator zal het saldo van de cadeaubon controleren en, al het positief is, het totaal van de betalingswijze wijzigen met

  • ofwel het resterende bedrag van de cadeaubon
  • ofwel het resterende te betalen bedrag (als het resterende bedrag van de cadeaubon groter is dan het saldo van het document).


In principe is het niet mogelijk om dezelfde cadeaubon meerdere keren te gebruiken in dezelfde verkoop. Als je extra controles wilt uitvoeren, zoals het niet kunnen gebruiken van een cadeaubon om te betalen voor de aankoop van een andere cadeaubon (bijvoorbeeld), kun je de event BeforeSendRequestPayTerm van het object Payments van de BillingForm gebruiken.

 

Afdrukken

In het onderstaande zip-bestand vindt u:

  1. het rapport "3081S Geschiedenis van de cadeaubon" om te installeren.
    Het is toegankelijk via de knop "Documenten" op het artikelfiche.
    Wanneer u het uitvoert, vraagt Mercator u de barcode van de cadeaubon en geeft u informatie over
    • de aankoop,
    • de eventuele herlading,
    • het (of de verschillende) gebruik(en).

  2. het rapport "3081S Verlopen cadeaubonnen" om te installeren.
    Het is toegankelijk via de knop "Documenten" op het artikelfiche.
    Het toont de lijst met ongebruikte cadeaubonnen met een geldigheidsdatum vóór de geselecteerde datum.

 

Boekhoudkundige en btw-begrippen

In termen van boekhouding en btw zijn er 2 manieren om cadeaubonnen te beheren, zoals uitgelegd in circulaire 2018/C/127 betreffende de btw-behandeling van cadeaubonnen.

  1. in aanmerking komen op artikels met slechts één btw-tarief
    TE WIJZIGEN EN TERUGBETALEN MET NEGATIEF ARTIKEL
    In dit geval moet je een btw-tarief definiëren op het niveau van het verkoopartikel en een verkooprekening definiëren op artikelniveau.

    Dit geeft: 

    • Verkoop 700000 C
    • BTW 451000

    Wanneer de cadeaubon wordt geretourneerd, moet een interne overboekingsrekening worden gedefinieerd voor de betaalwijze, bijvoorbeeld

    • Betaling 580000 D

    Aangezien de btw wordt betaald wanneer de cadeaubon wordt uitgegeven en de verkoop om de bon te gebruiken ook btw genereert, moet alles worden aangesloten door een boeking te maken om de omzet en de te ontvangen btw te debiteren.

    • Betaling 580000 C
    • Verkoop 700000 D
    • Te ontvangen btw 411000 D

     

  2. in aanmerking komend op artikels met verschillende btw-tarieven
    In dit geval moet je een btw-tarief van 0 definiëren en een tussenrekening definiëren (bijv. 499001) op artikelniveau instellen.

    Dit geeft: 

    • Verkoop 499001  C

    Wanneer de cadeaubon wordt geretourneerd, moet je in de betaalwijze de tussenrekening voor het artikel definiëren, bijvoorbeeld 499001

    • Betaling 499001 D
    In dit geval wordt de btw beheerd door de verkoopartikels


 



Te laden : 0000003081.zip (41 Kb - 18-10-2022)


Functionele cookies: Cookies die nodig zijn voor het gebruik van de website en voorkeurscookies. Ze bevatten geen persoonsgegevens. (Meer informatie)

Analytische cookies: Verzamelen van statistieken met betrekking tot het gedrag van internetgebruikers. (Meer informatie)

Marketingcookies: Om bezoekers op verschillende websites te volgen voor advertentiedoeleinden. (Meer informatie)