Personyze Wiki Personyze Wiki docs
Nederlands
Open Personyze
Docs/ Feeds en uploads/ Feeds en databestanden uploaden (catalogus, interesses, content, gebruikers)
Feeds en uploads

Feeds en databestanden uploaden (catalogus, interesses, content, gebruikers)

Hoe je data in Personyze laadt — productcatalogi, contentcatalogi, interesses en gebruikerslijsten — via een geüpload bestand, een URL-feed, SFTP of de API, met de CSV-opmaakregels die het laten werken.

25 min read Updated 16 hours ago

Data in Personyze laden

Waar data nu staat. Elk soort data heeft een eigen scherm in het paneel, en elk daarvan opent dezelfde wizard Data importeren uit een bestand of feed (op een catalogusscherm openen Producten importeren / Artikelen importeren of Feed toevoegen hem). Ga naar het scherm voor wat je laadt:

Wat je uploadt Waar je het uploadt
Productcatalogus (voor productaanbevelingen) — incl. productinteresses / affiniteitstags als kolommen Instellingen → Aanbevelingen instellen → Productcatalogus
Content-/artikelcatalogus (voor contentaanbevelingen) Instellingen → Aanbevelingen instellen → Artikelcatalogus
Eerdere / offline transacties (aankoopgeschiedenis) Instellingen → Aanbevelingen instellen → Producttracking
Eerdere contentinteracties (geschiedenis van gelezen / bekeken artikelen) Instellingen → Aanbevelingen instellen → Artikeltracking
Gebruikerslijsten / CRM-records, profielvelden, sessieattributen Instellingen → Geïmporteerde gebruikersdata (de lijsten en hun imports) · Instellingen → Bezoekersattributen (de profielvelden die ze vullen)

De schermen onder Aanbevelingen instellen verschijnen zodra producten of artikelen voor je account zijn ingeschakeld. De wizard, de afleveringsmethoden en de opmaakregels zijn op elk scherm hetzelfde — deze pagina is het gedeelde naslagwerk; alleen de kolommen verschillen.

De wizard Data importeren uit een bestand of feed — stap 1, Uploadbron, met de opties Bestand uploaden, URL-feed, SFTP-push en JSON API
De wizard Data importeren uit een bestand of feed (stap 1, Uploadbron): kies een bestand, een URL-feed, SFTP of de JSON API. Het is dezelfde wizard op elk datascherm. Klik om te vergroten.

Bijna alles waarop Personyze personaliseert, kun je aanleveren als databestand — een productcatalogus voor aanbevelingen, een contentcatalogus voor artikelaanbevelingen, productinteresses voor cross-sell en targeting op affiniteit, gebruikerslijsten uit je CRM, en meer. Ze gaan allemaal door dezelfde wizard Data importeren uit een bestand of feed; alleen de kolommen verschillen.

Deze pagina behandelt hoe je het bestand erin krijgt — de afleveringsmethoden, de opmaakregels waar mensen over struikelen, en de koppelstap — met echte, in de praktijk geteste voorbeelden.

Download een voorbeeldfeed

Begin met een kant-en-klaar bestand in plaats van een lege pagina. Elke template heeft de juiste kolomkoppen, de juiste aanhalingstekens en een paar voorbeeldrijen in precies de opmaak die de importer verwacht — vervang de voorbeeldrijen door je eigen data en upload. Alle templates gebruiken placeholder-URL’s met example.com en algemene demoproducten.

Feed Kolommen Downloaden
Productcatalogus
Voor productaanbevelingen — de kernkolommen.
Internal ID, SKU, Title, Product Page URL, Main Image URL, Price, Sale Price, Is in Stock, Rating, Category, Brand 📥 CSV downloaden
Productfeed (Google / TSV)
Feed in de stijl van Google Shopping — direct bruikbaar als URL-feed.
id, title, link, image_link, price, sale_price, availability, brand, product_type, gtin 📥 TSV downloaden
Contentcatalogus
Voor aanbevelingen van artikelen / video’s.
Internal ID, Title, Content Page URL, Main Image URL, Content Type, Category, Author, Published Date 📥 CSV downloaden
Productinteresses
Affiniteitstags per product voor cross-sell & targeting.
Id, Interest (quoted, comma-separated), Category 📥 CSV downloaden
Eerdere transacties
Aankoopgeschiedenis — koppelt gebruikers aan producten die ze kochten.
Order Date, Email, Customer Id, Product Id, SKU, Quantity, Amount 📥 CSV downloaden
Gebruikerslijst / CRM
Profielvelden met een e-mailadres of gebruikers-ID als sleutel.
User Id, Email, First Name, Last Name, Account Type, Industry, Lifetime Value, Signup Date 📥 CSV downloaden

De .tsv -template wordt gedownload als .txt (tabs blijven behouden) — hernoem hem naar .tsv als je tools dat verwachten, of upload hem zoals hij is.

Klik je er liever doorheen? Hier is de hele flow — kies een bron, maak het bestand op, koppel de kolommen, importeer. Het uitgebreide naslagwerk staat hieronder.

Een feed uploaden
Kies hoe de data binnenkomt

Kies hoe de data binnenkomt

Ga naar het scherm voor wat je laadt — Instellingen → Aanbevelingen instellen → Productcatalogus / Artikelcatalogus / Producttracking, of Instellingen → Geïmporteerde gebruikersdata — en open Data importeren uit een bestand of feed. Kies een bron: een bestand uploaden (eenmalig), een URL-/RSS-/Atom-feed of SFTP (blijft synchroon), of de JSON API (realtime). Overal dezelfde wizard — alleen de velden verschillen.

💡 Een bestand is een momentopname; een URL-/SFTP-/API-feed synchroniseert steeds opnieuw volgens een schema.
Het bestand opmaken

Het bestand opmaken

De importer is kommagescheiden. Elke cel die zelf een komma bevat — een lijst interesses, meerdere categorieën — moet tussen dubbele aanhalingstekens staan, anders wordt hij in extra kolommen opgesplitst. Al het andere is gewone CSV.

💡 Het aantal “N bronkolommen gedetecteerd” in de volgende stap is je controle op het inlezen — vertrouw dat meer dan hoe het bestand er in Excel uitziet.
De kolommen koppelen

De kolommen koppelen

Koppel elke gedetecteerde kolom aan een veld van Personyze. Eén sleutel is verplicht — een Intern ID (of de URL van de productpagina). Koppel de rest aan hun velden; voeg eventueel Voorbewerking of een Masker toe om een waarde onderweg op te schonen.

💡 De sleutel moet overeenkomen met de sleutel van je catalogus. “Importeert prima maar matcht niets” is bijna altijd een verkeerde sleutel.
Controleren & importeren

Controleren & importeren

Bevestig de koppeling en start de import. Een bestand wordt één keer geladen; een URL-, SFTP- of API-feed blijft vanaf hier synchroniseren — hij wordt opnieuw gelezen volgens het schema dat je instelt, zodat voorraad, prijzen en nieuwe records actueel blijven.

Kies hoe de data binnenkomt

Kies hoe de data binnenkomt

Ga naar het scherm voor wat je laadt — Instellingen → Aanbevelingen instellen → Productcatalogus / Artikelcatalogus / Producttracking, of Instellingen → Geïmporteerde gebruikersdata — en open Data importeren uit een bestand of feed. Kies een bron: een bestand uploaden (eenmalig), een URL-/RSS-/Atom-feed of SFTP (blijft synchroon), of de JSON API (realtime). Overal dezelfde wizard — alleen de velden verschillen.

💡 Een bestand is een momentopname; een URL-/SFTP-/API-feed synchroniseert steeds opnieuw volgens een schema.
Het bestand opmaken

Het bestand opmaken

De importer is kommagescheiden. Elke cel die zelf een komma bevat — een lijst interesses, meerdere categorieën — moet tussen dubbele aanhalingstekens staan, anders wordt hij in extra kolommen opgesplitst. Al het andere is gewone CSV.

💡 Het aantal “N bronkolommen gedetecteerd” in de volgende stap is je controle op het inlezen — vertrouw dat meer dan hoe het bestand er in Excel uitziet.
De kolommen koppelen

De kolommen koppelen

Koppel elke gedetecteerde kolom aan een veld van Personyze. Eén sleutel is verplicht — een Intern ID (of de URL van de productpagina). Koppel de rest aan hun velden; voeg eventueel Voorbewerking of een Masker toe om een waarde onderweg op te schonen.

💡 De sleutel moet overeenkomen met de sleutel van je catalogus. “Importeert prima maar matcht niets” is bijna altijd een verkeerde sleutel.
Controleren & importeren

Controleren & importeren

Bevestig de koppeling en start de import. Een bestand wordt één keer geladen; een URL-, SFTP- of API-feed blijft vanaf hier synchroniseren — hij wordt opnieuw gelezen volgens het schema dat je instelt, zodat voorraad, prijzen en nieuwe records actueel blijven.

Het catalogusscherm

Wat de schermen Productcatalogus en Artikelcatalogus tonen — de feeds en hun
status, de velden die de engine gebruikt, categorieën, interesses en de handmatige regels — staat beschreven in
De product-/contentfeed instellen.
Data komt op de vier manieren hieronder in een catalogus — een bestand uploaden, een URL-feed, SFTP of de REST API —
of via een crawl van je site (Data-instellingen → Mijn site crawlen).

Twee sleutels, niet één

Producten kunnen aan maximaal twee sleutels worden gekoppeld — interne ID en SKU — zodat events op de site worden
gekoppeld, welke identificatie je site ook toevallig uitstuurt. Eigen velden kun je op elk moment toevoegen; niets hoeft
vooraf te worden gedeclareerd.

Welke kolom is je interne ID?

Dit fout hebben is de duurste vergissing in een feed: de catalogus raakt gevuld, de aanbevelingen verschijnen,
en niets komt overeen met wat bezoekers echt bekeken. Daarom beantwoordt de importer het met bewijs in plaats van met een gok.

Hij vergelijkt elke kandidaatkolom met de ID’s die je site al verstuurt en meldt wat hij
mat — “komt overeen met 96% van de ID’s die je site al verstuurt”, “geen van deze waarden
komt voor in wat je site verstuurt”
, “checked across the first 500 rows”. Kolommen die helemaal geen
sleutel kunnen zijn — leeg in elke steekproefrij, ontbrekend in sommige rijen, gelijk aan een andere kolom — worden
als zodanig gemarkeerd.

Waar hij geen overeenkomst kan meten, valt hij terug, en een label naast het antwoord zegt op welke trede hij staat:

  • gemeten — gecontroleerd tegen echte events; het antwoord waarop je kunt vertrouwen.
  • van je site — “Er zijn nog geen product-gebeurtenissen binnengekomen, dus lazen we een van je
    itempagina’s”
    .
  • beste gok — alleen op basis van de vorm van het bestand, en dat staat er ook bij: “vergelijk het met
    wat je site verstuurt”
    .
Koppel de URL én de id. De adviseur biedt beide aan met één klik — Beide toewijzen — “id” als interne ID en “link” als Product-pagina-URL — omdat ze verschillend werk doen. De id is wat winkelwagen- en aankoopevents meedragen; de URL laat targeting weten welke pagina’s productpagina’s zijn. Koppel je alleen de id, dan heeft targeting op productpagina’s niets om op te matchen.

Vooraf bekijken voordat je importeert

De samenvatting Klaar om te importeren kan een proefrun uitvoeren die niets wegschrijft en je vertelt wat de echte run zou
doen. Op de catalogusschermen is dat Snelle controle (de eerste 500 rijen) of Alle rijen controleren; de
importwizards voor tracking en gebruikersdata noemen het Wijzigingen vooraf bekijken. Het meldt:

  • Hoeveel rijen nieuw, gewijzigd en ongewijzigd zijn. Deze aantallen komen bij elke run mee, niet alleen bij de
    proefrun.
  • Welke kolommen zouden veranderen — zodat een fout in de koppeling zichtbaar wordt als “de prijs van elke rij
    zou veranderen” in plaats van als een stille overschrijving.
  • Tot vijf voorbeelden van voor en na, en tot vijf van de nieuwe sleutels. Bewust
    beperkt: een voorbeeld van een hele catalogus zou geen megabyte aan waarden naar de browser moeten sturen.
Een hoog aantal “nieuw” bij een herimport is de waarschuwing. Een catalogus die je al hebt opnieuw importeren zou bijna helemaal ongewijzigd moeten zijn. Is bijna elke rij nieuw, dan is de sleutelkolom fout, en de controle is waar dat duidelijk wordt in plaats van pas nadat de catalogus verdubbeld is.

Vier manieren om een feed aan te leveren

In de eerste stap van de wizard (Uploadbron) kies je hoe de data Personyze bereikt. De keuze gaat eigenlijk over hoe vaak hij verandert.

De vier manieren om een feed naar Personyze te sturen: een bestand uploaden, een URL-/RSS-/Atom-feed, SFTP-push of JSON API-push
Bestand uploaden — CSV, TSV of XLSX vanaf je computer. Een momentopname; het beste voor eenmalige lijsten en kleine exports.
URL-/RSS-/Atom-feed — vul een openbare URL in; Personyze bevraagt die volgens het schema dat je kiest (elke dag of elke week). Het beste voor een catalogus of lijst die je platform of een feeddienst actueel houdt.
SFTP-push — je zet bestanden op een ingesteld SFTP-adres. Het beste voor grote nachtelijke exports uit een datawarehouse.
JSON API-push — POST records in realtime vanuit je backend.
  • Eenmalig of klein → upload een bestand. De snelste manier om een lijst één keer te laden.
  • Automatisch actueel → URL-feed. Laat Personyze naar een live feed-URL wijzen — een Google Shopping-feed, een export van een feeddienst, de productfeed van je platform — en hij leest die volgens een schema opnieuw, zodat voorraad, prijzen en nieuwe producten actueel blijven zonder dat je opnieuw uploadt. Dit is de gebruikelijke keuze voor een productcatalogus.
  • Groot & gepland → SFTP. Voor grote nachtelijke dumps waar een openbare URL niet gepast is. Je kunt je eigen SFTP-account instellen in een paar klikken — je hoeft het aan niemand te vragen.
  • Realtime & je beheert de backend zelf → API-push. POST records zodra ze veranderen.

Een live URL-, SFTP- of API-feed blijft na de eerste import synchroniseren; een geüpload bestand is een momentopname die je opnieuw uploadt om te vernieuwen.

SFTP-bestandsaanlevering — bestanden pushen en vergeten

SFTP is de optie waar je niet naar om hoeft te kijken. Je krijgt een privé-uploadaccount, je exportscript zet bestanden in de map /upload en elke nieuwe upload wordt automatisch geïmporteerd, een paar minuten nadat hij klaar is. Niemand hoeft iets aan te klikken in het paneel.

Waar je het vindt: je SFTP-inloggegevens staan onder Instellingen → Siteprofiel → Geavanceerde instellingen, in de sectie SFTP-bestandsaanlevering — dat is de pagina die je opent als je de host, de gebruikersnaam of een nieuw wachtwoord nodig hebt. Dezelfde kaart met inloggegevens verschijnt ook overal waar de importwizard SFTP als bron aanbiedt: Product- en Artikeltracking, de schermen Productcatalogus en Artikelcatalogus, en Geïmporteerde gebruikersdata.

De sectie SFTP-bestandsaanlevering van het siteprofiel: de knop SFTP-toegang instellen, en een tabel die bestandsnamen zoals products.csv en users.csv koppelt aan waarin ze worden geïmporteerd
Instellingen → Siteprofiel → Geavanceerde instellingen → SFTP-bestandsaanlevering. Eén knop stelt het account in; de tabel eronder is de hele routeringsregel — de bestandsnaam bepaalt wat een upload wordt. Klik om te vergroten.

Het account instellen

  1. Klik op SFTP-toegang instellen.
  2. Personyze maakt een privéaccount voor je aan. Terwijl het bezig is, staat er “Je SFTP-account wordt ingesteld — meestal binnen 5 minuten”, en zodra het klaar is, vult het zichzelf in. Je kunt de pagina verlaten en later terugkomen.
  3. De kaart toont daarna je Host (sftp://sftp.personyze.com), Gebruikersnaam en Wachtwoord — met de knoppen Tonen en Kopiëren.

Eén account dient elk bestandstype hieronder, en het hoort bij dit siteprofiel. Zet alle bestanden in de map /upload — bestanden ergens anders worden niet opgepakt.

De kaart van het SFTP-uploadaccount met de host, een gebruikersnaam, een gemaskeerd wachtwoord met de knoppen Tonen en Kopiëren, de opmerking om in de map /upload te uploaden, en een link Wachtwoord roteren
Zodra het account bestaat, toont de kaart alles wat je nodig hebt om te verbinden (deze schermafbeelding toont de oudere hostnaam; bij jou staat er sftp://sftp.personyze.com). Het wachtwoord blijft gemaskeerd tot je op Tonen of Kopiëren klikt. Klik om te vergroten.
Het wachtwoord wordt pas opgehaald als je op Tonen of Kopiëren klikt, nooit samen met de pagina zelf — het blijft buiten de paginabron en de logs. Wachtwoord roteren geeft een nieuw wachtwoord uit en het oude werkt binnen een paar minuten niet meer, dus wijzig het tegelijk in je exporttaak. Is je account in het verleden handmatig door support ingesteld, dan is er geen opgeslagen wachtwoord om te tonen; roteer het één keer en je hebt er een dat je kunt zien.

De bestandsnaam bepaalt wat een upload is

Er is geen configuratie per upload. De importer stuurt elk bestand door op basis van zijn naam; de extensie vertelt alleen de opmaak. Enkelvoud en meervoud werken allebei — product.csv is hetzelfde als products.csv.

Bestandsnaam Importeert in
products.csv / product.csv Productcatalogus
articles.csv / article.csv Artikelcatalogus
users.csv Geïmporteerde gebruikerslijsten (gebruikersfeed)
products_interactions.csv / product_interactions.csv Productinteractie-geschiedenis
articles_interactions.csv / article_interactions.csv Artikelinteractie-geschiedenis
products_cross.csv / product_cross.csv Product-naar-product-koppelingen
articles_cross.csv / article_cross.csv Artikel-naar-artikel-koppelingen

Geaccepteerde extensies: .csv, .json, .xml, .xls, .xlsx. Een nieuwer bestand opnieuw uploaden importeert het opnieuw — het nieuwste passende bestand wint — dus een nachtelijke taak kan gewoon elke keer dezelfde naam overschrijven.

De eerste upload: één keer koppelen

Een bestand moet worden gekoppeld voordat er iets uit wordt geïmporteerd — Personyze moet te horen krijgen welke kolom wat bevat. Dat stel je niet vooraf in: zet eerst het bestand neer, en het paneel komt naar jou toe.

Binnen een paar minuten nadat de upload klaar is, verschijnt er een banner op het doelscherm — voor users.csv is dat Instellingen → Geïmporteerde gebruikersdata:

In je SFTP-map: users.csv
1 KB · geüpload 36 min geleden
Nog niet gekoppeld, dus er wordt niets uit geïmporteerd: Personyze heeft niet te horen gekregen welke kolom van het bestand wat bevat.

Ernaast staan twee knoppen: Opnieuw controleren, die de map opnieuw scant, en Dit bestand koppelen, die de koppeling opent.

Het koppelvenster

“users.csv” uit je SFTP-map koppelen toont alles wat het uit het bestand zelf heeft afgeleid:

  • Lijstnaam (alleen bij gebruikersfeeds) — iedereen in het bestand komt in deze lijst, en op de lijst targeten je campagnes. Je hoeft hem niet vooraf aan te maken; door hem hier een naam te geven, maak je hem aan.
  • Een rij per kolom, met de kolom in bestand, het profielveld waaraan hij is gekoppeld, en voorbeeldwaarden uit je echte bestand — zodat je in één oogopslag ziet dat CRM ID echt op SFTP-TEST-1 terechtkwam en niet op iets anders.
  • Een samenvattende regel: hoeveel kolommen er zijn gevonden, hoeveel er zijn gekoppeld, en hoeveel rijen het bestand bevat. Alles wat op Negeren blijft staan, wordt niet geïmporteerd.

Klik op De koppeling opslaan en het bestand wordt geïmporteerd. Dat is een eenmalige stap per bestandsnaam — vanaf dan wordt elke upload van users.csv vanzelf geïmporteerd met dezelfde koppeling.

Zolang een bestand niet is gekoppeld, gebeurt er niets — en niets laat je script dat weten. De upload zelf is gelukt, dus een exporttaak ziet een succes terwijl de data ongelezen blijft liggen. Heb je een bestand gepusht en zijn de cijfers niet veranderd, open dan het doelscherm en zoek de banner hierboven.
Zodra een feed draait, kun je op hetzelfde scherm Mail mij als deze feed stopt met synchroniseren aanzetten — de goedkoopste manier om te merken dat de export van afgelopen nacht nooit is aangekomen. De lijst met bronnen kun je ook filteren op waar elke bron vandaan kwam: Geüpload, RSS / Atom, SFTP of API-push.

De opmaakregel die het meest telt

De bestandsimporter van Personyze is kommagescheiden, en dat kun je in de uploadstap niet veranderen. Dat ene feit bepaalt elke beslissing over de opmaak:

  • Kolommen worden gescheiden door komma’s. Niet door puntkomma’s, niet door verticale strepen, niet door tabs (voor een echte tabgescheiden feed, zie de opmerking over TSV hieronder).
  • Bevat een waarde in een cel een komma, dan moet die cel tussen dubbele aanhalingstekens staan, anders splitst de importer hem op in extra kolommen.

Dit is gewone CSV, maar het is de meest voorkomende reden dat een import zich misdraagt, dus het is de moeite waard om het duidelijk te zeggen.

Uitgewerkt voorbeeld: productinteresses

Interesses zijn een lijst tags per product — gebruikt voor cross-sell, affiniteitssegmenten en aanbevelingen op basis van interesses. De opmaak die werkt, is twee kolommen, Id en Interest, met de interesses kommagescheiden in een cel tussen aanhalingstekens:

Id,Interest
NW-1001,"Sneakers,Footwear,Casual,Running"
NW-1002,"Backpack,Bags,Commuting,Canvas"
NW-1003,"Headphones,Audio,Wireless,Electronics"

De cel Interest van elk product bevat een andere set tags. Dankzij de aanhalingstekens overleven de komma’s binnenin. Zonder aanhalingstekens wordt NW-1001,"Sneakers,Footwear,Casual,Running" vijf kolommen in plaats van twee, en de import mislukt.
📥 Download het voorbeeldbestand met interesses — open het in een gewone teksteditor (geen spreadsheet) om de aanhalingstekens precies te zien zoals de importer ze nodig heeft.

Scheidingstekens — wat werkt en wat niet

Doel Werkt het? Hoe
Interesses kommagescheiden in één cel Ja Zet de cel tussen aanhalingstekens: "Sneakers,Footwear,Running"
Interesses verdeeld over één kolom per interesse Ja Koppel elke interessekolom aan hetzelfde veld Interesses
Verticale streep / schuine streep / puntkomma tussen interesses Nee Het veld Interesses accepteert alleen komma’s
Puntkomma als kolomscheidingsteken Nee De uploadstap staat vast op komma
Komma’s zonder aanhalingstekens in een cel Nee De importer splitst ze op in nieuwe kolommen

Opmerking over TSV: de wizard accepteert .tsv, en een echte tabgescheiden feed (zoals een Google Shopping-feed) wordt probleemloos geïmporteerd — tabs zijn het scheidingsteken, dus komma’s in beschrijvingen zijn gewoon tekst. De kommaregel hierboven gaat specifiek over kommagescheiden bestanden.

Hetzelfde idee voor een categorieveld

Het patroon van een komma in een cel tussen aanhalingstekens is niet alleen voor interesses — elk veld met meer dan één waarde werkt op dezelfde manier. Een veld categorie is het gebruikelijke tweede geval. Twee manieren om het weer te geven, allebei geldig:

  • Een hiërarchisch pad in één cel — de conventie van Google-feeds, met > tussen de niveaus. Geen komma’s, dus geen aanhalingstekens nodig:
    Category
    Footwear > Sneakers
    Electronics > Audio > Headphones
  • Meerdere categorieën in één cel — hoort een product bij meerdere, scheid ze dan met komma’s tussen aanhalingstekens, precies zoals bij interesses:
    Category
    "Sneakers,Footwear,Running"

De regel is altijd dezelfde: een komma in een waarde betekent dat de cel tussen aanhalingstekens moet. Een pad gescheiden door >of door /heeft geen komma’s, dus dat gaat zonder aanhalingstekens mee.

Extra velden in hetzelfde bestand meenemen

Je hebt geen apart bestand per attribuut nodig. Eén rij kan de sleutel plus interesses plus categorie plus alles wat je verder in het record wilt meenemen — merk, beschikbaarheid, een eigen tag — en je koppelt elke kolom in de stap Kolommen kiezen:

Id,Interest,Category,Brand,Availability
NW-1001,"Sneakers,Footwear,Casual,Running",Footwear > Sneakers,Acme Footwear,in stock
NW-1003,"Headphones,Audio,Wireless,Electronics",Electronics > Audio > Headphones,Soundry,in stock

Alleen de cellen Interest bevatten komma’s, dus alleen die staan tussen aanhalingstekens; de rest gaat mee als gewone kolommen. Koppel Id → Internal ID, Interest → Interests, en elke overige kolom aan zijn veld in Personyze.

📥 Download het uitgebreide voorbeeld (Id + Interest + Category + Brand + Availability) naast het voorbeeld met interesses met twee kolommen.

Vereiste koppeling

Elke import heeft één sleutelkolom nodig, anders blijft Volgende uitgeschakeld met een rode melding “Missing required mapping”:

  • Intern ID — de sleutel van het record (product-ID, gebruikers-ID).
  • URL productpagina — de volledige URL van de pagina, als alternatieve sleutel.

De sleutel moet overeenkomen met waarop de catalogus al is gesleuteld. Is je catalogus gesleuteld op SKU, dan moet de kolom Id van het bestand diezelfde SKU bevatten. Een import die voltooid wordt maar “met geen enkel product overeenkomt”, is bijna altijd een verkeerde sleutel — de ID’s zijn prima geladen, ze komen alleen niet overeen.

De kolommen koppelen

In de stap Kolommen kiezen toont Personyze elke gedetecteerde kolom en laat je die aan een veld van Personyze koppelen, met optionele Voorbewerking en een Masker per kolom.

De koppelstap van de importwizard van Personyze, waarin elke kolom van het bestand aan een veld van Personyze wordt gekoppeld, met opties voor voorbewerking en masker
De koppelstap. Personyze meldt hoeveel kolommen het heeft gedetecteerd en toont voorbeeldrijen, zodat je kunt bevestigen dat het bestand goed is ingelezen voordat je koppelt. Het controleert ook de ID’s: komt geen enkele ID uit het bestand overeen met de product-ID’s die je site verstuurt, dan zegt het dat voordat je importeert.

Het aantal kolommen in deze stap is je controle op het inlezen. Voor het interessebestand met twee kolommen moet er 2 bronkolommen gedetecteerd staan. Staat er 6, dan zijn de aanhalingstekens bij het exporteren verloren gegaan — los het op en upload opnieuw. Beoordeel het op wat deze stap meldt, niet op hoe het bestand er in Excel of Numbers uitziet.

Voor interesses: koppel Id → Intern ID (dat haalt de rode foutmelding weg), koppel Interest → Interesses, laat Voorbewerking = Ongewijzigd doorgeven en Masker = Alles doorgeven staan, en ga dan verder naar Klaar voor import.

Het bestand opbouwen (herhaalbaar recept)

Heb je een bronexport met één interessekolom waarin alles met komma’s is samengevoegd, maak dan met een paar regels Python het bestand met twee kolommen en aanhalingstekens — csv.writer zet automatisch aanhalingstekens rond elk veld dat een komma bevat:

import csv
rows = list(csv.DictReader(open('source.csv', encoding='utf-8-sig')))
with open('Id_Interest.csv', 'w', newline='', encoding='utf-8-sig') as f:
    w = csv.writer(f)                 # quotes cells with commas automatically
    w.writerow(['Id', 'Interest'])
    for r in rows:
        ints = ','.join(x.strip() for x in r['Interests'].split(',') if x.strip())
        w.writerow([r['Product ID'], ints])

Feeds voor een productcatalogus

Een productcatalogus is gesleuteld op een product-ID — en je kunt interne ID, SKU of beide aanleveren. Er is maar één sleutel verplicht.

Als je geen product-ID hebt

Heeft je catalogus geen stabiele ID, dan kan Personyze er automatisch een genereren uit een hash van de URL van de productpagina. Dat is genoeg om een product te herkennen voor paginaweergaven en toevoegen aan winkelwagen — de URL is elke keer dezelfde, dus de hash is stabiel.

Bij aankooptracking wordt een URL-hash lastig. Een bedank- of orderbevestigingspagina bevat meestal niet de product-URL’s van wat er is gekocht, dus er is niets om te hashen. Aankopen tracken tegen gehashte ID’s is mogelijk, maar de opzet is omslachtig. Het is veel eenvoudiger als je een echte product-ID hebt die Personyze automatisch uit een paginavariabele kan halen — een waarde in de datalaag, een variabele in een tagmanager, of een veld in de DOM — omdat dezelfde ID dan de catalogus, het gedrag op de site en de aankoop aan elkaar koppelt. Verkoop je iets, gebruik dan een echte ID. De terugval op een URL-hash is voor personalisatie op weergaven en klikken als er geen ID bestaat.

Het catalogusbestand

Een productcatalogus gebruikt meer kolommen, maar dezelfde regels. Een typische opbouw:

Internal ID, SKU, Title, Product Page URL, Main Image URL,
Price, Sale Price, Is in Stock, Rating

Koppel Intern ID als sleutel, URL hoofdafbeelding en URL productpagina zodat kaarten verschijnen en linken, en Prijs / Actieprijs / Op voorraad zodat widgets prijzen, kortingen en voorraadbadges kunnen tonen. Lege cellen zijn prima — een lege Actieprijs betekent gewoon geen korting.
📥 Download het voorbeeldbestand voor een productcatalogus — de echte kolomopbouw van een live winkel.
Voor een live catalogus is de praktische opzet een URL-feed: laat Personyze wijzen naar een feed die je platform of een feeddienst al maakt. Een standaard Google Shopping-/Merchant-feed (TSV, met id, title, link, price, availability, image_link, product_typeenz.) werkt direct — Personyze leest die kolommen en bevraagt de URL opnieuw, zodat voorraad en prijzen actueel blijven. Heb je nog geen feed, dan maken tools als Feedoptimise, DataFeedWatch of de eigen export van je platform er een.

De aanbevelingslogica — bestsellers, samen bekeken, op basis van de winkelwagen, op basis van interesses — stel je in bij de configuratie van het algoritme van de actie, en die leest uit de catalogus die je hier aanlevert. Zie De product-/contentfeed instellen en Aanbevelingsalgoritmes.

Afbeeldingen: één vereist, meer optioneel

Elk product heeft één hoofdafbeelding nodig zodat aanbevelingskaarten kunnen verschijnen. Je kunt daarnaast meer afbeeldingskolommen toevoegen — de extra afbeeldingen voeden widgets die de foto bij hover met de muis laten rouleren of wisselen. Koppel de eerste aan URL hoofdafbeelding en de rest aan de extra afbeeldingsvelden.

Neem zoveel eigen velden mee als je wilt

Naast de standaardkolommen kan een feedrij alle extra data bevatten die je hebt — verzendkosten, staffelprijzen, prijzen per klanttype, tags, merk, kleur, wat dan ook. Drie dingen die je met een eigen veld kunt doen:

  • Tonen — laat het zien op de aanbevelingskaart (een vlag “Gratis verzending”, een ledenprijs).
  • Erop filteren — beperk een aanbeveling tot een merk, kleur of categorie.
  • De AI erop trainen — geef het aanbevelingsmodel meer signaal over elk product, zodat het beter rangschikt.

Meestal gaat het om eenvoudige attributen zoals merk of kleur; er is geen limiet, en niet-gekoppelde kolommen worden gewoon genegeerd.

Bundelprijzen

De prijzen en het bundeltotaal die een Buy Together-widget toont, komen uit de prijsvelden van de catalogus. Een korting voor het samen kopen van items moet je winkel zelf toepassen.

Feeds voor een contentcatalogus

Een contentcatalogus (artikelen, video’s, handleidingen) voedt contentaanbevelingen. De lichtste versie is alleen de URL van de content — Personyze genereert automatisch een ID en volgt interactie op de URL of het URL-pad, zodat weergaven en gelezen artikelen goed worden toegeschreven zonder dat je een sleutel aanlevert. Je kunt ook je eigen Intern ID aanleveren als je er een hebt.

Al het andere werkt zoals bij de productcatalogus: één hoofdafbeelding (meer optioneel voor hoverwidgets), plus alle eigen kolommen die je wilt tonen, waarop je wilt filteren of trainen — contenttype, categorie, auteur, publicatiedatum, tags.

📥 Download de template voor een contentcatalogus

Feeds met gebruikerslijsten (CRM-verrijking voor targeting)

Waar: Instellingen → Geïmporteerde gebruikersdata. De profielvelden die een lijst vult, worden gedefinieerd onder Instellingen → Bezoekersattributen.

Een gebruikerslijst koppelt CRM-data aan je bezoekers. Het minimum is een sleutel plus één attribuut:

  • E-mail (of een interne / CRM-ID) als sleutel, en
  • minstens één extra kolom — voornaam, accounttype, wat dan ook.

Je kunt zoveel attribuutkolommen toevoegen als je wilt. Het belangrijke deel: wat je hier vult, wordt beschikbaar in targeting, niet alleen in de actie die de lijst gebruikt. Laad de voornaam of het accounttype van een bezoeker en je kunt later een doelgroep bouwen die erop target — “Accounttype is VIP”, “Branche is Retail” — precies zoals bij elk ander profielveld. Lever het aan als bestand, of houd het synchroon via SFTP of een feed-URL.

📥 Download de minimale template voor een gebruikerslijst (Email + First Name)  ·  uitgebreide versie (met accounttype, branche).

Cross-sell- & up-sell-paren

Paren die je zelf vastlegt — handmatige cross-sell- en up-sell-koppelingen, en de seedsets die de engine op gang helpen — staan onder Instellingen → Aanbevelingen instellen → Productcatalogus → Handmatige aanbevelingsregels. Een bestand met koppelingen heeft twee kolommen, Subject Internal ID,Linked Internal ID (📥 template). Wat ze doen en welke algoritmes ze gebruiken: Beheerde cross-sells & up-sells.

Feeds met historische transacties

Eerdere en offline aankopen — wie wat kocht, en wanneer — laad je vanuit Instellingen → Aanbevelingen instellen → Producttracking: de knop Eerdere bestellingen uploaden op de rij Product gekocht, of een SFTP-bestand met de naam products_interactions.csv. De kolommen, de template en de wizard in drie stappen: Eerdere en offline transacties uploaden.

Contentcatalogi en andere feeds

Naast de types hierboven laadt dezelfde wizard alle tabeldata — affiniteitstabellen, segmentlijsten, sets met eigen attributen. Kies de afleveringsmethode, zorg dat de opmaak klopt, koppel een sleutel, koppel de rest.
Een contentcatalogus (artikelen, video’s, handleidingen) werkt precies zo — de sleutelkolommen worden de content-ID en de URL, met titel, afbeelding en alle attributen waarop je wilt aanbevelen of targeten. Hetzelfde geldt voor cross-sell-tabellen, affiniteitsdata en CRM-gebruikerslijsten: kies de afleveringsmethode, zorg dat de opmaak klopt, koppel een sleutel, koppel de rest.

De import afronden

De laatste stap van de importwizard van Personyze, klaar om de import te starten
De laatste stap: controleer de koppeling en start de import. Een bestand wordt één keer geladen; een URL-, SFTP- of API-feed blijft vanaf hier volgens zijn schema synchroniseren.

Problemen oplossen

Symptoom Oorzaak Oplossen
“6 bronkolommen gedetecteerd” (2 verwacht) De interessecel stond niet tussen aanhalingstekens, of de aanhalingstekens zijn bij het exporteren verwijderd Exporteer opnieuw met de cel tussen aanhalingstekens; controleer of het ruwe bestand dit toont: "Sneakers,Footwear,..."
De hele rij komt in één kolom terecht Je beoordeelt het in een spreadsheet, niet in de importer Ga uit van wat stap 2/3 meldt, niet van Excel of Numbers
“Missing required mapping” (rood) Er is geen Intern ID / URL productpagina gekoppeld Koppel je sleutelkolom aan Intern ID (of URL productpagina)
Interesses worden als één lange tekenreeks geïmporteerd Het scheidingsteken is geen komma Gebruik komma’s tussen interesses, niets anders
Importeert prima maar komt met geen enkel product overeen De Id komt niet overeen met de sleutel van de catalogus Gebruik de identificatie waarop de catalogus is gesleuteld (vaak SKU)

In plaats daarvan een waarde live van de pagina lezen

Los van het importeren van bestanden kan Personyze ook een waarde live van een productpagina lezen terwijl bezoekers browsen — handig als de data niet in een feed staat. Die route gebruikt een CSS-selector of JavaScript in plaats van een bestand, en wordt behandeld in Data van je site halen. Twee praktijkopmerkingen die ook hier gelden:

  • Metatags kun je niet aanklikken met de kiezer op de pagina — ze staan in <head> en worden niet weergegeven. Typ de selector met de hand, bijv. meta[property="og:type"].
  • Op winkels die met JS worden opgebouwd (VTEX, React) kunnen meta-/og-tags bij het laden van de pagina leeg zijn en pas na hydratatie worden gevuld, of alleen via prerender aan zoekmachinebots worden geserveerd. Een selector die niets teruggeeft, komt meestal door dit gat in timing of prerender, niet door een verkeerde selector. Een element dat op de server wordt opgebouwd, is betrouwbaarder. De dataLayer van GTM bevat de referentie ook — maar lees die op single-page-winkels voorzichtig, want de dataLayer stapelt zich op over producten heen en een vroege invoer kan het eerder bekeken item zijn.

De korte versie

Kommagescheiden bestand; zet elke cel met een komma tussen aanhalingstekens; koppel één sleutelkolom (Intern ID of URL productpagina) die overeenkomt met hoe je catalogus is gesleuteld; koppel de rest. Upload een bestand voor eenmalig gebruik, of laat Personyze naar een URL-, SFTP- of API-feed wijzen om het synchroon te houden.

Gerelateerd

Did this page answer your question?
Thank you — that goes to whoever maintains this page.