Parent-childcartregels voor samengestelde producten

Behandel hoofdproduct en gekozen onderdelen als één configuratiegroep, ook wanneer zij technisch uit meerdere WooCommerce-cartregels bestaan. Bewaar een stabiele groepsrelatie, schaal afhankelijke aantallen mee en voorkom dat verplichte kinderen los achterblijven wanneer het hoofdproduct wordt verwijderd.

Deze parent-childrelatie is nodig zodra opties echte producten zijn. Zonder expliciete koppeling ziet de cart alleen losse regels. Dan kan een klant per ongeluk een bevestigingsset verwijderen, kan sessieherstel de groep uiteen trekken en weet de orderexport niet welke onderdelen samen één geleverd product vormen.

Definieer welke regels afhankelijk zijn

Niet ieder toegevoegd product hoeft hard aan het hoofdproduct vast te zitten. Een verplicht frame moet samen verwijderen en in aantal meegaan. Een optionele onderhoudsset kan onderdeel van de configuratie zijn, maar misschien zelfstandig blijven staan. Leg per optietype vast of verwijderen, aantal wijzigen en retourrelatie gekoppeld zijn.

Relatie Bij hoofdproduct verwijderen Bij aantal wijzigen
Verplicht onderdeel Automatisch mee verwijderen Proportioneel meeschalen
Optioneel configuratieonderdeel Meestal mee verwijderen, eerst duidelijk tonen Volgens ingestelde verhouding
Eenmalige service Regel opnieuw beoordelen Niet automatisch verdubbelen
Los aanbevolen product Mag zelfstandig blijven Eigen aantal

Gebruik een interne groepssleutel die bij cartopbouw wordt gemaakt en bij iedere childregel wordt bewaard. Vertrouw niet op positie in de winkelwagen of productnaam. Twee identieke hoofdproducten met verschillende configuraties moeten elk hun eigen kinderen houden.

Maak de groepssleutel niet bruikbaar als prijs- of toegangsbeslissing. Hij verbindt alleen regels binnen de cart. Prijzen, beschikbaarheid en toegestane add-ons worden nog steeds uit de actuele catalogus en serverregels gehaald. Valideer ook dat een child daadwerkelijk naar de bedoelde parent wijst; ingevoerde groepsdata uit de browser is niet vanzelf betrouwbaar.

Herstel de relatie na sessie en order

WooCommerce serialiseert de cart en bouwt hem later opnieuw op. Controleer na sessieherstel of alle groepssleutels nog geldig zijn en of een parent bestaat. Een verweesd verplicht onderdeel hoort niet stil als los product afrekenbaar te blijven. Toon een herstelmelding of verwijder de ongeldige groep volgens een vooraf bepaalde regel.

Zet dezelfde relatie door naar orderregels. De klant ziet een leesbare configuratiesamenvatting; magazijn en integratie krijgen daarnaast de afzonderlijke SKU’s en aantallen. Een koppeling naar ERP moet niet uit de volgorde van orderregels raden wat bij elkaar hoort. Webshop en ERP betrouwbaar koppelen begint bij zo’n expliciet datamodel.

Beslis wat de cartprijs per regel toont. Sommige winkels tonen het volledige bedrag op de parent en nulprijzen bij onderdelen; andere tonen iedere component afzonderlijk. Beide kunnen werken als cart, checkout, ordermail en administratie hetzelfde totaal opleveren. Verberg geprijsde onderdelen niet zo dat de klant de opbouw onmogelijk kan controleren.

Fictief voorbeeld: twee veranda’s in één cart

Tuinspecialist Buitenlijn verkoopt veranda’s met staanders, goten en optionele verlichting. Een klant configureert eerst een kleine veranda met twee staanders en daarna een grotere met drie. Beide hoofdproducten zijn hetzelfde basismodel, maar krijgen elk een unieke groep.

Wanneer de klant het aantal van de kleine veranda verdubbelt, schalen de twee bijbehorende staanders en goten mee. De eenmalige inmeetservice verdubbelt niet; de webshop vraagt of één bezoek beide veranda’s kan omvatten. Als de grote veranda wordt verwijderd, verdwijnen alleen de kinderen uit die groep. De verlichting van de kleine blijft intact.

Bij bestelling bewaart Buitenlijn zowel de individuele artikelen als de groepssamenvatting. Daardoor kan fulfilment onderdelen picken en kan klantenservice later uitleggen welke set bij welke veranda hoorde. Voor het doorzetten van deze structuur kan Yindle Connect de vertaling naar achterliggende systemen beheersbaar maken.

Wanneer één onderdeel tijdens checkout uitverkocht raakt, blokkeert Buitenlijn de hele betrokken groep en wijst precies het probleem aan. De andere veranda in dezelfde cart blijft herkenbaar. De klant kan de getroffen configuratie bewerken of verwijderen zonder zijn volledige winkelwagen opnieuw te bouwen.

Testmatrix voor groepsgedrag

  1. Voeg twee configuraties van hetzelfde hoofdproduct toe.
  2. Wijzig het aantal van slechts één groep.
  3. Verwijder parent, verplicht kind en optioneel kind afzonderlijk.
  4. Herlaad de sessie en herstel een opgeslagen winkelwagen.
  5. Maak een kindproduct tijdelijk niet beschikbaar.
  6. Pas een coupon toe op parent, kinderen en groep.
  7. Controleer cart, checkout, ordermail, magazijn en ERP-export.
  8. Test annulering en gedeeltelijke retour zonder relaties te verliezen.

Maak groepsgedrag zichtbaar in de interface. Automatisch meeschalen is nuttig, maar een onverwacht gewijzigd aantal voelt als een fout. Toon daarom kort waarom een onderdeel meeverandert en geef bij uitzonderingen een bewuste keuze. Als standaarduitbreidingen dit model niet dragen, helpt de keuze tussen maatwerk en standaardsoftware.

Laat Yindle de parent-childstructuur van jouw samengestelde producten ontwerpen.

Vorig inzicht
Volgend inzicht

Begin met je vraag

Waar loopt jouw team op vast?

Een eerste vraag hoeft geen technische briefing te zijn. Vertel welke systemen je gebruikt en waar het werk nu blijft liggen. Samen bespreken we wat mogelijk is en welke stap je daarna kunt zetten.

Bespreek mijn vraag