Verzenden en fulfilment

Monta is een warehouse met een API, geen verzendtool met een database

Bij de meeste tools in deze verzendcategorie is de shop de bron van de waarheid en handelt de verzendtool naar wat de shop hem vertelt. Bij Monta is dat omgedraaid. Monta is een fulfilmentpartner — een warehouse, met mensen en stellingen en een WMS achter de API — en de voorraad in dat warehouse is de echte voorraad. Het getal in je shop is een kopie, en die is alleen zo actueel als de laatste keer dat iemand Monta heeft gevraagd wat er echt staat.

Die ene omkering verandert bijna elke aanname die een shop normaal maakt over een verzendkoppeling, te beginnen met welke kant de sync op moet lopen.

  • Eigen WMS-API, voorraad staat bij Monta
  • Fulfilmentorders eruit, voorraad en status terug
  • Vanaf € 1.700 plus servicekosten
De tool

Wat Monta is, en waarom het niet zomaar weer een verzend-API is

Monta is een Nederlands fulfilmentbedrijf: je stuurt ze voorraad, zij slaan die op in hun eigen warehouse, en als er een order binnenkomt picken en verpakken zij hem en geven hem namens jou aan een vervoerder mee. De API zit voor hun warehouse management systeem, niet voor een verzendlabelprinter — de objecten zijn dingen als inkomende zendingen, voorraadlocaties en fulfilmentorders, niet gewoon pakketjes.

Dat maakt de technische vorm van een koppeling echt anders dan bij Sendcloud of MyParcel. Je vertelt Monta niet zozeer wat er verstuurd moet worden, maar dat er een order bestaat die gepickt moet worden, en je beheert niet je eigen voorraadgetal maar leest dat van hen. Vervoerderskeuze is vaak ook van hen, onderhandeld via hun eigen volume — weer iets waar een shopeigenaar niet over hoeft na te denken, en ook iets waar hij geen directe controle over heeft.

Wat er misgaat

Drie dingen die misgaan als de voorraad ergens anders staat

Alle drie zijn terug te voeren op dezelfde gewoonte: Monta behandelen als een verzendtool die op je shop reageert, in plaats van een warehouse waarvan je shop de getallen moet volgen.

De shop verkoopt voorraad die het pand al heeft verlaten

Een artikel raakt beschadigd tijdens het picken, of een retour wordt aan de kant van Monta verwerkt, of een voorraadtelling corrigeert simpelweg een oud getal — en niets daarvan bereikt de shop tot de volgende geplande sync, of nooit, als niemand die heeft gebouwd. De shop blijft voorraad verkopen die fysiek niet meer bestaat.

Wat je in plaats daarvan ziet

Voorraad wordt op een schema dat vaak genoeg is uitgelezen bij Monta, en een correctie aan hun kant — schade, een hertelling, een verwerkte retour — verschijnt in de shop voordat hij opnieuw verkocht kan worden.

Een order wordt door het warehouse geweigerd, en niemand bij de shop weet het

Monta weigert een fulfilmentorder om een reden die aan hun kant logisch is — een adres dat de validatie niet doorstaat, een sku die nooit in hun systeem is geregistreerd, voorraad die er toch niet blijkt te zijn — en komt die weigering niet terug naar de shop, dan verstuurt de order gewoon nooit. De bevestigingsmail van de klant zegt dat hij onderweg is. Dat is hij niet.

Wat je in plaats daarvan ziet

Een weigering van Monta is binnen het uur een melding met het ordernummer en de reden erbij, zodat iemand het echte probleem oplost in plaats van dat een klant het een week later ontdekt door te vragen waar zijn pakket blijft.

Natellen betekent dozen tellen, niet facturen matchen

Bij een boekhoudkoppeling betekent natellen twee getallen op een scherm. Bij Monta betekent het een fysieke voorraadtelling in hun warehouse tegen wat jouw systemen denken dat er zou moeten zijn, en het verschil tussen de twee wordt verklaard door dingen die standaard niet in een API verschijnen — een verkeerde telling, een verkeerd gepickt artikel, een retour die is ingescand maar nog niet verwerkt.

Wat je in plaats daarvan ziet

Voorraadmutaties — niet alleen voorraadniveaus — worden uit Monta gehaald, zodat een verschil terug te voeren is op een echte gebeurtenis in plaats van op een schouderophalen en een handmatige hertelling.

De rekening van het handwerk

Wat een niet-gesynchroniseerde Monta-koppeling je kost

Overselling is de dure, en dat op een specifieke manier: een uitverkocht artikel dat te laat verstuurt wordt meestal versneld verzonden om het goed te maken, dus de kost is niet alleen het excuus maar een opgewaardeerde verzendmethode die de marge op die order opeet. Een handvol van deze per week, tegen het prijsverschil tussen standaard en next-day, telt snel op tot een echt bedrag.

De handmatige voorraadcheck die het gat ondertussen dicht — iemand die dagelijks inlogt op het eigen dashboard van Monta om de getallen tegen de shop te vergelijken — is vijftien tot twintig minuten per dag die puur bestaan omdat niets de voorraad automatisch uitleest. Klein op zichzelf, en het is de check die precies de dag wordt overgeslagen dat het ertoe deed.

Wat we bouwen

Wij bouwen ook het ding aan de andere kant

Bij Monta zit het echte werk in een shop ervan afhelpen om het eigen voorraadveld als waarheid te behandelen — elke productpagina, elke lage-voorraadwaarschuwing, elke bestel-bijwaarschuwing moet naar het getal van Monta wijzen in plaats van een lokaal getal, en dat raakt meer van een shop dan mensen vooraf verwachten.

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 Monta gekoppeld kan worden

Let op hoeveel hiervan uit Monta komen in plaats van erin gaan — dat is de omkering waar deze pagina steeds op terugkomt.

  • Orders als fulfilmentorder bij Monta (uit het gereedschap)

    Sku, aantal, adres en gewenste vervoerder of dienst, verstuurd op het moment van de order zodat picken dezelfde dag kan starten in plaats van de volgende batch.

  • Voorraadniveaus terug naar de shop (in de tool)

    De belangrijkste regel hier: vrije voorraad die op een schema uit Monta wordt gelezen, want het getal van Monta is het echte en dat van de shop een kopie ervan.

  • Fulfilmentstatus en weigeringen (in de tool)

    Gepickt, verpakt, verstuurd, of geweigerd met een reden — teruggelezen zodra het gebeurt, zodat een probleem in het warehouse binnen de dag een melding wordt in plaats van een te laat pakket dat niemand kan verklaren.

  • Inkomende voorraad aangekondigd bij Monta (uit het gereedschap)

    Een inkooporder of levering aangekondigd voordat hij aankomt, zodat het warehouse hem verwacht en op de juiste sku's inboekt in plaats van een pallet waar niemand van wist.

  • Retouren verwerkt in het warehouse (in de tool)

    Een retour die door Monta ontvangen en gekeurd is komt terug als voorraadcorrectie en een status waarmee de shop een terugbetaling kan starten, in plaats van een pakket dat zonder uitleg weer in de voorraad opduikt.

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

De API van Monta is gedocumenteerd en werkbaar, maar er zit hier echt meer mapwerk in dan bij een pure verzendtool, want de voorraadautoriteit verschuift naar hun kant en de logica van een shop moet daar meestal op worden aangepast. Het is goedkoper als JKC de shop al heeft gebouwd, want dan weten we al waar elke voorraadafhankelijke beslissing erin wordt genomen.

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 Monta koppelen

Meestal niet, nee — dat is een groot deel van de aantrekkingskracht van een fulfilmentpartner. Wat je wel nodig hebt is een shop die het getal van Monta als leidend behandelt in plaats van uit gewoonte een eigen getal aan te houden dat hij meer vertrouwt.

Sommige klanten houden een kleine lokale voorraad aan voor een specifiek kanaal — beurzen, een fysieke winkel — en dat kan, maar dat moet expliciet als tweede voorraadlocatie gemodelleerd worden en niet stilletjes bij of van het getal van Monta worden opgeteld of afgetrokken.

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.