PS PrestaShop Gemiddeld

Ticketing & Evenementen — Complete handleiding

De evenemententicketing installeren, configureren en benutten: evenementen met vrije plaatsing of zitplaatsen, prijszones gekoppeld aan varianten, visueel zaalplan, QR/PDF-tickets en toegangscontrole met scan voor PrestaShop 8 en 9.

Bijgewerkt Moduleversie 1.0.0

Presentatie

DataFirefly Ticketing & Evenementen verandert elk PrestaShop-product in een evenemententicket. De module beheert twee soorten evenementen (vrije plaatsing of zitplaatsen), een visueel zaalplan, de generatie van QR-tickets die als PDF gedownload kunnen worden, en een toegangscontrolescherm met scan. Het bijzondere aan de aanpak: elke plaatscategorie is een productvariant, waardoor PrestaShop de prijzen, btw en facturatie native afhandelt.

Geen externe afhankelijkheden: de QR- en PDF-generatie is in de module ingebouwd. Geen Composer nodig, en de module is compatibel met zowel PrestaShop 8 als 9, in multistore.

Installatie

  1. Download het archief dfeventtickets.zip via uw DataFirefly-account.
  2. Ga in de backoffice naar Modules > Modulebeheer, klik op Een module uploaden en sleep de ZIP erin.
  3. De module installeert zich automatisch: ze maakt haar tabellen aan, haar menutabbladen (onder Klanten > DataFirefly Ticketing) en registreert haar hooks.
  4. Leeg de PrestaShop-cache (Geavanceerde instellingen > Prestaties > Cache legen) na de installatie.

Overschrijf bij een update de bestanden en leeg vervolgens de cache om de classindex van PrestaShop te verversen.

Kernconcepten

Product = ticket

U maakt eerst een standaard PrestaShop-product aan (het “ticket”) en koppelt er vervolgens een evenement aan. Alles wat prijs, btw en factuur betreft, blijft door PrestaShop beheerd.

Prijszone = variant

Elke zone (Gouden vak, Balkon, Staanplaatsen…) verwijst naar een combinatie van het product (id_product_attribute) of naar de basisprijs. Dat garandeert correcte totalen en facturen, zonder parallelle berekening.

Twee soorten evenementen

  • Vrije plaatsing (general): de klant kiest een categorie en een hoeveelheid via het native aankoopblok.
  • Zitplaatsen (seated): de klant kiest zijn plaats op een interactief zaalplan.

Een evenement aanmaken

Ga naar Klanten > DataFirefly Ticketing > Evenementen en klik op Evenement toevoegen. Vul in:

  • het gekoppelde product;
  • het type (vrije plaatsing of zitplaatsen);
  • de begin- en einddatum (formaat JJJJ-MM-DD UU:MM:SS) en de tijdzone;
  • de capaciteit (voor vrije plaatsing);
  • de reserveringsduur (minuten waarin een geselecteerde stoel geblokkeerd blijft, standaard 15);
  • de status actief.

U kunt het aanmaken/bewerken van een evenement ook rechtstreeks openen via het tabblad Ticketing & Evenement van de productpagina.

De prijszones definiëren

Zodra het evenement is opgeslagen, verschijnt het paneel Prijszones onder het formulier. Geef voor elke zone een naam op, de bijbehorende productvariant (of de basisprijs) en een weergavekleur. De werkelijke prijs wordt gelezen uit de PrestaShop-variant.

Maak minstens één zone aan voordat u het zaalplan tekent: elke stoel moet aan een zone worden gekoppeld.

Het zaalplan tekenen

Open voor evenementen met zitplaatsen Zaalplan tekenen. De visuele editor laat u:

  • een blok stoelen genereren (rijen × kolommen, eerste rij en eerste nummer instelbaar), gekoppeld aan een zone;
  • een stoel verplaatsen met drag-and-drop;
  • een stoel in- of uitschakelen (klik): een uitgeschakelde stoel wordt niet verkocht;
  • een stoel verwijderen (dubbelklik);
  • alles wissen om opnieuw te beginnen.

De balk “PODIUM / INGANG” dient als oriëntatiepunt voor uw klanten.

In de winkel: een ticket kopen

Op de productpagina injecteert de module automatisch de juiste widget:

  • Zitplaatsen: een interactief plan waarop de zones gekleurd zijn, de bezette plaatsen grijs en de beschikbare plaatsen klikbaar. De klant selecteert een of meer plaatsen; elke selectie voegt de bijbehorende variant toe aan de winkelwagen en reserveert de stoel tijdelijk.
  • Vrije plaatsing: een beschikbaarheidskader; de aankoop verloopt via het native hoeveelheidsblok.

Als een plaats net door een andere klant is ingenomen, ververst het plan zich en wordt gevraagd een andere te kiezen: geen dubbele verkoop.

QR-tickets & PDF

Zodra de bestelling is gevalideerd en betaald, genereert de module een ticket per daadwerkelijk betaalde plaats, elk met een uniek willekeurig token gecodeerd in een QR. De klant downloadt zijn tickets als PDF (één ticket per pagina) vanuit het besteldetail of zijn klantomgeving. Als TCPDF niet beschikbaar is, wordt een afdrukbare HTML-fallback aangeboden.

Toegangscontrole (scan)

Open op de dag zelf Klanten > DataFirefly Ticketing > Scan. Twee modi:

  • Camera: start de camera en toon de QR van het ticket;
  • Handmatige invoer: plak of typ de ticketcode.

Het resultaat wordt in kleur getoond (geldig, al gebruikt, geannuleerd, ongeldig) en een logboek van de laatste scans helpt het onthaalpersoneel. Een gevalideerd ticket gaat naar gebruikt en kan niet opnieuw worden gebruikt.

Levenscyclus van een ticket

  • reserved: stoel geselecteerd, geblokkeerd tot de reservering verloopt;
  • valid: bestelling betaald en gereconcilieerd (alleen daadwerkelijk betaalde plaatsen worden geldig);
  • used: ticket gescand bij de ingang;
  • cancelled: bestelling geannuleerd of terugbetaald;
  • expired: niet-bevestigde reservering verlopen.

Ticketbeheer in de backoffice

Het tabblad Tickets toont alle tickets met hun evenement, plaats, klant, bestelling, status en uitgiftedatum. De lijst is filterbaar en maakt gegroepeerde annulering mogelijk. Een filter per evenement is beschikbaar vanuit het zonepaneel.

Compatibiliteit & technische aspecten

  • PrestaShop 8.0 tot 9.x, multistore, meertalig (FR, EN, ES, DE, IT);
  • PHP 7.4 tot 8.3;
  • ModuleAdminController-controllers (PS8/9-compatibiliteit, zonder Symfony-controllers);
  • QR (MIT-bibliotheek) en PDF (native TCPDF) ingebouwd, geen Composer-afhankelijkheden.

Probleemoplossing

De selectiewidget verschijnt niet op de productpagina

Controleer of het evenement actief is, aan het juiste product is gekoppeld, en of de module daadwerkelijk aan de hooks van de productpagina is gekoppeld. Leeg de cache.

Er verschijnt een witte pagina na de installatie of update

Leeg de PrestaShop-cache om de classindex opnieuw op te bouwen en herlaad het scherm.

De camera start niet op het scanscherm

De camerascan vereist een beveiligde context (HTTPS) en toestemming voor cameratoegang. Gebruik anders de handmatige invoer van de code.

De prijzen of btw lijken onjuist

Controleer of elke zone naar de juiste productvariant verwijst: PrestaShop berekent prijs en btw op basis van die combinatie.

Was deze pagina nuttig?

Loopt u nog vast? Neem contact op met support