Dynamische prijsstrategie is lang voorbehouden aan grote retailers met data-teams en dure software. Met Make, Google Sheets en Claude kun je als MKB-webwinkel een vergelijkbaar systeem bouwen voor een fractie van de kosten. In deze handleiding bouw je een volledig geautomatiseerde prijsmonitor die dagelijks concurrentieprijzen ophaalt, analyseert en bijstuurt.
Wat je gaat bouwen
Een geautomatiseerde prijsstrategie-pipeline bestaande uit vier onderdelen: een Google Sheets prijsdatabase als centrale hub, een Make-scenario dat dagelijks concurrentieprijzen scrapt, een Claude-integratie die prijsadviezen genereert en een WooCommerce-koppeling die prijzen automatisch aanpast. Sla- en Slack-alerts houden je op de hoogte van grote afwijkingen.
Stap 1: Google Sheets prijsdatabase opzetten
Maak een nieuw Google Sheets document met drie tabbladen: 'Producten', 'Concurrentieprijzen' en 'Prijsadvies'. In het tabblad Producten definieer je kolommen: SKU, Productnaam, Huidige prijs, Minimumprijs, Maximumprijs, Doelmarge (%), en WooCommerce Product ID.
In het tabblad Concurrentieprijzen voeg je kolommen toe: SKU, Concurrent, Prijs, URL, Datum, Betrouwbaarheidsscore. Dit tabblad wordt automatisch gevuld door Make. Het tabblad Prijsadvies ontvangt de Claude-output: SKU, Geadviseerde prijs, Onderbouwing, Urgentie, Actie genomen.
Stap 2: Make schedule trigger dagelijks instellen
Open Make en maak een nieuw scenario. Voeg als eerste module een 'Schedule' trigger toe. Stel de frequentie in op dagelijks om 06:00 uur. Dit geeft je verse data voor de werkdag. Voeg een tweede interval toe voor 18:00 uur als je ook avondprijzen wilt monitoren.
Configureer de timezone op Europe/Amsterdam. Activeer 'Run scenario immediately when it is activated' zodat je de eerste run direct kunt testen zonder te wachten tot de volgende dag.
Stap 3: Concurrentieprijzen scrapen via HTTP modules
Voeg voor elke concurrent een HTTP 'Make a request' module toe. Gebruik de URL van de productpagina van de concurrent. Stel de methode in op GET en voeg een User-Agent header toe om detectie te beperken. Verwerk de respons via een Parse HTML module of een reguliere expressie om de prijs te extraheren.
Gebruik een reguliere expressie om de prijs te extraheren. Een typisch patroon voor Nederlandse webshops: /\u20ac\s*([\d.,]+)/. Zet de gevonden prijs om naar een getal door komma's te vervangen door punten.
Stap 4: Data normaliseren in Google Sheets
Na het ophalen van de prijzen, voeg je een Google Sheets 'Add a Row' module toe in Make. Map de velden: SKU vanuit je productenlijst, de naam van de concurrent, de gevonden prijs, de bron-URL, en de huidige datum.
Maak ook een aparte Google Sheets 'Get Range Values' module om je eigen minimum- en maximumprijzen op te halen. Deze gebruik je in de volgende stap voor de Claude-analyse.
Stap 5: Claude prijsadvies genereren
Voeg een HTTP module toe die de Anthropic API aanspreekt. Gebruik het claude-3-5-sonnet model voor de beste prijs-kwaliteitverhouding. Bouw een gestructureerde prompt die alle relevante data meestuurt en Claude vraagt om een concreet prijsadvies te geven.
Stap 6: WooCommerce prijs aanpassen via REST API
Wanneer Claude een prijswijziging adviseert, stuur je automatisch een update naar WooCommerce. Gebruik de WooCommerce REST API v3 om de prijs bij te werken. Voeg een filter toe zodat alleen wijzigingen boven 2% worden doorgevoerd om onnodige updates te vermijden.
Stap 7: Slack-alert bij grote afwijkingen
Voeg een filter toe in Make die controleert of de prijswijziging groter is dan 10% of als de urgentie 'hoog' is. Stuur in dat geval een Slack-bericht naar je prijsmonitoring-kanaal. Zo blijf je op de hoogte van grote marktbewegingen zonder continu te hoeven checken.
Stap 8: Wekelijks rapport genereren
Maak een apart Make-scenario dat elke maandag een wekelijks prijsrapport genereert. Dit scenario leest de afgelopen week uit Google Sheets, vat de prijsbewegingen samen via Claude en stuurt het rapport als PDF naar je inbox. Zo houd je overzicht zonder dagelijks in de data te duiken.
Troubleshooting
Prijs niet gevonden: Controleer de reguliere expressie op de productpagina van de concurrent. Prijzen staan soms in JavaScript of achter een login. Gebruik de browser inspector (F12) om de exacte HTML-structuur te bekijken.
WooCommerce geeft 401 terug: Controleer of je Consumer Key en Consumer Secret correct zijn en of de REST API is ingeschakeld in WooCommerce > Instellingen > Geavanceerd > REST API. Zorg dat de API-sleutel lees- en schrijfrechten heeft.
Claude geeft geen geldig JSON terug: Voeg aan de prompt toe: 'Geef ALLEEN JSON terug, geen uitleg of andere tekst.' Gebruik een JSON Parse module in Make om de output te valideren en sla foute responses op in een foutlog.
Make-scenario stopt bij een timeout: Verhoog de timeout in de HTTP module naar 60 seconden. Concurrent websites zijn soms traag. Voeg ook een error handler toe die bij een timeout de vorige bekende prijs gebruikt.
Resultaten en verwachtingen
Webwinkels die dit systeem implementeren rapporteren gemiddeld een marge-verbetering van 3 tot 8 procentpunten in de eerste drie maanden. Het systeem bespaart 2 tot 4 uur handmatig werk per week en reageert sneller op marktveranderingen dan menselijke monitoring mogelijk maakt.
Begin met vijf tot tien kernproducten om het systeem te testen. Breid pas uit als de prijsadviezen consistent logisch aanvoelen en de WooCommerce-koppeling stabiel werkt. Controleer de eerste twee weken dagelijks of de automatische aanpassingen kloppen voor je het volledig op autopiloot zet.