DataFirefly Auto Clearance: automatische uitverkoop van winkeldochters
Installatie, kortingstreden, regels per categorie, prijsbescherming, cronjob, dashboard en probleemoplossing.
Installatie
Installeer de module via Modules > Modulebeheer > Module uploaden door het ZIP-bestand te versturen, of plaats de map dfclearance in de map /modules/ van uw winkel en klik op Installeren.
Bij de installatie:
- maakt de module onder Home een categorie Outlet aan, die u kunt hernoemen of vervangen door een bestaande categorie;
- voegt ze het tabblad Catalogus > Automatische uitverkoop toe, met de lijst van outletproducten;
- maakt ze haar tabellen aan (outletproducten, uitsluitingen, logboek, outletverkopen);
- blijft ze uitgeschakeld: geen enkele prijs of categorie verandert zolang u de automatische uitvoering niet inschakelt.
Bij een update vanaf versie 1.0.0 volstaat het de nieuwe ZIP te uploaden: het updatescript voegt de verkooptabel, de nieuwe instellingen en de nieuwe hooks toe zonder uw bestaande instellingen te wijzigen.
Aan de slag
De configuratiepagina toont een checklist van vier stappen zolang de module niet volledig draait:
- Stel uw treden in in het tabblad Treden en prijzen. Standaard: 10 % na 90 dagen, 20 % na 150 dagen en 35 % na 240 dagen.
- Voer een simulatie uit met de knop Simuleren bovenaan de pagina. Het rapport toont de producten die de outlet in zouden gaan, de kortingen die zouden veranderen en de producten die zouden vertrekken. Er wordt niets weggeschreven.
- Schakel de automatische uitvoering in, eerste optie van het tabblad Treden en prijzen.
- Plan de cronjob met de URL uit het tabblad Cronjob.
Na een simulatie voert de knop Nu toepassen de verwerking echt uit als de module ingeschakeld is.
Treden en prijzen
Standaardtreden
Elke trede koppelt een aantal dagen zonder verkoop aan een kortingspercentage. De eerste trede is de instapdrempel van de outlet. Elke trede moet een hogere korting geven dan de vorige. Een tijdlijn onder de tabel toont het verloop en markeert ongeldige treden vóór het opslaan.
De dagen zonder verkoop tellen vanaf de laatste geldige bestelling met het product, alle combinaties samen. Een product dat nooit verkocht is, telt vanaf de aanmaakdatum.
Voortgang van de treden
- Dagen zonder verkoop: de teller herstart na elke verkoop, ook een verkoop in de outlet.
- Tijd in de outlet: de treden lopen door, ook als het product verkoopt.
In beide gevallen daalt de korting van een outletproduct nooit.
Treden per categorie
De knop Categorieregel toevoegen maakt eigen treden voor één categorie. De regel geldt voor de categorie en al haar subcategorieën en vervangt de standaardtreden voor de betrokken producten. Past een product bij meerdere regels, dan geldt de eerste in de lijst. Voor een product dat naar de outlet is verplaatst, gebruikt de module de categorieën die het vóór de intrede had.
Omgang met categorieën
- Toevoegen (aanbevolen): het product wordt aan de outlet toegevoegd en blijft in zijn categorieën.
- Toevoegen als standaardcategorie: de outlet wordt ook de standaardcategorie, zichtbaar in het kruimelpad.
- Verplaatsen: het product verschijnt alleen nog in de outlet. Zijn categorieën worden bewaard en bij vertrek hersteld.
De modi Toevoegen als standaardcategorie en Verplaatsen wijzigen de product-URL als de categorie deel uitmaakt van uw URL-formaat. PrestaShop stuurt de oude URL door, maar controleer dit voordat u ze gebruikt op een goed scorende catalogus.
Prijsbescherming
- Maximale korting (standaard 60 %): bovengrens voor alle treden.
- Margebeveiliging: de outletprijs zakt nooit onder de inkoopprijs exclusief btw plus de minimale marge (standaard 5 %). Producten zonder inkoopprijs worden niet beperkt. Is geen korting mogelijk, dan gaat het product de outlet niet in.
- Prijseinde: Exact, x,99, x,90 of x,00. De module rondt de outletprijs inclusief btw voor het standaardland af op het dichtstbijzijnde prijseinde. Blijft geen enkel prijseinde binnen 5 punten van de trapkorting, dan houdt ze het exacte percentage.
Het vak Voorbeeld met een product van berekent live de prijs bij elke trede voor een prijs naar keuze, inclusief afronding en maximale korting.
Voorwaarden
Instapvoorwaarden
- Minimumvoorraad om in te stromen: stel 2 of meer in om het laatste stuk tegen de normale prijs te houden.
- Producten die al in de aanbieding zijn negeren: een product met een actieve korting voor alle klanten gaat de outlet niet in, om stapelkortingen te voorkomen.
- Uitgesloten categorieën en merken: de betrokken producten gaan nooit de outlet in. Een filterveld helpt een categorie in een lange lijst te vinden.
Virtuele, uitgeschakelde en gratis producten worden altijd overgeslagen.
Uitstapvoorwaarden
- Outlet verlaten als de voorraad op is: het product krijgt zijn categorieën en normale prijs terug zodra het uitverkocht is.
- Outlet verlaten bij aanvulling: het product vertrekt wanneer zijn voorraad hoger wordt dan de hoeveelheid bij binnenkomst.
- Een uitgeschakeld of uitgesloten product vertrekt ook bij de volgende uitvoering.
Wachttijd voor terugkeer
Een product dat de outlet verlaat, handmatig verwijderd, aangevuld of uitgesloten en weer toegestaan, kan niet terugkomen voor deze termijn (standaard 30 dagen, 0 schakelt hem uit). Met 30 dagen komt de doorgestreepte prijs altijd overeen met de laagste prijs van de laatste 30 dagen, zoals de Europese Omnibusrichtlijn vereist. De termijn geldt niet na een wijziging van de outletcategorie.
Nieuwe producten per uitvoering
Beperkt het aantal producten dat per uitvoering de outlet in gaat (standaard 200). De rest wordt bij volgende uitvoeringen verwerkt. Elke uitvoering heeft ook een tijdslimiet om binnen de grenzen van de hosting te blijven.
Pauze
Vul een begin- en einddatum in om de uitverkoop op te schorten tijdens de uitverkoopperiode of een Black Friday-actie. Tijdens de pauze gaat geen product de outlet in en stijgt geen korting. Uitstappen blijven gelden en de huidige outletprijzen veranderen niet. De kop van de module toont de lopende pauze.
Cronjob
Het tabblad Cronjob geeft de URL die eenmaal per dag moet worden aangeroepen, bij voorkeur ‘s nachts, met een kopieerknop. Beschikbare parameters:
&simulate=1: proefdraai, er wordt niets gewijzigd;&all_shops=1: verwerkt alle winkels van een multistore-installatie.
Voorbeeldregel voor crontab of cPanel:
0 3 * * * curl -s "https://uw-winkel.nl/module/dfclearance/cron?token=UW_TOKEN" > /dev/null
De datum van de laatste aanroep wordt getoond. Is de automatische uitvoering ingeschakeld en is de cronjob al meer dan 48 uur niet aangeroepen, dan verschijnt bovenaan de pagina een waarschuwing. De knop Nieuw token maakt de huidige URL ongeldig.
Staat de winkel in onderhoudsmodus, voeg dan het IP-adres van uw server toe aan de lijst met onderhouds-IP’s, anders wordt de aanroep geblokkeerd.
Dashboard
Het tabblad Dashboard toont:
- het aantal producten en stuks in de outlet;
- de uit te verkopen voorraad tegen inkoopwaarde en de waarde tegen outletprijs;
- de outletomzet exclusief btw van de laatste 30 dagen, met het aantal bestellingen en stuks, en sinds installatie;
- de verkochte voorraad tegen inkoopwaarde;
- de gemiddelde korting van de outletproducten;
- een grafiek van de outletomzet per dag, de bewegingen van de laatste 30 dagen, de verdeling van producten per korting en de vijf best verkochte outletproducten.
Verkopen worden vastgelegd bij de bestelling, voor de producten die op dat moment in de outlet staan. Alleen geldige bestellingen tellen, en bedragen worden omgerekend naar de standaardvaluta. De cijfers starten bij de installatie van de module: er is geen historiek met terugwerkende kracht.
Binnenkort en uitsluitingen
Het tabblad Binnenkort toont de producten die hun instapdrempel bereiken binnen de volgende 7, 14, 30 of 60 dagen, met de korting die ze krijgen, hun voorraad en de inkoopwaarde ervan. Producten met „volgende uitvoering” zijn al over hun drempel. De knop Uitsluiten haalt ze definitief uit de uitverkoop.
Het tabblad Uitgesloten producten accepteert ID’s of referenties gescheiden door komma’s. Een product uitsluiten dat al in de outlet staat, laat het meteen vertrekken. De knop Uitsluiting opheffen maakt het weer geschikt, na de wachttijd voor terugkeer.
Badge en e-mails
Badge
De badge verschijnt op productminiaturen en productpagina’s, naast de native kortingsbadge. U kiest de kleur en de tekst per taal, met live voorbeeld.
Rapport per e-mail
Eenmaal ingeschakeld wordt na elke echte uitvoering die producten in of uit de outlet haalt, of een korting wijzigt, een rapport verzonden. Het toont de betrokken producten met korting en reden. Laat het veld ontvangers leeg om het e-mailadres van de winkel te gebruiken, of vul meerdere adressen in, gescheiden door komma’s. De testknop verstuurt het resultaat van een simulatie.
Lijst van outletproducten
Catalogus > Automatische uitverkoop toont de outletproducten met korting, normale prijs incl. btw, outletprijs incl. btw, voorraad, intredatum en volgende stap (bijvoorbeeld „35 % over 38 dagen”). Vanuit deze lijst kunt u:
- een product uit de outlet halen, dat pas na de wachttijd voor terugkeer terug kan komen;
- een handmatige uitvoering starten;
- de lijst naar CSV exporteren.
Hoe de korting wordt toegepast
De korting is een native specifieke prijs van PrestaShop, voor alle klanten, valuta’s en landen. Het thema toont dus de gebruikelijke doorgestreepte prijs en kortingsbadge. Zonder prijseinde is de korting een percentage. Met een prijseinde is het een bedrag inclusief btw berekend voor het standaardland, en thema’s tonen de besparing dan als bedrag in plaats van als percentage.
De module werkt de prijsindex van de module voor gefacetteerd zoeken bij wanneer die dat toelaat, zodat het prijsfilter klopt. Verandert de basisprijs van een product terwijl het in de outlet staat, dan wordt de specifieke prijs bij de volgende uitvoering herberekend.
Verwijderen en resetten
De knop Alle producten vrijgeven in het tabblad Cronjob haalt alle producten uit de outlet, herstelt hun categorieën en verwijdert hun outletprijzen. Daarna geldt de wachttijd voor terugkeer. Het verwijderen van de module doet hetzelfde voordat de tabellen worden verwijderd. De outletcategorie wordt niet verwijderd.
Probleemoplossing
Geen enkel product gaat de outlet in
Voer een simulatie uit. De sectie Overgeslagen producten toont de producten die de margebeveiliging niet laat afprijzen. De andere filters leveren geen regel in het rapport op: controleer de minimumvoorraad, de optie die producten in de aanbieding negeert, de uitgesloten categorieën en merken, de wachttijd voor terugkeer en een eventuele pauze. Controleer ten slotte of de eerste trede niet langer is dan de ouderdom van uw producten.
Een handmatig verwijderd product komt niet terug
Dat is de wachttijd voor terugkeer. Verkort hem of zet hem op 0 als u niet in de Europese Unie verkoopt.
De outletprijs eindigt niet op ,99
Bij een goedkoop product blijft geen enkel prijseinde binnen 5 punten van de trapkorting: de module houdt dan het exacte percentage. In andere landen dan het standaardland verschuift een ander btw-tarief het prijseinde ook.
De cronjob draait niet
Open de cron-URL in een browser: die moet een JSON-resultaat teruggeven. Een fout 503 wijst meestal op de onderhoudsmodus, een fout 403 op een ongeldig token.
Compatibiliteit
- PrestaShop 8.0 tot 9.x, dezelfde ZIP dekt beide versies.
- Multistore en meertalig.
- Zonder Composer-afhankelijkheden.
- Korting per product, alle combinaties samen.
- Interface beschikbaar in het Frans, Engels, Spaans, Duits, Italiaans, Nederlands, Pools en Portugees.