Je hebt een reeks simpele producten in Magento 2, elk met hun eigen SKU, maar ze horen eigenlijk bij elkaar — dezelfde jas in maat S, M, L en XL, of dezelfde lamp in drie kleuren. Bezoekers willen op één productpagina kiezen, niet tussen drie losse producten klikken. De oplossing is een configurable product. De uitdaging: de bestaande simpele producten moeten hun eigen SKU behouden. Dit artikel legt de correcte werkwijze stap voor stap uit, inclusief de dummy-variant truc die Magento vereist om het configurable product te kunnen opslaan.
- Wat is een configurable product en hoe werkt het?
- Voorbereiding: attributes en attribute sets
- Attribuutwaarden controleren op de simpele producten
- Een nieuw configurable product aanmaken met dummy variant
- Bestaande simpele producten koppelen en dummy verwijderen
- Alternatief: via CSV-import
- Veelgemaakte fouten en hoe je ze voorkomt
Wat is een configurable product
en hoe werkt het?
In Magento 2 bestaat een configurable product uit twee lagen. De bovenste laag is het configurable product zelf: dit is wat de klant ziet in de catalogus, wat geïndexeerd wordt in de zoekresultaten en wat de URL draagt. Het heeft een eigen SKU die louter dient als identifier voor het configurable product — de klant bestelt dit product nooit rechtstreeks.
De onderste laag bestaat uit de gekoppelde simpele producten. Deze heten de child products of varianten. Elk simpel product heeft zijn eigen SKU, zijn eigen voorraad, zijn eigen prijs (optioneel) en zijn eigen specifieke attribuutwaarde — de maat, de kleur, de uitvoering. Wanneer een klant een keuze maakt in de dropdown of swatches, selecteert hij in werkelijkheid een specifiek simpel product. Dat simpele product met zijn eigen SKU belandt in de bestelling.
Dit is precies waarom SKU-behoud zo belangrijk is: alle bestaande koppelingen met je ERP, WMS of PIM verwijzen naar de SKU van het simpele product. Die mag dan ook nooit veranderen.
Attributes en attribute sets
Voordat je een configurable product kunt aanmaken heb je een configureerbaar attribuut nodig: een attribuut waarmee de klant de keuze maakt. Denk aan size, color of material. Het attribuut moet aan twee voorwaarden voldoen: het scope moet op Global staan en Use to Create Configurable Product moet op Ja staan.
Controleer of het attribuut al bestaat via Stores → Attributes → Product. Zo niet, maak het aan. Zorg daarna dat het attribuut onderdeel is van de attribute set die je simpele producten en het toekomstige configurable product delen — anders zijn ze niet aan elkaar te koppelen.
| Instelling | Vereiste waarde | Waar te vinden |
|---|---|---|
| Catalog Input Type | Dropdown of Visual Swatch |
Stores → Attributes → Product |
| Scope | Global |
Attribute properties |
| Use to Create Configurable Product | Yes |
Storefront properties |
| Attribute set | Zelfde set als simpele producten | Stores → Attribute Sets |
eav_attribute_option-tabel. Maak in dat geval een nieuw attribuut aan.
Attribuutwaarden controleren
op de simpele producten
Voordat je het configurable product aanmaakt, moeten je bestaande simpele producten de juiste waarde hebben voor het configureerbare attribuut. Als je attribuut size is, moet product A de waarde S hebben, product B M, enzovoort. Zonder deze waarde kan Magento het simpele product later niet herkennen en koppelen.
Controleer en vul dit in via Catalog → Products → open het simpele product → zoek het attribuut in het tabblad Attributes en stel de juiste waarde in. Sla op. De SKU blijft volledig ongewijzigd.
Een nieuw configurable product aanmaken
met een tijdelijke dummy variant
Magento vereist dat je tijdens het aanmaken van een configurable product minimaal één variant genereert via de wizard — zonder dit kun je het product niet opslaan. De truc is om bewust één tijdelijke dummy variant aan te maken die je daarna verwijdert. Daarna koppel je de echte bestaande simpele producten.
Ga naar Catalog → Products → Add Product en kies Configurable Product.
Geef het configurable product een naam, beschrijving, afbeeldingen en prijs. Geef het een nieuwe, unieke SKU die nog niet bestaat in je catalogus — dit is de SKU van het configurable product zelf. Een gangbare conventie is de stamnaam zonder variantcode: SHIRT-NAVY als de simpele producten SHIRT-NAVY-S en SHIRT-NAVY-M heten.
Zet Visibility op Catalog, Search.
Scroll naar het tabblad Configurations en klik op Create Configurations. De wizard loopt door vier stappen: selecteer het configureerbare attribuut (bijv. size), kies één willekeurige waarde (bijv. S), en laat Magento een nieuw simpel product genereren op stap 3. Geef dit dummy product een tijdelijke SKU zoals DUMMY-DELETE.
Klik door naar Generate Products en daarna op Save. Het configurable product bestaat nu en heeft één dummy variant. Dit is puur een technische tussenstap om het opslaan mogelijk te maken.
DUMMY-DELETE. Je verwijdert hem in de volgende stap. Zet hem eventueel al direct op Not Visible Individually en Disabled om te voorkomen dat hij in de winkel verschijnt voordat je klaar bent.
Bestaande simpele producten koppelen
en de dummy verwijderen
Nu het configurable product bestaat kun je de bestaande simpele producten eraan koppelen. Magento laat dit toe zodra het configurable product is opgeslagen, ook al heeft het maar één (dummy) variant.
S, M, L, XL. Klik naar stap 3.In stap 3 zie je per attribuutwaarde een rij. Klik per rij op Choose a different product — nu kun je zoeken naar en selecteren van je bestaande simpele producten. Zoek op SKU of naam en selecteer het juiste product voor elke waarde.
Magento koppelt het bestaande simpele product zonder iets aan de SKU of data te wijzigen. Herhaal dit voor alle waarden.
DUMMY-DELETE) en verwijder hem via het prullenbak-icoon in de rij. Sla het configurable product daarna opnieuw op. De dummy is nu volledig losgekoppeld en kan eventueel ook als product uit de catalogus worden verwijderd.Not Visible Individually. Ze verschijnen dan niet meer als losse producten in de catalogus, maar zijn wel gewoon bestelbaar als variant via het configurable product. De SKU wordt hier niet aangeraakt.Via CSV-import:
handig bij grote aantallen
Heb je tientallen of honderden simpele producten die je wil omzetten? Dan is de admin-wizard tijdrovend. Magento's import via CSV biedt een efficiënter alternatief. De logica is dezelfde: je maakt een rij aan voor het configurable product en meerdere rijen voor de gekoppelde simpele producten, waarbij je via configurable_variations de koppeling legt.
sku,product_type,attribute_set_code,name,visibility,configurable_variations SHIRT-NAVY,configurable,Default,Navy Shirt,Catalog, Search,sku=SHIRT-NAVY-S:size=S,sku=SHIRT-NAVY-M:size=M,sku=SHIRT-NAVY-L:size=L SHIRT-NAVY-S,simple,Default,Navy Shirt maat S,Not Visible Individually, SHIRT-NAVY-M,simple,Default,Navy Shirt maat M,Not Visible Individually, SHIRT-NAVY-L,simple,Default,Navy Shirt maat L,Not Visible Individually,
De kolom configurable_variations bevat een kommagescheiden lijst van koppelingsregels. Elke regel bestaat uit sku=WAARDE:attribuutcode=attribuutwaarde. Magento gebruikt dit om de koppeling te registreren. De simpele producten in de CSV hebben dezelfde SKU als voorheen — je wijzigt ze niet, je herbevestigt ze enkel.
Ga na de import naar System → Import met entity type Products en importgedrag Add/Update. Gebruik nooit Replace tenzij je zeker weet wat dat doet — Replace verwijdert alle niet-vermelde data bij de betreffende producten.
Veelgemaakte fouten
en hoe je ze voorkomt
- Andere attribute set — het simpele product en het configurable product hebben een verschillende attribute set. Magento staat de koppeling dan niet toe. Controleer dit altijd als eerste.
- Attribuut niet op Global scope — een attribuut op Store View- of Website-scope kan niet gebruikt worden voor configuratie. Zet het om naar Global, maar wees voorzichtig: dit kan bestaande store-view-specifieke waarden overschrijven.
- "Create new" per ongeluk gekozen in de wizard — Magento maakt dan een nieuw simpel product aan met een automatisch gegenereerde SKU en koppelt dat. Het bestaande product wordt niet gekoppeld. Verwijder de nieuw aangemaakte variant en herhaal de stap met "Choose a Different Product".
- Visibility vergeten aan te passen — simpele producten die op "Catalog, Search" blijven staan verschijnen als losse producten naast het configurable. Bezoekers kunnen beide bestellen, wat tot verwarring en voorraadproblemen leidt.
- Reïndexering vergeten — na het aanmaken van het configurable product en de koppelingen moet je de indexers draaien. Ga naar System → Index Management en herindex minimaal Product Flat Data, Category Products, Catalog Search en Inventory. Of via CLI:
bin/magento indexer:reindex bin/magento cache:flush
- Prijs op het simpele product ontbreekt — als een simpel product geen prijs heeft en het configurable product ook niet, geeft Magento geen prijs weer op de frontend. Stel altijd een prijs in op minimaal het configurable product of op elk afzonderlijk simpel product.
- Koppeling in ERP of PIM niet bijgewerkt — het configurable product heeft een nieuwe SKU. Als je ERP ordersignalen afhandelt op basis van de SKU in de bestelling, hoef je niets te doen (de order-SKU is altijd die van het simpele product). Maar als je ERP ook de configurabele catalogus leest, voeg de nieuwe configurable SKU dan toe aan je systeem.
Vragen over configurable
producten in Magento 2
De meest gestelde vragen over het omzetten van simpele producten naar configurables, SKU-behoud en de stappen die daarvoor nodig zijn.
-
Een simpel product is een op zichzelf staand artikel met een eigen SKU, prijs en voorraad. Een configurable product is een overkoepelend product waaraan meerdere simpele producten als varianten zijn gekoppeld, bijvoorbeeld verschillende maten of kleuren. De klant kiest op de productpagina een variant en bestelt in werkelijkheid het onderliggende simpele product. Dat simpele product met zijn eigen SKU belandt in de order.
-
Ja, mits je de juiste werkwijze volgt. Je maakt een nieuw configurable product aan en hangt er via de wizard eerst een tijdelijke dummy variant onder — Magento vereist dit om het product te kunnen opslaan. Daarna open je via Edit Configurations de wizard opnieuw en koppel je de bestaande simpele producten via "Choose a different product". De SKU van elk simpel product blijft volledig ongewijzigd; Magento legt alleen een relatie vast in de database. Als laatste verwijder je de dummy variant.
-
Het configurable product krijgt een nieuwe, unieke SKU die nog niet bestaat in je catalogus. Een gangbare conventie is de stamnaam van het product zonder variant-aanduiding: als de simpele producten
SHIRT-NAVY-SenSHIRT-NAVY-Mheten, geef je het configurable product de SKUSHIRT-NAVY. Deze SKU wordt nooit besteld en verschijnt niet op pakbonnen of facturen. -
De meest voorkomende oorzaken zijn: het simpele product en het configurable product hebben een verschillende attribute set, het configureerbare attribuut staat niet op Global scope, of het simpele product heeft nog geen waarde ingesteld voor het configureerbare attribuut. Controleer deze drie punten in volgorde. Zorg ook dat het attribuut de instelling "Use to Create Configurable Product" op Yes heeft staan. Let op: de optie "Choose a different product" verschijnt pas in de wizard als je het configurable product al eerder hebt opgeslagen met minimaal één (dummy) variant — bij een compleet nieuw product kun je dit nog niet doen.
-
Nee. Een simpel product kan in Magento 2 slechts aan één configurable product tegelijk gekoppeld zijn. Wil je hetzelfde artikel in meerdere configurables opnemen, dan moet je het simpele product dupliceren en het duplicaat een eigen unieke SKU geven.
-
Ja. Na het opslaan van het configurable product en de koppelingen moeten minimaal de indexers Product Flat Data, Category Products, Catalog Search en Inventory opnieuw draaien. Doe dit via System → Index Management in de admin, of via de CLI met
bin/magento indexer:reindexgevolgd doorbin/magento cache:flush. Zonder reïndexering is het configurable product niet zichtbaar of doorzoekbaar in de frontend. -
Via de CSV-import maak je een rij aan voor het configurable product met producttype
configurableen vul je de kolomconfigurable_variationsin met een kommagescheiden lijst van koppelingsregels in het formaatsku=SKU-SIMPEL:attribuutcode=waarde. De simpele producten neem je als aparte rijen op met hetzelfde SKU als voorheen en visibility opNot Visible Individually. Gebruik importgedrag Add/Update en test altijd eerst op een stagingomgeving. -
De voorraad wordt beheerd op het niveau van de simpele producten. Niets verandert aan de voorraadgegevens door de koppeling. Het configurable product toont op de productpagina "uitverkocht" zodra alle gekoppelde simpele producten geen voorraad meer hebben. Elke variant behoudt zijn eigen voorraadtelling, precies zoals voor de koppeling.



