Shopify POS integratie — online en offline in sync
Terug naar blog

Shopify POS integratie — online en offline in sync

AuthorRuthger Idema
9 juni 20269 min leestijd

Shopify POS integratie: unified inventory, BOPIS, klantprofielen en multi-location valkuilen. Zo houd je online en offline webshop écht in sync.

Shopify POS integratie — online en offline in sync

Meer dan 40% van de shoppers koopt online en haalt op in de winkel, of andersom. Als je voorraad en klantdata dan in twee systemen leven, betaal je dat vroeg of laat in retouren, mismatch en verloren omzet. Shopify POS is de native oplossing om online en fysiek te verbinden — maar alleen als je de integratie goed opzet.

Dit artikel gaat niet over knoppen klikken in de adminpanel. We behandelen unified inventory, omnichannel orderafhandeling, klantprofielen, hardware-keuzes en de valkuilen die wij bij klanten tegenkomen zodra er meerdere locaties in het spel zijn.


Unified inventory: één waarheidsbron

Het fundament van Shopify POS integratie is de gedeelde productcatalogus. Elke verkoop — online of in de winkel — trekt direct van dezelfde voorraad af. Dat klinkt vanzelfsprekend, maar de implementatie vraagt beslissingen.

Locatie-instellingen zijn bepalend. In Shopify stel je per product in vanaf welke locaties het verkocht mag worden. Vergeef je een locatie toe te voegen aan een product, dan is dat product simpelweg niet beschikbaar op die locatie — ook niet als er fysiek voorraad ligt. Wij zien dit fout gaan bij klanten die hun productcatalogus importeren via een externe feed en locatiemapping overslaan. Multi-location vereist expliciete toewijzing. Heb je meerdere winkels en een magazijn, dan wijs je per product en per locatie voorraadniveaus toe. Shopify biedt hiervoor een Inventory API die je kunt aansturen vanuit een custom sync-script of een WMS-koppeling.

Voorbeeld: inventory level ophalen via REST

bash
curl -X GET \
  "https://{shop}.myshopify.com/admin/api/2024-04/inventory_levels.json?inventory_item_ids={id}" \
  -H "X-Shopify-Access-Token: {token}"

En een update sturen:

bash
curl -X POST \
  "https://{shop}.myshopify.com/admin/api/2024-04/inventory_levels/set.json" \
  -H "Content-Type: application/json" \
  -H "X-Shopify-Access-Token: {token}" \
  -d '{
    "location_id": 12345678,
    "inventory_item_id": 87654321,
    "available": 25
  }'

Gebruik je een ERP of WMS als bron van waarheid, dan loopt de sync via deze endpoints. Realtime push via webhooks is beter dan polling: stel inventory_levels/update in als webhook-trigger, zodat je systeem direct reageert op wijzigingen.


Omnichannel orderafhandeling: BOPIS en ship-from-store

Buy Online, Pick Up In Store (BOPIS) en ship-from-store zijn de twee belangrijkste fulfillment-modellen die je met Shopify POS kunt activeren.

BOPIS werkt native binnen Shopify: de klant kiest bij checkout een ophaallocatie. De winkel krijgt een melding, reserveert de voorraad en stuurt een bevestiging zodra de bestelling klaar staat. Reken op een implementatietijd van een halve dag als je setup verder klopt — de meeste tijd gaat zitten in het instellen van locaties en notificatieflows. Ship-from-store is complexer. Je wilt dat Shopify bij een online order automatisch de fulfillment-locatie kiest op basis van afstand, beschikbare voorraad of een combinatie. Out-of-the-box ondersteunt Shopify dit deels: je kunt per locatie priority instellen. Voor geavanceerde routing — denk aan split-shipments of carrier-rate-per-locatie — heb je een third-party fulfillment app of een custom integration nodig.

Vergelijking fulfillment-modellen

ModelShopify nativeCustom dev nodigKlantervaring
BOPISJaNeeSnel, geen verzendkosten
Ship-from-store (basis)GedeeltelijkSomsSnellere levering lokaal
Ship-from-store (geavanceerd)NeeJaOptimale routing
Click & collect (meerdere locaties)JaNeeKeuzevrijheid klant

Een valkuil: als je BOPIS inzet, maar de winkelmedewerker de order niet snel genoeg verwerkt, bouw je frustratie op aan de klantzijde. Stel een SLA in van maximaal twee uur, en zorg dat de POS-app zichtbaar melding maakt van open pick-up orders.


Klantprofielen: herken de klant op beide kanalen

Met Shopify POS heb je toegang tot hetzelfde klantprofiel dat ook bij de online checkout gebruikt wordt. De medewerker ziet aankoopgeschiedenis, lopende orders en eventuele kortingscodes direct in de POS-interface.

In de praktijk betekent dit dat een klant die online een maat L heeft besteld, in de winkel direct wordt herkend zonder opnieuw zijn maat op te geven. Dat klinkt klein, maar het verschil in klantervaring is merkbaar. Loyaltyprogramma's werken het best als ze native integreren met het klantprofiel. Shopify heeft geen ingebouwd loyaltysysteem, maar apps als Smile.io, LoyaltyLion of Yotpo Loyalty koppelen aan zowel online als POS-transacties. Let bij de keuze op: ondersteunt de app ook POS-transacties, of alleen weborders? Niet alle apps doen dit goed. GDPR-aandachtspunt: klantprofielen aanmaken in de winkel vereist expliciete toestemming. Train je winkelmedewerkers hierin. Shopify biedt een consent-veld in de POS-klantregistratie, maar het is aan jou om dit correct in te zetten.

Hardware en setup

Shopify POS draait op iPad (iOS 16+) of iPhone. Android wordt niet ondersteund — punt. Als je al Android-hardware in de winkel hebt, moet je investeren of een andere POS overwegen.

Hardware-overzicht

ComponentShopify-eigenThird-party optiePrijs globaal
Kaartlezer (tap/chip)Shopify POS GoStripe Terminal€50–€300
Barcode scannerNiet eigenZebra, Honeywell (Bluetooth)€80–€250
KassaladeNiet eigenStar, APG€80–€200
BonnenprinterNiet eigenStar Micronics, Epson€150–€350
iPad-standaardShopify POS StandRAM Mount, Heckler€80–€300

De Shopify POS Go is een alles-in-één handapparaat met ingebouwde scanner en kaartlezer. Handig voor pop-ups en beurzen. Voor een vaste kassa is een iPad-setup met losse hardware doorgaans flexibeler en goedkoper op de lange termijn.

Netwerk: POS werkt offline voor basisverkoop, maar sync vereist verbinding. Gebruik een dedicated wifi-netwerk voor de kassa — niet het gastennetwerk. Stel een mobiele hotspot in als fallback.

Shopify POS Lite vs. Pro

Shopify heeft twee POS-tiers: Lite (inbegrepen bij elk Shopify-abonnement) en Pro (doorgaans circa €89/maand per locatie, tarieven kunnen variëren).

FeatureLitePro
BasisverkoopJaJa
Meerdere medewerkers met eigen PINNeeJa
Kassalade en uitwisselrapportenNeeJa
Ruilingen en retourenworkflowBeperktVolledig
Inruilwaarde op kassabonNeeJa
Click & collect (POS-zijde)BeperktVolledig

Voor serieuze fysieke retail is Lite te beperkt. Reken op Pro als je meerdere medewerkers, kassamutatierapporten of retourenworkflow nodig hebt.


Valkuilen bij multi-location

Meerdere winkels of een combinatie van winkel en magazijn? Dan komen er specifieke problemen bij.

1. Locatie niet toegewezen aan checkout. Je kunt in Shopify instellingen per locatie aangeven of online orders daarvan fulfilled mogen worden. Vergeet je een nieuwe locatie hierbij, dan wordt die locatie simpelweg genegeerd bij online fulfillment — ook al ligt er voorraad. 2. Negatieve voorraad. Shopify staat standaard negatieve voorraad toe. Dat betekent dat je producten kunt verkopen die je niet hebt. Schakel "Traceer voorraad" in per product én zet de instelling voor negatieve verkoop uit als je dat niet wilt. 3. Voorraadsync-lag bij externe systemen. Koppel je een ERP of WMS via een middleware (Channable, Stockbase, of een custom Laravel-integratie), dan is de sync niet altijd realtime. Bij snelle verkoop van schaarse voorraad leidt een lag van zelfs 60 seconden tot overselling. Gebruik webhooks in plaats van polling, en bouw een buffer in voor populaire SKUs. 4. BTW en kassabon per locatie. Als je locaties in verschillende landen hebt, of als je B2B-klanten bedient vanuit een fysieke locatie, dan kan de BTW-configuratie per locatie verschillen. Shopify Markets helpt hierbij, maar de setup vereist aandacht. 5. Medewerkersbeheer. In Shopify POS Pro krijgt elke medewerker een eigen PIN. Zorg dat je bij uitdiensttreding direct de toegang intrekt — er is geen automatische offboarding.

Wij zien bij klanten met drie of meer locaties dat de meeste problemen niet technisch zijn, maar organisatorisch: onduidelijkheid over wie verantwoordelijk is voor voorraadcorrecties, of medewerkers die een andere werkwijze hebben dan de ingestelde flow.


Wanneer Shopify POS NIET de juiste keuze is

Eerlijkheid loont. Shopify POS is sterk als je primair op Shopify draait en de fysieke verkoop een aanvulling is. Maar er zijn situaties waarin een andere aanpak beter werkt:

  • Je hebt een zware ERP-integratie nodig (SAP, Microsoft Dynamics) met complexe prijslogica per klant of contract — dan is Shopify POS als front-end te beperkt.
  • Je werkt met versgemiddelde voorraadbeheer (vlees, verse producten met gewichtsverkoop) — Shopify ondersteunt geen gewichtsgebaseerde prijzen native in POS.
  • Je hebt meer dan 20 locaties met complexe fulfillment-routing — dan zijn dedicated OMS-oplossingen (Fluent Commerce, OneStock) robuuster.
  • Je wil geen Shopify-abonnement maar wel een koppeling met Magento of een eigen platform — dan kijk je beter naar een standalone POS zoals Lightspeed of Casio met een API-koppeling naar je bestaande webshop.

Voor een Shopify setup zonder bestaande fysieke retailhistorie is POS een logische stap. Heb je al een complexe omnichannel-architectuur op basis van Magento of Laravel, dan is de migratie-afweging ingewikkelder.


Aan de slag

Een Shopify POS integratie opzetten kost bij een enkelvoudige locatie en een schone Shopify-setup doorgaans één tot drie dagen werk: hardware, locatie-instellingen, klantdatamigratie en testscenarios (BOPIS, retour, offline-modus). Bij meerdere locaties of externe systeemkoppelingen loopt dat op naar twee tot vier weken, afhankelijk van de datastatus in je ERP of WMS.

De meeste tijd verlies je niet aan de techniek maar aan beslissingen: welke locatie is de fulfillment-default, hoe ga je om met voorraadcorrecties, en wie is eigenaar van de klantdata in de winkel?

Wil je dit goed aanpakken zonder tijdverlies op de verkeerde keuzes, neem dan contact op. We kijken naar je huidige setup en geven concreet advies over wat de snelste weg naar een werkende omnichannel-integratie is.


Veelgestelde vragen

Kan ik Shopify POS gebruiken zonder Shopify webshop?

Nee. Shopify POS is onlosmakelijk verbonden met een Shopify-winkel. Je hebt minimaal een Shopify Basic-abonnement nodig. Er is geen standalone POS-product.

Wat gebeurt er als het internet uitvalt?

Shopify POS heeft een offline-modus. Je kunt basisverkopen afhandelen (pin, cash). De transacties worden gesynchroniseerd zodra de verbinding herstelt. Complexe acties zoals het ophalen van klantprofielen of het verwerken van een BOPIS-order werken niet offline.

Hoe migreer ik klantdata van mijn oude kassasysteem?

Via een CSV-import in Shopify. Zorg dat e-mailadressen als unieke identifier overeenkomen met bestaande online accounts — dan worden profielen samengevoegd in plaats van gedupliceerd. Bij grote migraties is een validatiestap via de API aan te raden om duplicaten te voorkomen.

Werkt Shopify POS met Shopify Markets voor internationale locaties?

Ja, maar de configuratie is niet triviaal. Je kunt per locatie een market en bijbehorende valuta/BTW instellen. Test dit uitgebreid in een staging-omgeving voordat je live gaat — fouten in BTW-configuratie zijn achteraf lastig te corrigeren in de boekhouding.

Ruthger Idema

Geschreven door Ruthger Idema

15+ jaar ervaring in e-commerce development. Gespecialiseerd in Magento, Shopify en Laravel maatwerk.

Meer over ons team →
Deel dit artikel:

Wil je jouw e-commerce naar het volgende niveau?

Plan een vrijblijvend gesprek met onze experts over Magento, Shopify of Laravel maatwerk.

Plan een Tech Check