AI Competitor — Prijsmonitoring van concurrenten
Prijsmonitoring van concurrenten met AI-extractie installeren en configureren op PrestaShop 8 en 9.
Presentatie
AI Competitor bewaakt de prijzen van uw concurrenten rechtstreeks vanuit uw PrestaShop-backoffice. Voor elk product van uw catalogus registreert u een of meer concurrent-URL’s; de module bezoekt ze met regelmatige tussenpozen, extraheert de getoonde prijs (met een AI-fallback wanneer de klassieke methoden falen), detecteert significante variaties, waarschuwt u per e-mail en stelt een aangepaste prijs voor volgens uw prijsstrategie.
Compatibel met PrestaShop 8.0 tot 9.x, PHP 7.4 tot 8.3, native multistore. Geen Composer-afhankelijkheden.
Installatie
- Open in uw backoffice Modules → Modulebeheer → Een module uploaden.
- Upload het bestand
dfaicompetitor.zip. - De module installeert zich en maakt automatisch haar drie tabellen aan (
dfaicompetitor_url,dfaicompetitor_price,dfaicompetitor_alert), evenals het menu Catalogus → AI Competitor.
Na de installatie wordt een uniek crontoken gegenereerd. U vindt het terug op het dashboard van de module.
Initiële configuratie
Open Catalogus → AI Competitor. Het dashboard bundelt de statistieken en vier configuratieblokken.
AI-provider
De AI-fallback is optioneel maar sterk aanbevolen: hij neemt het over wanneer een concurrentensite geen gestructureerde gegevens en geen bruikbare selector aanbiedt. Drie providers worden ondersteund:
- Mistral AI (standaard): de voordeligste, aanbevolen model:
mistral-small-latest - Anthropic Claude: de beste precisie op complexe pagina’s, aanbevolen model:
claude-haiku-4-5-20251001 - OpenAI: goed compromis, aanbevolen model:
gpt-4o-mini
Voer de API-sleutel van de gekozen provider in. Ze wordt gemaskeerd weergegeven; laat het veld leeg bij een latere opslag om de bestaande sleutel te behouden. U betaalt de provider rechtstreeks, zonder meerkosten van DataFirefly.
Waarschuwingen
- Notificatie-e-mail: ontvanger van de waarschuwingsdigests en het weekrapport.
- Variatiedrempel: in procenten (standaard 3%). Daaronder wordt geen waarschuwing aangemaakt.
- Dag van het weekrapport: standaard maandag.
Scraping
- URL’s per cronbatch: aantal verwerkte URL’s per uitvoering (standaard 20).
- Standaardinterval: in uren, toegepast op nieuwe URL’s (standaard 24 uur).
- HTTP-timeout en User-Agent: de meegeleverde User-Agent is identificeerbaar (
DataFireflyBot); u kunt hem aanpassen.
Aanpassingsstrategie
Drie strategieën bepalen de voorgestelde prijs, altijd berekend op basis van de goedkoopste concurrent:
- Gelijkstellen: dezelfde prijs als de laagste concurrent.
- Undercut van X%: X% eronder (standaard: 1%).
- Premium van X%: X% erboven, voor een bewuste premiumpositionering.
Concurrent-URL’s toevoegen
Open Catalogus → AI Competitor → Competitor URLs → Toevoegen. Elke regel koppelt een product uit uw catalogus aan een concurrentenpagina:
- Product: geselecteerd uit uw catalogus.
- Naam van de concurrent: vrij label (Amazon, Bol, een webwinkel…).
- URL: het volledige adres van de concurrerende productpagina.
- CSS-selector (optioneel): zie hieronder.
- ISO-valuta: standaard EUR.
- AI-extractie forceren: omzeilt de klassieke methoden voor deze URL.
- Interval: in uren, specifiek voor deze URL.
De knop Scrape op elke regel start een directe extractie, handig om een URL direct na het aanmaken te valideren.
Hoe de extractie werkt
Voor elke URL probeert de module vier methoden in cascade en stopt bij de eerste die slaagt:
- JSON-LD: de gestructureerde Product/Offer-gegevens, aanwezig op de overgrote meerderheid van e-commercesites. De prijs, de valuta en de beschikbaarheid worden direct gelezen, zonder configuratie.
- OpenGraph: de metatags product price amount.
- CSS-selector: als u er een hebt opgegeven. De ingebouwde converter ondersteunt classes, id’s, attribuutselectors en child-combinators. Geldige voorbeelden:
.current-price,.price-box > .amount,span[itemprop=price]. - AI: een opgeschoond HTML-fragment wordt naar uw provider gestuurd, die de prijs, de valuta en de voorraadstatus teruggeeft. Internationale prijsformaten worden ondersteund (1 299,90 — 1.234,56 — $49.99).
Begin altijd zonder CSS-selector: JSON-LD volstaat in de meeste gevallen. Voeg pas een selector of geforceerde AI toe als de kolom Status no_price toont.
De cron configureren
De periodieke scraping steunt op een met een token beveiligd endpoint, getoond op het dashboard. Plan de aanroep elke 30 minuten:
*/30 * * * * curl -s "https://uw-winkel.com/index.php?fc=module&module=dfaicompetitor&controller=cron&token=UW_TOKEN" > /dev/null
Bij elke uitvoering doet de cron het volgende: verwerkt de batch URL’s waarvan het interval is verstreken, verstuurt de openstaande waarschuwingsmails, verzendt het weekrapport als het de juiste dag is, en ruimt oude gegevens op (snapshots > 180 dagen, waarschuwingen > 365 dagen). Het antwoord is een samenvattende JSON.
Het token kan op elk moment opnieuw worden gegenereerd vanaf het dashboard (bestaande crons moeten dan worden bijgewerkt). Handmatig starten kan ook via de knop Run cron now.
Waarschuwingen
Er worden vijf soorten waarschuwingen gegenereerd, elk met een ernstniveau:
- price_drop / price_rise: variatie boven de drempel. Een variatie ≥ 10% wordt critical.
- undercut: een concurrent zakt onder uw verkoopprijs inclusief btw. Altijd critical.
- out_of_stock / back_in_stock: beschikbaarheidsovergangen, gedetecteerd via de gestructureerde gegevens of de AI.
- scrape_error: alleen na 3 opeenvolgende mislukkingen, om ruis van tijdelijke onbeschikbaarheid uit te sluiten.
De waarschuwingen worden gebundeld in één digest-e-mail per cronuitvoering en zijn raadpleegbaar in Reports & Alerts met leesbevestiging (“Acknowledge all”).
Weekrapport
Elke week, op de geconfigureerde dag, vat een HTML-e-mail samen: de meest ondergeprijsde producten, de sterkste prijsdalingen en -stijgingen bij concurrenten, de gezondheid van de scraping, en een door de AI geschreven managementsamenvatting die de te ondernemen acties prioriteert. Een voorbeeld van het lopende rapport is op elk moment zichtbaar in Reports & Alerts, met een knop voor directe verzending.
Prijssuggestie
Selecteer in Reports & Alerts een bewaakt product: de module toont uw huidige prijs, het min/gemiddelde/max van de concurrenten, de bronnen en de voorgestelde prijs volgens uw strategie. De knop Toepassen schrijft de prijs weg naar het PrestaShop-product.
De toepassing gebeurt nooit automatisch. Dat is een bewuste keuze om spiegelende prijsdalingsspiralen te voorkomen tussen concurrenten die hetzelfde soort tool gebruiken. De omrekening van inclusief naar exclusief btw gebeurt automatisch volgens het btw-tarief van het product.
Probleemoplossing
Status “no_price”
Geen van de methoden heeft een prijs gevonden. Controleer de URL in een browser, voeg een CSS-selector toe die naar het prijselement wijst, of activeer “AI-extractie forceren” voor deze URL.
Status “error”
De pagina antwoordde niet (HTTP ≥ 400 of timeout). Sommige sites blokkeren robots: pas de User-Agent aan in de configuratie, verhoog de timeout of vergroot het interval. Een waarschuwing wordt pas bij de 3e opeenvolgende mislukking verstuurd.
De AI-extractie werkt niet
Controleer of de API-sleutel geldig is en of het model bij uw provider bestaat. AI-aanroepfouten worden gelogd in Geavanceerde instellingen → Logs met het voorvoegsel [dfaicompetitor].
De e-mails komen niet aan
Test de e-mailconfiguratie van PrestaShop (Geavanceerde instellingen → E-mail). De module gebruikt het native mailsysteem met eigen FR/EN-templates.
Goede praktijken en conformiteit
- Kies ruime intervallen (6 tot 24 uur per URL volstaat voor prijsmonitoring) om de servers van concurrenten niet onnodig te belasten.
- Behoud een identificeerbare User-Agent: dat is de loyale praktijk die bij concurrentiemonitoring wordt verwacht.
- Het lezen van publieke prijzen is in Europa doorgaans toegestaan, maar u blijft verantwoordelijk voor het gebruik van de verzamelde gegevens.