De catalogus is waaruit Personyze aanbeveelt: elk item dat een widget kan tonen, met de titel, prijs, afbeelding, link en voorraad waarmee het wordt getoond. De veldnamen erin zijn de namen waarnaar widgets, filters en targetingregels verwijzen. Producten en artikelen werken op dezelfde manier; alles hieronder geldt voor beide.
Waar: Instellingen → Aanbevelingen instellen → Productcatalogus (of Artikelcatalogus). De stap Catalogus van een aanbevelingscampagne toont hetzelfde scherm.
Wat het scherm je vertelt
Het scherm beantwoordt “staat mijn data erin?” door te kijken, niet door opnieuw te importeren. Van boven naar beneden:

| Rij | Wat het je vertelt |
|---|---|
| Je catalogus | Hoeveel producten er zijn (klik op het getal om ze te zien), Laatste geslaagde synchronisatie en Laatst gecontroleerd. Producten importeren is de hoofdknop; onder Data-instellingen vind je het veldbeheer en de extra hulpmiddelen. |
| Feeds die hem synchroon houden | De feeds die de catalogus vernieuwen, met één status — In orde, Wacht op eerste uitvoering, Wacht op koppeling, Mislukt of Wordt niet uitgevoerd — en of e-mailmeldingen aanstaan. Met Feed toevoegen start je er een. |
| Velden die de engine gebruikt | Hoeveel van de catalogus elk veld heeft: op voorraad, afbeelding, prijs, productlink, categorie, in de aanbieding — met hoeveel items het missen. Een veld dat elk item nodig heeft, wordt gemarkeerd onder de 90%. |
| Gedrag op de site | De weg naar Producttracking: weergaven, toevoegingen aan de winkelwagen en aankopen. |
| Aankoopgeschiedenis | Geschiedenis uploaden — eerdere bestellingen, zodat de engine begint met wat al samen verkocht werd. |
| Uit je feed | Hoeveel categorieën en interesses er met de feed zijn binnengekomen, met Categorieën bekijken en Interesses bekijken (Interesses toevoegen als er geen zijn). |
| Vergelijkbare items (AI) | Paren van item naar item op basis van betekenis, elke nacht berekend zolang de functie aanstaat (Data-instellingen → Vergelijkbare items (AI)). Nog geen paren tot de eerste run. |
| Handmatige aanbevelingsregels | Regels bekijken opent handmatige cross-sell-koppelingen, handmatige up-sell-koppelingen en systeemgegenereerde cross-sell (seeddata) — zie Beheerde cross-sells en up-sells. |
Alleen de catalogus zelf is vereist. Alles onder Optioneel, als je de engine wilt bijsturen mag leeg blijven — de engine kiest dan zelf.
Manieren om hem te laden
| Pad | Wanneer |
|---|---|
| URL-feed | Je bestaande productfeed — een Google Merchant-feed werkt zoals hij is. Personyze leest hem opnieuw volgens het schema dat je instelt, zodat voorraad en prijzen actueel blijven. De gebruikelijke keuze. |
| Bestand uploaden | CSV, TSV of XLSX. Prima voor een eerste opzet of een catalogus die zelden verandert; upload opnieuw om bij te werken. |
| SFTP-push | Je exporttaak zet products.csv in je SFTP-map, en het bestand wordt vanzelf geïmporteerd. |
| JSON API | Push items vanuit je backend: producten / artikelen. Records met dezelfde interne ID worden samengevoegd, dus opnieuw versturen is veilig. |
| Sitecrawl | Personyze bezoekt je productpagina’s en bouwt de catalogus uit de productgegevens die ze voor zoekmachines publiceren (schema.org, Open Graph). Data-instellingen → Mijn site crawlen. |
Templates, de opmaakregels, de SFTP-instelling en de koppelstap staan in Feeds en databestanden uploaden. Winkels op Shopify en WordPress / WooCommerce: zie de handleidingen voor Shopify en WordPress.
Welke velden ertoe doen
| Veld | Waarom |
|---|---|
| Intern ID | De sleutel waarop alles wordt gekoppeld: de id die je tracking meestuurt met weergaven, toevoegingen aan de winkelwagen en aankopen moet deze waarde zijn. Is er geen interne ID gekoppeld, dan leidt Personyze er een af uit de URL van de productpagina. |
| Titel, URL hoofdafbeelding, URL productpagina | Wat een kaart toont, en waar een klik erop naartoe gaat. |
| Prijs, Actieprijs | Prijzen en kortingsbadges. Een actieprijs die gelijk is aan de prijs toont geen korting. |
| Op voorraad | Items die niet op voorraad zijn, worden niet aanbevolen — en een item zonder voorraadwaarde ook niet. Gebruik yes / no, true / false, 1 / 0, of “in stock” / “out of stock”. |
| Categorieën, Merk | Categorielogica, filters, en de categorie-aanbevelers. Categoriewaarden moeten overeenkomen met wat je categorietracking verstuurt. |
| Al het andere | Elke andere kolom kan een veld worden — om op een kaart te tonen, op te filteren of op te targeten. Met Data-instellingen → Velden beheren voeg je op elk moment velden toe. |
Bundelprijzen: de prijzen en het totaal die een Buy Together-widget toont, komen uit deze catalogus; een korting voor het samen kopen van items moet je winkel zelf toepassen.
Twee sleutels, niet één
Een product kan twee sleutels hebben — interne ID en SKU — zodat events op de site worden gekoppeld, welke identificatie je site ook toevallig verstuurt. Een tracking-push noemt de sleutel die hij gebruikt:
(self.personyze=self.personyze||[]).push(['Product Viewed', "PRODUCT_SKU", 'key', 'sku']);
Welke kolom is je interne ID?
Dit fout hebben is de duurste vergissing in een feed: de catalogus raakt gevuld, widgets verschijnen, en niets komt overeen met wat bezoekers echt bekeken. Daarom beantwoordt de koppelstap het met bewijs. Welke kolom is je interne ID? vergelijkt elke kolom met de ID’s die je site al verstuurt en zegt wat het heeft gemeten — bijvoorbeeld “komt overeen met 96% van de ID’s die je site al verstuurt” of “geen van deze waarden komt voor in wat je site verstuurt”. Een label naast het antwoord zegt hoe zeker het is:
| Label | Betekenis |
|---|---|
| gemeten | Gecontroleerd tegen echte events van je site — het antwoord om op te vertrouwen. |
| van je site | Er was geen match om te meten — nog geen events, of geen die passen — dus werd een van je itempagina’s gelezen en de id gevonden die daar gepubliceerd staat. |
| beste gok | Geen events en geen pagina om te lezen — een gok op basis van de vorm van het bestand, en dat staat er ook bij: “vergelijk het met wat je site verstuurt”. |
Controleer voordat je importeert
De laatste stap, Klaar om te importeren, kan de import als proefrun uitvoeren die niets opslaat: Snelle controle leest de eerste 500 rijen, Alle rijen controleren leest ze allemaal. Het rapporteert hoeveel rijen nieuw, gewijzigd en ongewijzigd zouden zijn, de Velden die zouden veranderen, en tot vijf voorbeelden van voor en na. (De importwizards voor tracking en gebruikersdata noemen dezelfde controle Wijzigingen vooraf bekijken.)
Veelvoorkomende valkuilen
- ID’s komen niet overeen met interacties — de interne ID van de feed moet gelijk zijn aan wat je interactietracking verstuurt. SKU versus id is de klassieke verwarring; stuurt je site SKU’s, koppel dan ook de SKU-kolom.
- Relatieve afbeeldings-URL’s — gebruik absolute URL’s zodat widgets ze overal kunnen tonen.
- Uitverkochte items verwijderen — houd ze in de feed, gemarkeerd als niet op voorraad. Ze worden dan niet meer aanbevolen, en hun geschiedenis blijft bewaard.
- Een feed die ongemerkt stopt — open de feed en zet Mail mij als deze feed stopt met synchroniseren aan.
Gerelateerd
- Feeds en databestanden uploaden — hoe importeren werkt, templates, SFTP.
- Tracking van productinteracties — de events waartegen de catalogus wordt gematcht.
- Eerdere en offline transacties uploaden — aankoopgeschiedenis.
- Beheerde cross-sells en up-sells — paren die je zelf vastlegt, en seedsets.
- Interesses voor aanbevelingen
- Aanbevelingen — begin hier