# Sociale bewijskracht: aankoopmeldingen en bezoekers: volledige gids

> Overzicht De module Sociale Bewijskracht: aankoopmeldingen en live bezoekers voegt twee geruststellingsmechanismen toe aan uw productpagina's: discrete meldingen van recente aankopen ("Marie L. kocht dit product 2 u geleden") en…

- Pagina: <https://www.datafirefly.com/nl/documentation/dfsocialproof/>
- Taal: nl
- Bijgewerkt op: 2026-09-10
- Andere talen: [fr](https://www.datafirefly.com/documentation/dfsocialproof/index.md), [en](https://www.datafirefly.com/en/documentation/dfsocialproof/index.md), [es](https://www.datafirefly.com/es/documentation/dfsocialproof/index.md), [de](https://www.datafirefly.com/de/documentation/dfsocialproof/index.md), [it](https://www.datafirefly.com/it/documentation/dfsocialproof/index.md), [pl](https://www.datafirefly.com/pl/documentation/dfsocialproof/index.md), [pt](https://www.datafirefly.com/pt/documentation/dfsocialproof/index.md)
- Index: <https://www.datafirefly.com/nl/documentation/llms.txt>

## Overzicht

De module **Sociale Bewijskracht: aankoopmeldingen en live bezoekers** voegt twee geruststellingsmechanismen toe aan uw productpagina's: **discrete meldingen van recente aankopen** ("Marie L. kocht dit product 2 u geleden") en een **badge met live bezoekers** ("12 mensen bekijken dit product").

Het bijzondere is de **ethische en AVG-by-design-aanpak**: de module toont alleen **daadwerkelijk geplaatste bestellingen** uit uw winkel en **daadwerkelijk aanwezige bezoekers**. Ze verzint nooit iets. De anonimisering wordt **server-side** toegepast vóór elke verzending naar de browser, de tijden worden afgerond, geen enkel ruw klantgegeven wordt blootgesteld en de module plaatst **geen enkele cookie**.

Compatibel met PrestaShop 8.0 tot 9.x, multistore en meertalig (FR/EN/ES/DE/IT inbegrepen), zonder Composer of jQuery. Zijn er geen recente bestellingen of onvoldoende bezoekers, dan toont de module gewoon niets.

## Installatie

1. Open in de back-office **Modules > Modulebeheer**.
2. Klik op **Een module uploaden** en selecteer het bestand `dfsocialproof.zip`.
3. De installatie maakt automatisch de bezoekerstabel aan en registreert de standaardconfiguratiewaarden.
4. De module is meteen actief op de productpagina's met voorzichtige, werkende instellingen.

Geen enkele instelling is verplicht om te starten. Standaard: meldingen over de bestellingen van de laatste 7 dagen, anonimisering "voornaam + initiaal", teller getoond vanaf 3 gelijktijdige bezoekers.

## Configuratie

De pagina **Configureren** is georganiseerd in drie panelen, plus een blok "Privacy by design" dat de garanties van de module samenvat.

### Aankoopmeldingen

- **Aankoopmeldingen activeren**: schakelaar van het eerste mechanisme.
- **Tijdvenster (uren)**: alleen echte bestellingen binnen dit venster worden getoond (standaard 168 u, dus 7 dagen). Zijn er geen, dan verschijnt er niets.
- **Maximaal aantal meldingen**: plafond per paginalading (standaard 5).
- **Anonimiseringsniveau**: drie modi, toegelicht in de volgende sectie.
- **Meegenomen orderstatussen**: meerkeuzelijst (Ctrl/Cmd om er meerdere te kiezen). Alleen bestellingen in deze statussen genereren meldingen; standaard de "gevalideerde" statussen van uw winkel.

### Bezoekersteller

- **Bezoekersteller activeren**: schakelaar van het tweede mechanisme.
- **Telvenster (minuten)**: een bezoeker wordt geteld zolang hij binnen dit venster actief is (standaard 15 min). De records worden daarna automatisch opgeruimd.
- **Minimum aantal bezoekers voor weergave**: onder deze drempel (standaard 3) blijft de badge verborgen om nooit een geïsoleerde bezoeker aan te wijzen.

### Weergave

- **Positie**: hoek waar de meldingen verschijnen (linksonder of rechtsonder).
- **Initiële vertraging (seconden)**: tijd vóór de eerste melding (standaard 4 s).
- **Interval tussen meldingen (seconden)**: tussenruimte tussen twee toasts (standaard 9 s).
- **Weergaveduur (seconden)**: zichtbaarheidstijd van elke toast (standaard 6 s).

De meldingen verschijnen slechts één keer per paginalading: geen eindeloze lus die uiteindelijk irriteert. De bezoeker kan de toasts sluiten en die keuze wordt onthouden voor zijn hele browsersessie.

## De drie anonimiseringsniveaus

Het gekozen niveau geldt voor alle meldingen, en de transformatie gebeurt **op de server**: de browser ontvangt alleen de eindtekst, nooit de brongegevens.

- **Voornaam + initiaal**: "Marie L. kocht dit product". Het meest aansprekend en toch niet-identificerend.
- **Alleen de stad**: "Een klant uit Utrecht kocht dit product". De stad komt uit het leveradres van de bestelling.
- **Volledige anonimiteit**: "Iemand kocht dit product". Het voorzichtigst, geschikt voor gevoelige catalogi.

### Afgeronde relatieve tijden

De getoonde tijdstempels ("2 u geleden", "25 min geleden") worden bewust **afgerond**; de minuten op 5 minuten nauwkeurig. Doel: verhinderen dat een klant heridentificeerbaar wordt door het exacte tijdstip van een bestelling te kruisen met andere informatie. Dit is een privacy-by-design-keuze, geen technische benadering.

## Werking van de bezoekersteller

Elke bezoeker van een productpagina wordt geteld via een **gezouten SHA-256-vingerafdruk** met de geheime sleutel van uw winkel (`_COOKIE_KEY_`). Deze vingerafdruk wordt nooit getoond, nooit aan de browser blootgesteld, en dient uitsluitend om bezoeken te dedupliceren.

- **Geen enkele cookie**: de module plaatst geen cookie en geen local storage om te tellen.
- **Automatische opruiming**: verlopen records worden opportuun uit de database verwijderd, zonder in te stellen crontaak.
- **Waardigheidsdrempel**: onder het ingestelde minimum verdwijnt de badge; een bezoeker alleen wordt nooit aangewezen als "1 persoon bekijkt dit product".
- **Verversing**: de teller wordt elke 60 seconden bijgewerkt via een licht AJAX-verzoek.

## Privacy by design en AVG

- **Alleen echte bestellingen**: nooit verzonnen gegevens. De geloofwaardigheid van uw winkel blijft intact en u blijft aan de goede kant van het consumentenrecht (misleidende handelspraktijken).
- **Server-side anonimisering**: de teksten komen al geanonimiseerd en opgemaakt bij de browser aan. Geen enkel ruw klantgegeven (volledige naam, e-mail, adres) gaat naar de front.
- **AJAX-antwoorden zonder cache**: de headers verhinderen elke tussentijdse opslag van de teksten.
- **Opgeruimde vingerafdrukken**: de bezoekerstabel ruimt zichzelf op, de bewaring blijft beperkt tot het strikt noodzakelijke.
- **Nul cookies, nul externe resources**: niets toe te voegen aan uw toestemmingsbanner voor deze module.

Een paneel "Privacy by design" in de back-office vat deze garanties samen: u kunt het zo aan uw DPO voorleggen of bij uw verwerkingsregister voegen.

## Toegankelijkheid en prestaties

- Toasts aangekondigd met **beleefde aria-live** voor schermlezers.
- Respect voor **prefers-reduced-motion**: de animaties worden uitgeschakeld als de bezoeker daarom vraagt.
- **Dark mode** automatisch ondersteund.
- **Vanilla JS** zonder jQuery, assets alleen geladen op de productpagina: verwaarloosbare impact op de snelheid.

## Technische compatibiliteit

- **PrestaShop**: 8.0 tot 9.x.
- **PHP**: 7.4 tot 8.x.
- **Hooks**: actionFrontControllerSetMedia (front-assets en -configuratie, alleen productpagina) en displayProductAdditionalInfo (bezoekersbadge).
- **Multistore** en **meertaligheid** ondersteund (vertalingen FR/EN/ES/DE/IT inbegrepen).
- Geen Composer-afhankelijkheid, geen jQuery.

## FAQ

### Verzint de module aankopen of bezoekers?

Nee, nooit. De meldingen komen uitsluitend van daadwerkelijk geregistreerde bestellingen, en de teller telt alleen echt aanwezige bezoekers. Zonder gegevens toont de module niets.

### Wat als mijn winkel weinig bestellingen heeft?

Verbreed het tijdvenster (bijvoorbeeld 336 u voor 14 dagen): de meldingen blijven waar, alleen de relatieve tijdstempel is ouder. De module vult een leegte nooit op met valse gegevens.

### Plaatst de teller een cookie?

Nee. Hij steunt op een gezouten SHA-256-vingerafdruk die server-side wordt berekend, nooit wordt blootgesteld en automatisch wordt opgeruimd. Geen extra toestemming te verzamelen.

### Is dit compatibel met PrestaShop 9 en multistore?

Ja, van PrestaShop 8.0 tot 9.x, met native ondersteuning voor multistore.

## Probleemoplossing

- **Geen enkele melding verschijnt**: controleer of er bestellingen zijn binnen het tijdvenster met een van de geselecteerde statussen. Dat is het normale gedrag van de module bij afwezigheid van echte gegevens.
- **De bezoekersteller verschijnt niet**: het aantal actieve bezoekers zit waarschijnlijk onder de minimumdrempel. Verlaag de drempel of test met meerdere browsers/apparaten tegelijk.
- **De meldingen komen niet terug**: heeft de bezoeker een toast gesloten, dan wordt die keuze voor de sessie onthouden. Open een privévenster om opnieuw te testen.
- **De badge wordt niet bijgewerkt**: de verversing gebeurt elke 60 seconden; controleer ook of geen agressieve cache de AJAX-verzoeken van de frontcontroller blokkeert.
