Tips voor het koppelen van softwaresystemen met feeds en API’s

WEBSHOP
WEBSITE
APP

Software systemen koppelen? Houd hier rekening mee.

Dagelijks zijn onze developers druk met het koppelen van verschillende systemen. Denk aan webshops koppelen met ERP-systemen zoals Exact Online of Snel Start, maar ook met portalen, kassasystemen, marketplaces en/of marketing toolings. Maar wat is hiervan het doel, wat zijn de mogelijkheden in de praktijk en waar moet je rekening mee houden? Wij leggen het uit.

Het doel van systemen koppelen

Gemak en centralisatie van data is vaak de reden voor het leggen van koppelingen tussen verschillende systemen. Dit kan gebeuren op basis van bestaande systemen, maar ook als er nieuwe systemen in het technische landschap worden ontwikkeld. Het succes van een koppeling wordt vanuit onze visie getoetst op basis van de volgende punten:

  • Het beheer van data kost minder tijd, omdat wijzigingen automatisch worden gesynchroniseerd met de andere platformen vanuit 1 plek;
  • De snelheid van het publiceren van wijzigingen in jouw data zal daarbij direct ook flink opschalen;
  • Eenheid in data. Denk hierbij aan bijvoorbeeld een prijs, of voorraad van een artikel. Je wilt uiteraard dat deze gegevens vanuit 1 systeem beheerd kunnen worden, zodat hier zo min mogelijk fouten in gemaakt kunnen worden;
  • Centralisatie van regels. Stel je wilt op kanaal 1 een andere prijs voeren dan op kanaal 2, omdat je bijvoorbeeld bij kanaal 2 commissies moet afstaan. Dan is het erg handig om deze regels, die constant veranderen, via een centrale omgeving te kunnen beheren;
  • Onderaan de streep bespaart het je dus geld.

De meest gebruikte technieken

In de huidige markt zie je vooral dat systemen door de volgende methodieken met elkaar worden gekoppeld:

  • Feeds - Door middel van het delen van zogenaamde feeds. Dit zijn bestanden (vaak XML, CSV of JSON) waarin data gestructureerd wordt opgeslagen en automatisch gedeeld en ingelezen. Dit type koppelingen is vaak sneller op te zetten, maar ook minder intelligent;
  • API - Met een zogenaamde API (​​Application Programming Interface) sla je als het ware een brug tussen meerdere systemen. Via deze brug kunnen systemen direct met elkaar praten in een afgesproken taal. Het voordeel hiervan is dat een systeem ook direct een reactie terug zodra hierom gevraagd wordt. Hierdoor kan direct een vervolgactie ingezet worden. Kortom, je systeem wordt zelf nog slimmer;
  • Hooks - Als een systeem gebruik maakt van zogenaamde “hooks”, is dat een handige manier om een koppeling te leggen. Dit zijn namelijk vastgestelde momenten waar je met een extern systeem op inhaakt. Een voorbeeld hiervan is het wijzigen van de status van een order. 

Welke manier het beste is? Hier is geen eenduidig antwoord op te geven en is altijd afhankelijk van de scenario van dat moment. Denk hierbij aan: beschikbaarheid, kwaliteit, snelheid, budget, toekomst.

Wij nemen we altijd alle opties mee in het besluit dat we samen met jou nemen.

Kant en klare oplossingen of zelf maken? Of zelfs onafhankelijk?

Nadat er besloten is welke techniek het beste past bij de betreffende oplossing, wordt er nagedacht en besloten of de koppeling custom-made ontwikkeld dient te worden, of dat er gebruik gemaakt wordt van kant- en klare oplossingen. Dit is afhankelijk van factoren als:

  • Hoe specifiek is de koppeling
  • In hoeverre is de data geschikt
  • Met welke platformen wordt er gewerkt
  • etc…

Kortom, het antwoord op de vraag “Kant en klare oplossingen of zelf maken?” is ook hier weer “It depends”. Hierbij is onze expertise en ervaring van grote waarde om de juiste beslissingen te nemen en de beste oplossingen te ontwikkelen.

Goede data blijft altijd een belangrijke sleutel voor succes

Waar men zich vaak op verkijkt is de staat van je data. Hoe netter en gestructureerder de huidige data in een systeem staat (bijv. ERP, CMS, PIM), hoe makkelijker koppelingen gelegd kunnen worden. Voorbeeld: je eigenschappen van een product staan in 1 “tekstveld” opgeslagen, zoals: “Een rode koptelefoon zonder snoer”.

Wanneer dit het geval is, kunnen deze eigenschappen van de koptelefoon niet makkelijk worden losgetrokken en worden gecommuniceerd naar een extern systeem (denk bijv. ook aan vertalingen). Sla je de eigenschappen in losse tekstvelden op, dan kan dit wel. Type: Koptelefoon, Kleur: Rood, Snoer: Nee.

Maar wees gerust. Mocht je bovenstaande nog niet voor elkaar hebben, zijn hier ook oplossingen voor te vinden. Want geloof ons: we komen het nog dagelijks tegen :). 

Maar wat kunnen wij voor jou betekenen?

We gaan graag in gesprek om kennis te maken met jullie landschap, wensen, software systemen en werkwijzes. Automatiseren is ons vak, en daarbij horen dus goede en solide kwalitatieve koppelingen. Wij helpen jou graag verder!

Neem contact op met Danny