Je bestelt dezelfde crème opnieuw bij dezelfde leverancier en er komt een andere barcode binnen dan de vorige keer. Of je zet een artikel op bol en ontdekt dat het daar al onder een EAN staat die in je Shopify-shop nergens voorkomt. Fysiek is het één product op één plank, in de systemen zijn het er twee, en vanaf dat moment lopen je aantallen langzaam uit elkaar. De uitweg is die twee codes aan elkaar koppelen, zodat er één telling overblijft.
Het vervelende is dat je het niet meteen merkt. De verkoop loopt door, de voorraad daalt op de ene code en blijft staan op de andere. Pas als je een order niet kunt leveren, of bij het tellen twee stapels van hetzelfde product tegenkomt, wordt zichtbaar dat de administratie al weken scheef stond.
Eerst het algemene deel: waarom die tweede code ontstaat en wat het kost om hem los te laten staan. Daarna de werkwijze om twee EAN's te koppelen: één code als hoofd, de rest eraan vast, en één telling die overal geldt. Werk je zonder tool, dan staat er verderop hoe je dat met de hand bijhoudt.
Waarom hetzelfde product twee EAN's heeft
Een EAN hoort bij een verpakking, niet bij een product. Zodra er iets aan die verpakking verandert mag de fabrikant een nieuwe code uitgeven, en dat gebeurt vaker dan je zou denken.
Daar valt weinig aan te sturen. Wat je wel stuurt is welke code bij jou de leidende is, en of de andere codes daaraan vastzitten of los blijven rondzweven.
De verleiding is groot om de barcode in je shop dan maar te overschrijven met de nieuwste code. Doe dat niet zolang er van de oude verpakking nog voorraad ligt. Je marktplaatsaanbod, je oude orders en de scanners in het magazijn kennen die oude code nog, en die raken hem in één keer kwijt.
- Import uit een andere regio: de Koreaanse verpakking van een verzorgingsproduct draagt een andere code dan de Europese, terwijl er hetzelfde in zit.
- Een nieuwe verpakking of een aangepaste formule. De nieuwe code gaat draaien terwijl de oude nog maandenlang in de keten zit.
- Bundels en multipacks. Drie stuks in één doos krijgen een eigen code, ook al liggen de losse stuks bij jou op dezelfde locatie.
- Een tweede leverancier of een parallelimporteur die hetzelfde artikel onder een eigen verpakking en een eigen code levert.
- Aanbod dat al op een marktplaats stond voordat jij erbij kwam, en daar aan een andere code hangt dan de code die jij in je shop voert.
Wat het kost als je de codes los laat staan
Twee codes betekent in de meeste systemen twee producten, en dus twee voorraadtellingen van één stapel. Verkoop je vijf stuks onder de ene code, dan blijft de andere code net zo hoog staan als hij stond. De optelsom klopt niet meer met wat er op de plank ligt.
Dat gaat twee kanten op. Het kanaal met de te hoge stand verkoopt door terwijl de plank leeg is, en het kanaal met de te lage stand staat op uitverkocht terwijl er nog dozen liggen. Het eerste kost je een annulering en een deuk in je prestatiescore, het tweede kost je omzet.
Op bol en Kaufland zit er nog een tweede effect aan vast. Een aanbieding hangt daar aan een productpagina, en die pagina hangt aan een EAN. Zet je jouw versie onder een afwijkende code op, dan maak je een tweede pagina naast de bestaande in plaats van dat je meedoet op de pagina waar de vraag al zit.
En je inkoopcijfers verliezen hun betekenis. Verkoopsnelheid, dagen op voorraad en wat je zou moeten bijbestellen worden per code berekend. Twee halve reeksen naast elkaar geven allebei een te lage snelheid, en dus een te krappe bestelling.
Hoe je dit met de hand bijhoudt
Een tool is hiervoor geen voorwaarde, discipline wel. Houd één lijst bij, bijvoorbeeld een spreadsheet, met per artikel de code die bij jou leidend is en daaronder elke andere code die hetzelfde artikel aanduidt. Zet erbij om welke verpakking het gaat en sinds wanneer die loopt, want dat is later de enige manier om te zien welke code je nog kunt tegenkomen.
De rest is handwerk met een vaste volgorde. Boek altijd in op de leidende code, ook als de doos een andere barcode draagt. Werk de voorraad op je kanalen bij vanuit die ene telling en niet vanuit wat een kanaal zelf laat zien. Loop de lijst na zodra je een order niet kunt leveren, want dat is meestal het eerste teken dat er een code buiten de boot valt. Hang de tweede code ook uitgeprint bij de picklocatie, zodat het magazijn niet hoeft te gokken.
Dat houdt het tot een stuk of honderd artikelen goed vol. Wat het daarna onderuit haalt is niet de moeilijkheid maar de frequentie: elke inkooporder kan er weer een code bij brengen, en één keer overslaan is genoeg om de telling opnieuw scheef te zetten. Op dat punt wil je dat een systeem de vertaalslag doet.
Kies één hoofd-EAN en hang de rest eraan
De oplossing is niet om de codes gelijk te trekken, maar om er één de leidende te maken. In Layrr heet dat de hoofd-EAN: de barcode zoals die in Shopify bij de variant staat. Elke andere code die hetzelfde fysieke artikel aanduidt, koppel je daaraan als tweede EAN.
Vanaf dat moment telt de gekoppelde code niet meer voor zichzelf. Layrr bevraagt bol en Kaufland ook op de gekoppelde codes, en wat daaronder terugkomt wordt samengevoegd onder de hoofd-EAN. Een verkoop op de gekoppelde code wordt afgeboekt op de hoofd-EAN, en een annulering van diezelfde orderregel boekt daar weer terug, zodat er netto niets verandert.
Aanbod dat nog geen voorraadbron in Shopify heeft, verdwijnt daarbij niet ongemerkt uit beeld. Zo'n verkoop boekt niets af en wordt apart geteld in het verslag van de voorraadronde. Je krijgt daar een aantal te zien en niet welke producten het zijn. Staat er meer dan nul, dan zoek je bij de niet-gekoppelde producten welke codes nog een hoofd-EAN missen.
Koppelen zelf doe je op het productscherm, bij de variant. Je kiest het hoofdproduct, tikt de andere code in of scant hem met de handscanner of de camera, en zet er desgewenst een notitie bij, bijvoorbeeld om welke verpakking het gaat. De code moet acht tot veertien cijfers hebben, en een code die zelf al ergens hoofd-EAN is kun je er niet aan hangen. Zo ontstaan er geen kettingen waarvan niemand meer weet welke kant ze op wijzen. Alles wat gekoppeld is staat bij elkaar onder Producten, bij Gekoppelde EAN's.
De valkuil: varianten die dezelfde barcode delen
Koppelen werkt per variant, en dat is ook de bedoeling. Een 20 ml en een 125 ml van dezelfde crème zijn twee artikelen met twee tellingen, en de tweede code hoort maar bij één van de twee.
Het loopt mis zodra twee varianten in Shopify dezelfde barcode dragen. Dat gebeurt sneller dan je wilt, bijvoorbeeld doordat een variant gedupliceerd is of doordat de barcode bij het aanmaken is doorgekopieerd. Voor het koppelen en voor het bijwerken van de voorraad zijn die varianten dan niet meer uit elkaar te houden. Een koppeling die je voor de ene bedoelt, geldt daardoor ook voor de andere. Layrr waarschuwt daarvoor op het productscherm, maar de oplossing zit in Shopify: geef elke variant een eigen barcode.
Hetzelfde geldt voor varianten zonder barcode. Zonder EAN is er niets om aan te koppelen en niets om op te scannen, dus vul die eerst in en koppel daarna pas de tweede code.
Klopt het eenmaal, dan merk je dat vooral bij het picken en inpakken. De doos draagt soms de andere versie van de code, en de scanner accepteert hem dan zonder klagen: wat je scant wordt naar de hoofd-EAN vertaald en landt op dezelfde regel. Niemand hoeft dus uit te zoeken of dit nu wel of niet het juiste artikel is.
Suggesties, en hoe je ze controleert
Bij een paar honderd artikelen weet je zelf wel welke codes dubbel zijn. Bij een paar duizend niet meer. Daarvoor is het scherm Koppelsuggesties: dat zet producten met sterk gelijkende namen maar verschillende EAN's naast elkaar, met een percentage erbij.
De vergelijking is bewust wantrouwig ingesteld. Producten worden gegroepeerd op merk, zodat een crème van het ene merk niet naast die van een ander merk belandt. Producten zonder merk vormen een eigen groep, en die wordt wel tegen alle producten gehouden, want zonder merkveld valt er niets te groeperen. Verder gaat de merknaam eerst uit de titel omdat die in beide titels staat en dus niets onderscheidt, en laat een verschil in inhoudsmaat een paar meteen afvallen. Een 50 ml naast een 125 ml wordt dus niet voorgesteld, hoe sprekend de namen verder ook op elkaar lijken.
Wat al gekoppeld is verdwijnt uit de lijst, ook als de verbinding via een derde code loopt. Je krijgt dus geen suggesties terug die je vorige week al hebt afgehandeld, en identieke EAN's vallen sowieso weg.
Een suggestie is nog geen conclusie. Loop de twee titels na, controleer de maat en de verpakking, en koppel pas daarna. Zat je ernaast, dan maak je de koppeling meteen weer los. Het aanbod komt dan terug bij de niet-gekoppelde producten in plaats van onzichtbaar te blijven tot de volgende voorraadronde.
Nog even kort
Moet ik voor die tweede barcode een extra variant in Shopify aanmaken?
Liever niet. Een extra variant is een tweede voorraadtelling van dezelfde stapel, en daarmee maak je het probleem juist in plaats van dat je het oplost. Houd één variant met één barcode aan en koppel de andere code daaraan.
Wat gebeurt er met mijn voorraad als een order op de gekoppelde EAN wordt geannuleerd?
Die wordt teruggeboekt op de hoofd-EAN, op dezelfde plek waar de verkoop werd afgeboekt. Verkoop en annulering van dezelfde orderregel heffen elkaar op, dus netto verandert er niets aan je telling.
Kan ik twee gekoppelde EAN's weer uit elkaar halen?
Ja. Je maakt de koppeling tussen de twee codes los op het productscherm. Daarna verschijnt het aanbod onder de losgemaakte code weer als los aanbod in de lijst, zodat je het opnieuw kunt beoordelen. Was die code ook een echte Shopify-barcode, dan zet de eerstvolgende voorraadronde dat vanzelf recht.
Helpt koppelen ook als bol een andere EAN aan de productpagina hangt dan mijn shop?
Voor je voorraad wel: de verkoop op die pagina landt op je eigen telling en boekt daar af. Voor de pagina zelf niet. Wil je meedoen op de pagina waar de vraag al zit, dan moet je aanbod daadwerkelijk onder de EAN van die pagina staan.