Verzenden en fulfilment

MyParcel heeft al een plugin voor je shop. Het gat zit meestal ergens anders

De meeste Nederlandse webshops op WooCommerce draaien al de officiële MyParcel-plugin, en voor een gewone shop doet die zijn werk: een label per order, PostNL of DHL als vervoerder, een bezorgopties-widget bij het afrekenen. De plugin is gebouwd voor het gewone geval, en daar is hij goed in.

Waar hij niet voor gebouwd is, is alles wat een shop niet gewoon maakt: een brievenbuspakje-vlag die van echte afmetingen afhangt in plaats van een gok, een leeftijdscheck die de vervoerder moet bereiken en niet alleen de checkoutpagina, of een orderstroom die ergens anders vandaan komt dan een WooCommerce-winkelwagen.

  • REST API, meestal gebruikt via de WooCommerce-plugin
  • Brievenbuspakjes, leeftijdscheck, verzekerd en handtekening voor ontvangst
  • Vanaf € 1.700 plus servicekosten
De tool

Wat MyParcel is, en waar de plugin ophoudt

MyParcel is een Nederlandse verzenddienst gebouwd rond PostNL, DHL en DPD, gericht op Nederlandse en Belgische webshops en niet op een wereldwijd multicarrier-platform. De kracht zit in de lokale details: brievenbuspakjes tegen een lager tarief voor alles wat door de brievenbus past, avondlevering, ophaalpunten, en bezorgdagkeuze waar Nederlandse kopers aan gewend zijn geraakt.

Voor WooCommerce en Shopify bestaat een officiële plugin die de meeste shops installeren en daarna nooit meer aanraken, en dat is precies goed voor een shop die één soort product in één soort maat verkoopt. De API onder de plugin is open, dus een shop die de standaardinstellingen van de plugin is ontgroeid — een mix van heel klein en heel groot, producten met leeftijdsgrens, een checkout waar de plugin niet voor is geschreven — kan er direct op gebouwd worden.

Wat er misgaat

Drie dingen die misgaan rond een MyParcel-koppeling

Alle drie gebeuren omdat de plugin een redelijke standaardaanname maakt, en de echte catalogus van een shop daar niet mee overeenkomt.

Elk pakket verstuurt tegen pakkettarief, ook wat er door de brievenbus past

Het brievenbuspakjestarief vraagt echte afmetingen om ervoor in aanmerking te komen, en de meeste productcatalogi zijn nooit zo precies opgemeten — er staat alleen een gewicht bij. Dus verstuurt een telefoonhoesje, een boek of een setje oordopjes als volwaardig pakket tegen volle prijs, een paar euro extra per keer, op producten die met honderden tegelijk de deur uitgaan.

Wat je in plaats daarvan ziet

Afmetingen worden één keer per product vastgelegd en MyParcel bepaalt het tarief op basis van de echte maat, niet een gok. Bij een catalogus met kleine artikelen betaalt alleen dit het project vaak al binnen een seizoen terug.

De leeftijdscheck gebeurt bij het afrekenen en houdt daarna op ertoe te doen

Een shop die alcohol of vapes verkoopt zet bij het afrekenen een vinkje neer waarmee de klant bevestigt achttien te zijn, en behandelt dat als compliance. PostNL en DHL bieden allebei een echte leeftijdscheck aan de deur, maar die gebeurt alleen als de zending daarvoor gemarkeerd is — en een vinkje op een website markeert uit zichzelf niets.

Wat je in plaats daarvan ziet

Een product dat als leeftijdsgebonden staat gemarkeerd neemt die markering helemaal mee tot in de zending, zodat de vervoerder daadwerkelijk een ID checkt aan de deur in plaats van dat de website een vinkje afvinkt tegen niemand.

Orders die niet uit de winkelwagen komen bereiken MyParcel helemaal niet

Een telefonische order, een marktplaatsverkoop, een abonnementverlenging — alles wat geen gewone WooCommerce-checkout is gaat niet door de plugin, dus maakt iemand die zending met de hand aan in het MyParcel-backend, en typt een adres over dat al ergens bestaat.

Wat je in plaats daarvan ziet

Elke orderbron die een API kan aanroepen kan een zending aanmaken op dezelfde manier als de plugin, dus houdt de uitzondering op een handmatige klus te zijn en wordt hij gewoon nog een order.

De rekening van het handwerk

Wat de blinde vlekken van de plugin per order kosten

Het brievenbuspakje-gat is het duidelijkst te becijferen: het tariefverschil tussen een brievenbuspakje en een standaardpakket is doorgaans een paar euro. Bij een catalogus waar de helft van de artikelen ervoor in aanmerking zou komen en duizend orders per maand standaard tegen het hogere tarief de deur uitgaan, is dat een bedrag dat elke maand écht na te rekenen is en verdwijnt om geen andere reden dan een veld dat nooit is ingevuld.

Het gat bij handmatige orders is kleiner in volume en groter in irritatie: elke order die met de hand in het MyParcel-backend wordt aangemaakt kost drie tot vijf minuten, en dat is precies het ordertype — telefonisch, marktplaats, abonnement — dat achteraf het vaakst een correctie nodig heeft omdat iemand het één keer haastig heeft ingetypt.

Wat we bouwen

Wij bouwen ook het ding aan de andere kant

Voor de meeste shops op MyParcel is de eerlijke eerste stap checken of de instellingen van de plugin simpelweg fout staan, niet of er een maatwerkkoppeling nodig is — een verrassend deel van het brievenbuspakjesverlies dat we vinden is een configuratiefout, geen project.

Een koppeling heeft twee kanten. Er zijn genoeg bureaus die de API-call voor je bouwen en je een JSON-payload overhandigen; dat is de makkelijke helft. De moeilijke helft is waar die data in landt — een website, een webshop, een portaal waar je klanten op inloggen, een intern hulpmiddel dat een spreadsheet vervangt. JKC bouwt beide kanten, en daarom blijven de koppelingen die wij bouwen meestal werken: aan de ontvangende kant is voor ons niets een zwarte doos.

API-koppelingen

De koppeling zelf: authenticatie, veldmapping, rate limits, retries en een wachtrij die overleeft dat het andere systeem een uur uit de lucht is. Gebouwd op de gedocumenteerde API als die er is, en op wat de leverancier werkelijk aanbiedt als die er niet is.

Websites

WordPress-sites die uit je systemen lezen in plaats van ze met de hand na te typen: een vacaturepagina die uit je HR-systeem komt, een teampagina die je salarisadministratie volgt, prijzen en beschikbaarheid die de echte zijn.

Webshops

WooCommerce-shops waarin de order de laatste keer is dat iemand hem intypt: hij wordt een factuur in je boekhoudpakket, een label bij je vervoerder, een voorraadmutatie in je warehouse en een regel in je CRM, uit zichzelf.

Webapplicaties

Als het proces in geen enkel standaardproduct past: een klantportaal, een offertetool, een planbord, een dashboard dat drie systemen tegelijk uitleest. Gebouwd op jouw data, met jouw systemen als bron in plaats van een kopie ervan.

Wat er gekoppeld kan worden

Wat er tussen je shop en MyParcel gekoppeld kan worden

Een deel hiervan doet de plugin al. We zetten het toch op een rijtje, want weten welke regels pluginwerk zijn en welke maatwerk vragen is de echte vraag die de meeste shops hebben.

  • Orders naar MyParcel als zending (uit het gereedschap)

    Adres, vervoerder, gewicht en afmetingen, per order aangemaakt. Standaard werk van de plugin; maatwerk alleen als de order niet uit de normale checkout komt.

  • Brievenbuspakje-geschiktheid per product (in de tool)

    Echte afmetingen bepalen of een artikel voor het lagere tarief in aanmerking komt. Vaker een productdatafix dan een koppelklus, maar de twee moeten wel gekoppeld zijn om ertoe te doen.

  • Leeftijdsmarkering door naar de vervoerder (uit het gereedschap)

    Doorgegeven aan de eigen ID-check van PostNL of DHL aan de deur, voor alcohol, vapes en vergelijkbare producten, in plaats van te stoppen bij een vinkje op de checkoutpagina.

  • Verzekerde waarde en handtekening voor ontvangst (in de tool)

    Per order ingesteld op basis van de winkelwagenwaarde in plaats van een vaste instelling voor alles, zodat een order van € 15 en een order van € 900 niet op dezelfde manier verzekerd worden.

  • Trackingstatus terug naar de shop (uit het gereedschap)

    Bezorgstatus als webhook, die de orderstatus en klantmails voedt zonder dat iemand een aparte trackingpagina hoeft te checken.

Hoe het werkt

Hoe een koppeling bij JKC gebouwd wordt

Elke keer dezelfde vier stappen, om welke tool het ook gaat. Niets hiervan is een workshop waar je voor betaalt: stap één bestaat omdat een koppeling verkeerd afbakenen het duurste is wat er met zo'n koppeling kan gebeuren.

  1. 1. We kijken wat er nu écht wordt overgetypt

    Niet "welke velden bestaan er" maar "welke velden verplaatst iemand nu met de hand, hoe vaak, en wat gaat er stuk als het misgaat". De meeste projecten blijken twee of drie stromen nodig te hebben, geen volledige tweerichtingssync van alles. Dat gesprek is wat de offerte laag houdt.

  2. 2. We kiezen de route, en zeggen waarom

    Een onderhouden connector van de leverancier, een platform als Make of Zapier, of een maatwerkkoppeling op de API. Goedkoopste eerst, niet maatwerk eerst: als een ondersteunde plugin precies doet wat je nodig hebt, dan is dat het antwoord en zeggen we dat ook. Maatwerk is voor de gevallen waarin de kant-en-klare optie zoveel configuratie vraagt dat hij juist het fragiele onderdeel wordt.

  3. 3. We bouwen hem zo dat hij het andere systeem overleeft

    Elke koppeling krijgt retries, een wachtrij en een idempotency-sleutel mee, zodat een order die binnenkomt terwijl de andere kant eruit ligt later wordt afgeleverd in plaats van verdwijnt, en een retry geen tweede factuur aanmaakt. Eerst op een testomgeving waar de leverancier die aanbiedt, zodat het eerste wat je echte administratie ziet een werkende koppeling is.

  4. 4. We dragen hem over met de faalgevallen opgeschreven

    Welke meldingen je krijgt, wat elke melding betekent, wat je eraan doet en wie je belt. Plus de inloggegevens op jouw naam, in jouw eigen kluis — niet in de onze. Een koppeling die niemand behalve wij kan onderhouden is een koppeling die niet van jou is.

Nadat hij live is

Een koppeling die stil faalt is erger dan geen koppeling

Dit is het deel dat in de meeste offertes ontbreekt. Een koppeling die stopt met werken zonder dat iemand het merkt is erger dan handwerk, want bij handwerk merkt iemand het tenminste als het niet gedaan is. Elke koppeling die JKC bouwt wordt gemonitord, en die monitoring is geen bijverkoop — die zit in de servicekosten.

Een melding per mislukt bericht, geen maandrapport

Een bericht dat niet doorkomt geeft binnen het uur een melding, met de regel waar het over ging. Geen dashboard dat je moet onthouden om te bekijken.

Opnieuw versturen, niet opnieuw invoeren

Wat mislukt is blijft in een wachtrij staan en kan opnieuw verstuurd worden zodra de oorzaak weg is, in de juiste volgorde. Niemand hoeft gisteren door te spitten op zoek naar de vier orders die niet zijn aangekomen.

Wij volgen de wijzigingen van de leverancier, zodat jij dat niet hoeft

API's krijgen nieuwe versies, worden uitgefaseerd en gaan op rate limits. Kondigt een leverancier een wijziging aan die jouw koppeling raakt, dan is meebewegen onderdeel van de servicekosten en geen nieuw project.

Wat het kost

Vanaf € 1.700, en de grootste variabele is wie de andere kant heeft gebouwd

Is je shop een gewone WooCommerce- of Shopify-catalogus zonder leeftijdsgebonden producten, dan is de officiële plugin vrijwel zeker goedkoper dan wat wij kunnen bouwen, en dat zeggen we voordat we offreren. Maatwerk verdient zich terug bij brievenbuspakjesprecisie op echt volume, leeftijdsgebonden producten, of een orderbron die de plugin niet dekt.

Een koppeling begint vanaf € 1.700 plus maandelijkse servicekosten, waar de monitoring, de wachtrij en het bijhouden van API-wijzigingen van de leverancier in zitten. Werk buiten een vaste scope is € 95 per uur.

Wat het bedrag beweegt is niet de tool — het is hoe goed het systeem aan de andere kant bekend is. Heeft JKC je website, je webshop of je webapplicatie gebouwd, dan kennen we het datamodel, de uitzonderingen en waar de voorraadaantallen echt vandaan komen, en is een koppeling erin vooral configureren en testen. Is het een systeem dat we nooit hebben opengeslagen, dan beginnen we met een korte technische check aan beide kanten en offreren we daarna, zodat je niet op uurbasis betaalt voor ons uitzoekwerk.

Twee dingen die het bedrag verder bewegen, in onze ervaring meer dan al het andere: of de tool een echte API heeft of alleen een CSV-export, en of de sync twee kanten op moet. Eenrichting is ruwweg de helft van het werk van tweerichting, want tweerichting betekent per veld beslissen welk systeem wint als ze het oneens zijn — en die beslissing is het dure deel, niet de code.

Vragen

Veelgestelde vragen over MyParcel koppelen

Meestal niet, en dat is het eerlijke eerste antwoord. De plugin dekt de gewone shop prima; maatwerk is voor de delen waar hij niet voor gemaakt is.

De twee die we het vaakst zien: een catalogus waar het brievenbuspakjestarief op echt volume wordt gemist, en een orderbron buiten de normale winkelwagen — telefonische orders, een marktplaats, een abonnementstool — die de plugin nooit ziet.

Gratis, 10 minuten

Geen idee waar de handmatige uren echt naartoe gaan?

Daar is de Groeicheck voor. Tien minuten, zonder verkoopgesprek eraan vast: je krijgt terug waar het dubbele werk zit, welke koppeling zich als eerste terugverdient, en welke eerlijk gezegd niet.