Naar de inhoud
SyncMyShop

Kennisbank

Wat is een koppeling tussen twee systemen?

Een koppeling is een vaste route waarlangs gegevens automatisch van het ene softwaresysteem naar het andere gaan, zonder dat iemand ze overtypt. Per stroom ligt vast welk systeem de gegevens levert, welk systeem ze ontvangt en hoe elk veld wordt vertaald.

Bijgewerkt op

Een koppeling in gewone woorden

Een koppeling zorgt ervoor dat gegevens die in het ene systeem ontstaan, vanzelf in het andere systeem terechtkomen. Een order uit de webshop staat in het ERP zonder dat iemand hem overtypt. De voorraad uit het magazijnsysteem staat in de webshop zonder dat iemand een export uploadt.

In het Nederlands heet dat een koppeling, en het werkwoord is koppelen. In Engelstalige documentatie staat "integration". Een softwarekoppeling, systeemkoppeling en een koppeling tussen twee pakketten zijn hetzelfde.

Wat een koppeling vervangt, is te berekenen. Een webshop met 40 orders per dag waarvan elke order 3 minuten kost om in het ERP over te nemen, is 40 keer 3 is 120 minuten per dag kwijt. Dat is 2 uur, elke werkdag, en bij 80 orders 4 uur. Het overtypen is ook de plek waar fouten ontstaan: een verkeerd huisnummer, een aantal van 10 in plaats van 1, een order die blijft liggen omdat iemand vrij is.

Een koppeling bestaat uit één of meer stromen. Een stroom is één soort gegeven in één richting: orders van webshop naar ERP is een stroom, voorraad van ERP naar webshop is een tweede.

Welke soorten koppelingen zijn er?

Het onderscheid loopt langs twee lijnen: de technische route en de manier waarop je aan de koppeling komt.

Naar technische route

Route Hoe het werkt Hoe actueel
API De koppeling leest en schrijft per bericht via de API van beide systemen seconden tot minuten
Bestand Het ene systeem zet een CSV- of XML-bestand op een SFTP-server, de koppeling haalt het op en verwerkt het per uur tot één keer per dag
Database De koppeling leest een leesweergave (view) of een kopie van de database minuten
Tussenlaag Aparte software tussen drie of meer systemen, die berichten ontvangt, vertaalt en doorzet hangt af van de routes eronder

De meeste koppelingen van nu lopen via een API. Wat dat inhoudt, staat in wat is een API koppeling. Bestanden zijn gangbaar bij leveranciers en oudere ERP-pakketten. Het verschil tussen die twee staat in API of feed, en de routes voor pakketten zonder API in koppelen zonder API.

Naar herkomst

  • Standaardkoppeling. Een plugin of app die de leverancier of een derde partij heeft gemaakt voor één combinatie van systemen. De velden, de richting en de frequentie liggen vast.
  • Koppelplatform. Een dienst waarin je stromen samenstelt uit een lijst van ondersteunde systemen. De snelheid en de regels zijn die van het platform. Een voorbeeld uit de documentatie van zo'n platform: de voorraad wordt gescand met 10 producten per 5 minuten. Dat is 120 producten per uur, dus een assortiment van 1.000 producten is na ruim 8 uur één keer rond.
  • Maatwerk koppeling. Gebouwd voor jouw systemen, jouw velden en jouw regels: klantspecifieke prijzen, meerdere magazijnen, een veld dat de standaard niet kent.

De technische verschillen tussen de laatste twee staan in maatwerk koppeling of koppelplatform.

Wat gaat er over een koppeling heen?

Dit zijn de koppelingen die in een bedrijf met een webshop het vaakst voorkomen, met wat erover gaat.

Koppeling Heen Terug
Webshop en ERP orders, klantgegevens, retouren voorraad, prijzen, orderstatus
ERP en boekhouding facturen, betalingen, grootboekregels openstaande posten
Webshop en magazijnsysteem (WMS) orders, pickopdrachten voorraad, trackcode
WMS en vervoerder zending, adres, gewicht verzendlabel, trackcode
PIM en verkoopkanalen productteksten, afbeeldingen, kenmerken geen
Leverancier en webshop voorraad, levertijd, inkoopprijs inkooporders
Webshop en inkoopsysteem van de klant winkelmand met artikelen en prijzen inkooporder

Het schema toont hoe dat eruitziet bij een webshop op WooCommerce met Exact Online, Picqer, Sendcloud en Akeneo: zeven stromen tussen vijf systemen.

Vijf systemen en de gegevens die tussen hen heen en weer gaan Akeneo levert productteksten en afbeeldingen aan de webshop. De webshop stuurt orders en klanten naar Exact Online en krijgt prijzen terug. Orders gaan ook naar Picqer, dat voorraad en trackcode terugmeldt. Picqer meldt zendingen aan bij Sendcloud en krijgt de trackcode terug. Akeneo PIM: productdata WooCommerce webshop Exact Online ERP en boekhouding Sendcloud verzendlabels Picqer magazijn teksten, foto's orders, klanten prijzen orders voorraad, trackcode zending trackcode Elke pijl is een stroom met één richting. Per gegeven is één systeem leidend: Exact Online voor prijzen, Picqer voor voorraad, Akeneo voor productteksten.
Zeven stromen tussen vijf systemen. Elke pijl heeft één richting en per gegeven is één systeem leidend.

Een bedrijf met vier systemen heeft dus geen vier losse koppelingen, maar een reeks stromen met afspraken over wie waar leidend is. Die afspraken zijn het eigenlijke werk.

Wat hoort er bij een goede koppeling?

De verbinding zelf is het kleinste deel. Zes dingen eromheen bepalen of de gegevens kloppen.

  1. De vertaling per veld. Twee systemen bewaren zelden hetzelfde. De webshop slaat een prijs op als 19,95, het ERP als 1995 in centen. Wie dat verschil mist, zit een factor 100 naast de juiste prijs op de factuur. De webshop heeft één adresregel Dorpsstraat 12 A, het ERP drie velden: straat, huisnummer, toevoeging. Dit heet veldmapping.
  2. Eén eigenaar per gegeven. Per veld ligt vast welk systeem de waarheid heeft. Zonder die afspraak overschrijven systemen elkaars waarden en weet niemand meer welke klopt.
  3. Richting en frequentie per stroom. Orders direct, prijslijsten één keer per nacht. De afweging staat in realtime of batch.
  4. Een wachtrij met herhaalpogingen. Is het ontvangende systeem traag of onbereikbaar, dan blijft het bericht staan. De koppeling probeert het opnieuw met oplopende pauzes, eerst na seconden, dan na minuten. Wat na herhaalde pogingen nog mislukt, gaat met het oorspronkelijke bericht naar een aparte lijst.
  5. Een logboek. Per bericht is terug te vinden wat er is verstuurd, wanneer, en wat het andere systeem antwoordde. Records die de controle niet halen, komen op een lijst en worden niet stil overgeslagen.
  6. Bewaking en beveiliging. Een controle die om de paar minuten nagaat of de laatste ronde is gelukt en of de wachtrij groeit. Versleuteld verkeer en een eigen sleutel met alleen de rechten die nodig zijn.

Een voorbeeld van eigenaarschap per gegeven:

Gegeven Leidend systeem Stroom
Voorraad WMS of ERP naar webshop en marktplaatsen
Verkoopprijs en klantprijs ERP naar webshop
Productteksten en afbeeldingen PIM naar webshop en marktplaatsen
Order tot aan betaling webshop naar ERP
Orderstatus en factuur ERP naar webshop en klant

Eén richting of twee?

Een stroom gaat één kant op. Dat is geen beperking van de techniek maar de manier om twee fouten te voorkomen.

Overschrijven. Het ERP toont om 10:00 een voorraad van 14 en de webshop ook. Om 10:02 bestelt een klant 1 stuk, de webshop telt af naar 13. Om 10:05 schrijft de voorraadronde de waarde uit het ERP naar de webshop. De order is nog niet in het ERP verwerkt, dus daar staat nog 14. De webshop toont weer 14: één meer dan er is. De oplossing zit in de volgorde. De order gaat eerst naar het ERP, het ERP reserveert, en de beschikbare voorraad van 14 min 1 is 13 gaat terug.

De lus. Twee stromen schrijven hetzelfde veld in beide richtingen, bijvoorbeeld het telefoonnummer van een klant. Systeem A wijzigt het nummer, de koppeling schrijft het naar B. B registreert een wijziging, de koppeling ziet die en schrijft het nummer terug naar A. A registreert weer een wijziging. Zonder maatregel gaat dezelfde wijziging eindeloos heen en weer. Er zijn koppelplatformen die om deze reden per stroom maar één richting toestaan.

Twee richtingen op hetzelfde veld vraagt conflictregels: de koppeling herkent de eigen schrijfacties en stuurt die niet terug, per veld wint één systeem, en bij twee wijzigingen in dezelfde minuut beslist een vaste regel welke blijft staan. Dat is bouwbaar, en het is meer werk dan twee stromen met elk één richting.

Wat betekent dit voor je bedrijf?

Een koppeling is dus een verzameling afspraken: welke stromen, welke richting, welk systeem leidend per veld en wat er gebeurt als iets niet past. Wij leggen die afspraken met je vast en bouwen de koppeling daarop, voor jouw systemen en jouw regels. Daarna hosten en bewaken we de koppeling. Je krijgt een dashboard met de logboeken, en voor de eerste echte ronde draait een proefronde die laat zien wat er zou veranderen zonder iets te schrijven.

Op het overzicht van koppelingen staan de stromen die we bouwen: voorraad, prijzen, productdata en orders. Gaat het om een webshop, lees dan verder in wat is een webshopkoppeling, of kijk bij maatwerk koppeling laten maken. Heb je twee systemen in gedachten, beschrijf ze in het formulier.

Veelgestelde vragen

Wat is het verschil tussen een koppeling en een API?

Een API is de ingang van één pakket waarlangs andere software gegevens kan lezen en schrijven. Een koppeling is het geheel dat twee systemen verbindt: de route, de vertaling per veld, de wachtrij en de bewaking. Een koppeling gebruikt vaak een API, maar kan ook via bestanden of een database lopen. Zie wat is een API koppeling.

Kan een koppeling in twee richtingen werken?

Ja, maar per veld is er één eigenaar. Orders gaan van de webshop naar het ERP, voorraad en prijzen gaan terug. Hetzelfde veld in beide richtingen laten schrijven vraagt conflictregels, anders overschrijven de systemen elkaar of blijft een wijziging eindeloos heen en weer gaan.

Mijn systeem staat nergens in een lijst met koppelingen. Kan het dan gekoppeld worden?

Of een systeem te koppelen is, hangt niet af van de naam maar van de vraag of gegevens er gecontroleerd in en uit kunnen. Dat kan via een API, via een export naar CSV of XML, of via een leesweergave op de database. De routes zonder API staan in koppelen zonder API.

Wat is het verschil tussen een standaardkoppeling en een maatwerk koppeling?

Een standaardkoppeling is voor iedereen hetzelfde: vaste velden, vaste richting, vaste frequentie. Een maatwerk koppeling wordt gebouwd op jouw velden en regels, zoals klantspecifieke prijzen, meerdere magazijnen of een order die over twee leveranciers wordt verdeeld. De technische verschillen staan in maatwerk koppeling of koppelplatform.

Wat gebeurt er met mijn gegevens als een van de systemen even uitvalt?

In een koppeling met een wachtrij blijven de berichten staan tot het systeem terug is en worden ze daarna alsnog verwerkt, in de juiste volgorde. Zonder wachtrij is een bericht dat tijdens de storing verstuurd werd verloren. Meer daarover in wat gebeurt er als een koppeling uitvalt.

Vertel wat je nodig hebt

Vertel welke systemen je gebruikt en wat je wilt verbeteren. Je krijgt binnen één werkdag een persoonlijk antwoord. We helpen je de werkzaamheden helder te krijgen en spreken de prijs en planning af voordat je iets toezegt.

  • Je weet de prijs en de doorlooptijd voordat je iets toezegt
  • Wij zoeken uit welke koppeling het werk uit handen neemt
  • Wij verzorgen de bouw, hosting, bewaking en het onderhoud
  • Je team krijgt minder overtypwerk en minder uitzoekwerk

Leveranciers, producten, orders per dag, een ruwe schatting is prima.

Of mail direct: carsten@syncmyshop.com