Your Tech Club
KOPPELINGENWOOCOMMERCE

WooCommerce koppelen

WooCommerce draait op je eigen WordPress-site. Je bepaalt zelf de hosting, de plugins en wat er met je data gebeurt. Dat betekent ook dat een koppeling afhangt van jouw server. Goed gekoppeld verwerk je orders zonder overtypen en klopt je voorraad op elk kanaal.

Alle koppelingen
4,8 uit 127 reviews
ISO 9001 & 27001
WooCommerceWebshop en betalen · Automattic
  • Orders gaat heen en weer met Je andere systemen
  • Voorraad per product of variatie gaat heen en weer met Je andere systemen
  • Producten, prijzen en EAN gaat heen en weer met Je andere systemen
  • Klanten gaat heen en weer met Je andere systemen
Je andere systemenZoals Exact Online, Moneybird, SnelStart

Onder meer gebouwd voor Tata Steel, M&G Investments, Digistore24, Toppers in Concert, Bar-le-Duc en Loogman

Wat je uitwisselt

Dit zijn de gegevens die organisaties het vaakst tussen systemen laten lopen. Welke daarvan voor jou tellen, hangt af van waar het werk nu blijft liggen.

Orders

Nieuwe en gewijzigde orders gaan naar je ERP, magazijn of boekhouding, met orderregels, btw, verzendmethode en status. Wijzigt het magazijn de status, bijvoorbeeld naar verzonden, dan komt die terug in WooCommerce.

Voorraad per product of variatie

WooCommerce houdt voorraad bij per product of per variatie. Komt de echte voorraad uit je ERP of magazijn, dan werkt de koppeling de standen in WooCommerce bij, zodat je niet verkoopt wat er niet is.

Producten, prijzen en EAN

Artikelen, variaties, prijzen en productteksten komen vaak uit een ERP of PIM. Sinds versie 9.2 heeft WooCommerce een eigen veld voor GTIN, UPC, EAN of ISBN. Handig als je ook op een marktplaats verkoopt.

Klanten

Klantaccounts en adressen gaan naar je CRM of e-mailplatform, zodat service en marketing met dezelfde gegevens werken als je webshop.

Verzending en track-and-trace

De koppeling met je verzendplatform of magazijn maakt het label en zet de track-and-trace bij de order. De klant krijgt een verzendmail met volglink, en je ziet in WooCommerce wat er onderweg is.

Terugbetalingen en uitbetalingen

Terugbetalingen die je in WooCommerce doet, moeten ook in je boekhouding landen, net als de uitbetalingen van je betaalprovider. Anders sluiten omzet en bank niet op elkaar aan.

Standaard of maatwerk

Niet altijd. Doet een bestaande koppeling voor WooCommerce precies wat je nodig hebt, dan zeggen we dat ook.

Wat er al bestaat

Voor WooCommerce bestaan veel plugins die een koppeling leveren, in de WooCommerce Marketplace en in de pluginmap van WordPress.org. Sommige komen van de leverancier van het andere systeem zelf. Mollie onderhoudt bijvoorbeeld de plugin Mollie Payments for WooCommerce, met volledige en gedeeltelijke terugbetalingen vanuit WooCommerce.

Een plugin draait op je eigen WordPress. Dat is handig, want je hebt geen aparte dienst nodig. Het nadeel: elke plugin is code op je webshopserver die je bijwerkt en test bij elke update van WordPress en WooCommerce. Een plugin per koppeling wordt snel onoverzichtelijk.

Is je proces standaard, dan is een goed onderhouden plugin vaak genoeg. Wijkt het af, dan kan een koppeling ook buiten WordPress draaien en via de REST API en webhooks werken. We kunnen elk systeem aan WooCommerce koppelen, ook als er geen plugin voor bestaat.

Wanneer maatwerk nodig is
  • Er is geen plugin voor je ERP, WMS of boekhoudpakket, of de plugin kan niet met jouw inrichting overweg.
  • Je gebruikt eigen productvelden of plugins voor bundels, abonnementen of B2B-prijzen die een standaardkoppeling niet kent.
  • Je wilt geen extra plugins op je webshopserver, maar een koppeling die los van WordPress draait.
  • Je verkoopt ook op marktplaatsen en wilt één voorraad over alle kanalen.
Hoe het technisch werkt

REST API

WooCommerce heeft een REST API (versie 3) die is ingebouwd in de WordPress REST API. Je werkt met JSON en de gewone HTTP-methoden voor producten, orders, klanten en coupons, en er zijn batch-endpoints om meerdere objecten tegelijk te wijzigen. Voorwaarde: mooie permalinks aan in WordPress, want met de standaardpermalinks werken de endpoints niet. Lijsten komen standaard per 10 items terug.

API-sleutels

Sleutels maak je aan onder WooCommerce, Instellingen, Geavanceerd, REST API. Je koppelt een sleutel aan een gebruiker en kiest lezen, schrijven of beide. Over HTTPS stuur je consumer key en secret mee met basic authentication. Over gewoon HTTP is OAuth 1.0a verplicht.

Webhooks

WooCommerce stuurt webhooks bij het aanmaken, wijzigen en verwijderen van orders, producten, klanten en coupons. Elk bericht heeft een HMAC-SHA256-handtekening in de header X-WC-Webhook-Signature. Na vijf mislukte afleveringen op rij schakelt WooCommerce de webhook standaard uit. De logs staan onder WooCommerce, Status, Logs.

Verzenden via WP-Cron

Webhooks worden standaard op de achtergrond verstuurd via WP-Cron. WP-Cron controleert bij elke paginalading welke taken klaarstaan. Komt er een tijd geen bezoeker, dan wacht een geplande taak zolang.

Eigen ordertabellen (HPOS)

Sinds WooCommerce 8.2 staan orders in nieuwe installaties standaard in eigen tabellen (High-Performance Order Storage), niet meer in de WordPress-posttabellen. Extensies die daar niet op zijn aangepast, kunnen problemen geven. Werk dus via de API en niet rechtstreeks in de database.

AI ertussen

Een koppeling verplaatst gegevens. AI kan daartussen lezen, sorteren en een voorstel klaarzetten. Waar het ertoe doet, beslist een mens.

Productteksten

AI schrijft voorstellen voor productteksten en SEO-titels op basis van je productdata, in de toon van je winkel. Een redacteur keurt ze goed in WordPress voordat ze zichtbaar worden.

Klantvragen over een bestelling

Een assistent zoekt met ordernummer en e-mailadres de status en track-and-trace op via de REST API en geeft direct antwoord. Terugbetalingen en uitzonderingen blijven bij je team.

Afwijkingen in de administratie

AI legt orders, terugbetalingen en de uitbetalingen van je betaalprovider naast elkaar en meldt wat niet klopt. Een mens beslist wat er met de afwijking gebeurt.

Waar het misgaat

Een uitgeschakelde webhook

Is de ontvangende server een tijd onbereikbaar, dan schakelt WooCommerce de webhook na vijf mislukte afleveringen uit. Zonder bewaking merk je dat pas als orders ontbreken. Controleer de status en haal wijzigingen ook periodiek op via de API.

WP-Cron op een rustige site

Omdat WP-Cron op paginabezoeken wacht, kan een webhook 's nachts lang op zich laten wachten. Laat WP-Cron door een vaste servertaak starten, zodat meldingen niet van bezoekers afhangen.

Updates die de koppeling breken

Een update van WordPress, WooCommerce of een andere plugin kan de gegevens veranderen die je koppeling verwacht. Test updates eerst op een kopie van je site.

Rechtstreeks in de database lezen

Oudere koppelingen lezen orders soms direct uit de WordPress-tabellen. Met HPOS staan nieuwe orders ergens anders, en dan gaat zo'n koppeling mis. Werk via de REST API.

Zo bouwen we een koppeling

  1. Wat moet waarheen

    Welke gegevens gaan over, in welke richting, en welk systeem leidend is als twee waarden verschillen. Dat staat op papier voordat er iets gebouwd wordt. Voor deze koppeling gaat het om: Orders, Voorraad per product of variatie, Producten, prijzen en EAN, Klanten, Verzending en track-and-trace, Terugbetalingen en uitbetalingen.

  2. Velden en regels

    Per veld de vertaling tussen de systemen: statussen, btw-codes, grootboekrekeningen, artikelnummers. En wat er gebeurt bij een dubbel of een ontbrekend gegeven. Voor deze koppeling gaat het om: REST API, API-sleutels, Webhooks, Verzenden via WP-Cron, Eigen ordertabellen (HPOS).

  3. Testen met echte gevallen

    In een testomgeving of testadministratie, met de uitzonderingen die in de praktijk voorkomen: creditnota's, deelleveringen, gewijzigde klantgegevens.

  4. Live, met logging en bewaking

    Elke synchronisatie wordt gelogd en bij een fout krijgt iemand een melding. Verandert de API van een leverancier, dan passen wij de koppeling aan.

Het team van Your Tech Club op kantoor in Amsterdam
Amsterdam
Wie je spreekt

Geen accountmanager. Je spreekt iemand die zelf koppelingen bouwt, en die zegt het ook als een standaardkoppeling genoeg is.

Joey van VlietJoey van VlietOprichter
Yassine SeghrouchniYassine SeghrouchniOprichter
  • Kantoor aan de Duivendrechtsekade in Amsterdam
  • ISO 9001 en ISO 27001, gecertificeerd door Kiwa
  • 500 projecten opgeleverd
  • 4,8 uit 127 reviews
Veelgestelde vragen

Heeft WooCommerce een API?

Ja. WooCommerce heeft een REST API (versie 3) die is ingebouwd in WordPress. Je maakt API-sleutels aan onder WooCommerce, Instellingen, Geavanceerd, REST API, en kiest per sleutel lees- of schrijfrechten. Via die API lees en wijzig je producten, orders, klanten en coupons.

Plugin of eigen koppeling: wat kies ik?

Een plugin is genoeg als je proces standaard is en de plugin actief wordt onderhouden. Kies een eigen koppeling als je eigen velden, bundels of meerdere magazijnen hebt, of als je geen extra plugins op je webshopserver wilt. Zo'n koppeling kan ook buiten WordPress draaien.

Waarom komen mijn WooCommerce-webhooks niet aan?

Controleer eerst of de webhook nog actief is: na vijf mislukte afleveringen schakelt WooCommerce hem uit. Kijk daarna in de logs onder WooCommerce, Status, Logs. Komen ze wel, maar laat, dan wacht WP-Cron waarschijnlijk op bezoekers.

Maakt een koppeling mijn webshop trager?

Dat hoeft niet. Laat zware taken, zoals duizenden prijzen bijwerken, in stappen en buiten drukke uren lopen, en gebruik de batch-endpoints van de API. Een koppeling die als aparte dienst draait, legt minder werk op je WordPress-server dan een plugin.

Hoe test ik een WooCommerce-koppeling veilig?

Test op een kopie van je site (een staging-omgeving) met testproducten en testorders, en zet je betaalprovider daar in testmodus. Controleer ook wat er gebeurt als de ontvangende kant even niet bereikbaar is. Pas als alles klopt, zet je de koppeling op je live site.