De webshop staat bijna live, het assortiment zit in Odoo, en dan ligt daar nog die map met 800 productfoto's. Stuk voor stuk uploaden? Dat kost u dagen en minstens één RSI-pols. Gelukkig kan het in bulk — op twee manieren, afhankelijk van waar uw foto's nu staan.
Methode 1: CSV-import met image_1920
- Open de productlijst en exporteer naar CSV met in elk geval id (externe ID) en een kolom image_1920.
- Vul de kolom image_1920 per product met de volledige URL van de afbeelding (bijvoorbeeld vanaf uw oude webshop of een publieke map) óf met de base64-gecodeerde inhoud van het bestand.
- Importeer het bestand terug via Favorieten → Records importeren. Odoo haalt de URL's op en slaat de afbeeldingen bij het juiste product op.
Deze route werkt prima als uw foto's al ergens online staan. Een fietsenwinkel die van een oude webshop overstapt, kan zo de bestaande afbeeldings-URL's één-op-één hergebruiken.
Methode 2: script via XML-RPC
Staan de foto's alleen lokaal, bijvoorbeeld als 8719325001234.jpg per artikelnummer? Dan is een klein Python-script via XML-RPC (of de nieuwere JSON-RPC API) sneller: het zoekt per default_code (SKU) het product op, leest het bestand in, codeert het naar base64 en schrijft het naar image_1920. Draai zo'n script altijd eerst op een testdatabase of staging-omgeving — een typfout in de bestandsnaamlogica koppelt anders vrolijk verkeerde foto's aan honderden producten.
Eerst optimaliseren, dan importeren
- Maximaal 1920 pixels breed — groter geeft geen zichtbaar kwaliteitsvoordeel, Odoo schaalt toch terug.
- Onder de 2 MB per bestand; zware beelden vertragen uw webshop merkbaar.
- Batch-comprimeer vooraf met een tool als TinyPNG of Squoosh.
- Gebruik logische bestandsnamen (SKU of EAN), dat maakt de koppeling foutloos.
Tot slot
Praktische tip: importeer eerst vijf producten als proef en controleer het resultaat in de webshop voordat u de volle lading laat gaan. Hulp nodig bij een productmigratie of webshoplancering in Odoo? Neem contact op met DAADit Group, wij hebben de scripts al klaarliggen.
De webshop is bijna live, de catalogus staat in Odoo, en dan is er die map met 800 productfoto's. Eén voor één uploaden? Dat kost u dagen en minstens één zere pols. Gelukkig kan het in bulk — op twee manieren, afhankelijk van waar uw foto's nu staan.
Methode 1: CSV-import met image_1920
- Open de productlijst en exporteer naar CSV met minimaal id (externe ID) en een kolom image_1920.
- Vul de kolom image_1920 per product met de volledige URL van de afbeelding (bijvoorbeeld uit uw oude webshop of een openbare map) of met de base64-gecodeerde inhoud van het bestand.
- Importeer het bestand terug via Favorieten → Records importeren. Odoo haalt de URL's op en slaat elke afbeelding op bij het juiste product.
Deze route werkt goed wanneer uw foto's al ergens online staan. Een fietsenwinkel die migreert vanuit een oude webshop kan de bestaande afbeeldings-URL's één-op-één hergebruiken.
Methode 2: een script via XML-RPC
Staan de foto's alleen lokaal, bijvoorbeeld als 8719325001234.jpg per artikelnummer? Dan is een klein Python-script via XML-RPC (of de nieuwere JSON-RPC API) sneller: het zoekt elk product op via default_code (SKU), leest het bestand in, codeert het naar base64 en schrijft het naar image_1920. Draai zo'n script altijd eerst tegen een testdatabase of stagingomgeving — één typefout in de bestandsnaamlogica plakt vrolijk de verkeerde foto's aan honderden producten.
Optimise first, import second
- Maximaal 1920 pixels breed — groter geeft geen zichtbare kwaliteitswinst, Odoo schaalt het toch terug.
- Onder 2 MB per bestand; zware afbeeldingen vertragen uw webshop merkbaar.
- Comprimeer vooraf in bulk met een tool als TinyPNG of Squoosh.
- Gebruik logische bestandsnamen (SKU of EAN), zodat het matchen foutloos verloopt.
Nog één ding
Praktijktip: importeer eerst vijf producten als proef en controleer het resultaat in de webshop voordat u de volledige batch loslaat. Hulp nodig bij een productmigratie of webshoplancering in Odoo? Neem contact op met DAADit Group — wij hebben de scripts al op de plank liggen.