Een koppeling laten maken tussen uw systemen
Een koppeling is een stukje software dat twee systemen automatisch gegevens laat uitwisselen, zodat niemand ze meer hoeft over te typen. Een API is de officiële toegangsdeur die een pakket daarvoor openzet: een lijst afspraken over welke gegevens u mag opvragen of wegschrijven, en hoe. De koppeling gebruikt die deur.
Cloudzicht · Almere · bijgewerkt op
Uw boekhouding, uw planning en uw webshop weten niets van elkaar — tot iemand ze verbindt. Cloudzicht bouwt die verbindingen zelf, zonder tussenlaag, en laat ze eerst draaien in de eigen bedrijven.
Wat is een koppeling, en wat is een API?
Een koppeling is een stukje software dat twee systemen automatisch gegevens laat uitwisselen, zodat niemand ze meer hoeft over te typen. Een API is de officiële toegangsdeur die een pakket daarvoor openzet: een lijst afspraken over welke gegevens u mag opvragen of wegschrijven, en hoe. De koppeling gebruikt die deur.
Elke leverancier bepaalt zelf hoe ver die deur opengaat. Het ene pakket laat alles lezen én schrijven, het andere alleen lezen. Daarom begint elk koppeltraject bij ons met de documentatie van het pakket: eerst vaststellen wat er kan, dan pas beloven wat er komt.
Wanneer heeft u een koppeling nodig, en wanneer niet?
U heeft een koppeling nodig zodra dezelfde gegevens in twee systemen moeten staan en iemand ze nu handmatig overneemt. Denk aan orders die naar de boekhouding moeten, of uren die naar de facturatie gaan. Gebeurt dat een paar keer per jaar, dan is overtypen prima en bouwt u niets.
De rekensom is simpel: tel de uren die uw mensen per week kwijt zijn aan overtypen en controleren, en tel de fouten erbij die dat oplevert. Een koppeling staat daarnaast zelden op zichzelf. Wie software laat maken, heeft bijna altijd ook een verbinding met de boekhouding nodig. En een offerteconfigurator wordt pas echt af als de geaccepteerde offerte vanzelf als order in uw pakket belandt.
Wat komt er kijken bij een koppeling met Exact Online?
Exact Online heeft een volwassen, openbare REST-API die vrijwel het hele pakket dekt: relaties, orders, facturen, projecten en de complete boekhouding. Exact geeft ontwikkelaars gratis toegang tot die API en ondersteunt webhooks. Een koppeling werkt altijd binnen één specifieke administratie, in Exact-termen een divisie.
Twee dingen bepalen in de praktijk hoe zo’n koppeling gebouwd moet worden. Exact levert gegevens in porties: standaard geeft de API 60 regels per aanvraag, de speciale sync-endpoints geven er 1.000. Voor een kleine administratie maakt dat niets uit; wie tienduizenden boekingen wil overhalen, heeft een koppeling nodig die alleen wijzigingen ophaalt in plaats van elke nacht alles. En omdat Exact webhooks ondersteunt, kan de koppeling reageren op het moment dat er iets verandert.
Wat komt er kijken bij een koppeling met SnelStart?
SnelStart heeft een openbare B2B-API met een eigen ontwikkelaarsportaal, waar wij kosteloos een tijdelijk ontwikkelaccount krijgen met documentatie en een testconsole. SnelStart maakt onderscheid tussen maatwerkkoppelingen voor één bedrijf en productiekoppelingen voor meerdere gebruikers. De definitieve sleutel geeft SnelStart pas af nadat de koppeling is beoordeeld.
Voor productiekoppelingen — software die meerdere SnelStart-gebruikers gaan gebruiken — stelt SnelStart extra eisen: OAuth als inlogmethode is verplicht en u geeft bij de aanvraag een webhook-adres op. SnelStart schrijft zelf dat het terughoudend is met nieuwe productiekoppelingen en elke aanvraag apart beoordeelt; voor de certificering noemt het bedrijf ongeveer twaalf dagen. Een maatwerkkoppeling voor alleen uw eigen administratie is dus de kortste route. Wij kennen die route van binnenuit: onze eigen bedrijven factureren via SnelStart, en de koppeling tussen ons klantsysteem en SnelStart draait daar elke dag.
Wat komt er kijken bij een koppeling met AFAS?
AFAS Profit heeft een REST-API die met connectoren werkt. GetConnectors halen gegevens op, UpdateConnectors schrijven ze weg. Anders dan bij veel pakketten bepaalt uw eigen AFAS-beheerder wat een koppeling mag: hij maakt een token aan en zet per connector open welke gegevens de koppeling kan lezen of aanpassen.
AFAS levert naast de productieomgeving een test- en een acceptatieomgeving, zodat een koppeling eerst kan proefdraaien met uw echte inrichting maar zonder risico. Er zijn grenzen om rekening mee te houden: AFAS adviseert per aanroep het aantal kolommen maal het aantal rijen onder de 150.000 te houden, en een filter in de URL mag maximaal 2.048 tekens lang zijn. Grote gegevenssets haalt een goede koppeling dus in delen op. Het inrichten van de connectoren en rechten in uw AFAS-omgeving hoort bij het werk; dat doen we samen met uw beheerder.
Wat als een pakket geen API heeft?
Dan is er bijna altijd nog een route: een export- of importfunctie, of een database waar we rechtstreeks bij kunnen. Werkt dat niet, dan kan software het scherm bedienen zoals een medewerker dat doet. Dat bouwen we alleen als de leverancier het toestaat, want die route is kwetsbaarder dan een echte API.
Denk aan een ouder kassasysteem of een branchepakket dat alleen een export naar een bestand kent. Dan leest de koppeling dat bestand automatisch in, op een vast moment of zodra het klaarstaat. Niet zo elegant als een API, wel betrouwbaar genoeg om dagelijks werk uit handen te nemen.
Wat is een webhook, en waarin verschilt die van een koppeling?
Een webhook is geen alternatief voor een koppeling, maar een onderdeel ervan. Bij een gewone koppeling vraagt uw software steeds: is er iets nieuws? Met een webhook draait dat om: het pakket meldt zichzelf zodra er iets gebeurt, bijvoorbeeld bij een betaalde factuur. Dat scheelt wachttijd en onnodig berichtenverkeer.
Een webhook stelt wel een eis: er moet aan uw kant iets draaien dat berichten kan ontvangen, dag en nacht. Dat ontvangende deel bouwen wij mee, inclusief een vangnet voor berichten die dubbel of juist niet aankomen — want ook daar moet een koppeling tegen kunnen.
Hoe lang duurt het bouwen van een koppeling?
Dat hangt af van vier dingen: hoeveel soorten gegevens er over en weer moeten, of het verkeer één kant op gaat of twee, hoe goed de API van het pakket is gedocumenteerd, en hoeveel uitzonderingen uw administratie kent. Wij noemen pas een termijn nadat we die vier punten met u hebben doorgenomen.
Een koppeling die één richting op werkt met één soort gegevens is klein werk; verkeer twee kanten op met voorraad, prijzen en orders is een project. Wat wij altijd doen: eerst het smalste stuk live brengen dat al werk scheelt, en van daaruit uitbouwen. Zo ziet u resultaat voordat het hele traject af is.
Wat gaat er meestal mis bij koppelingen?
Zelden de techniek, bijna altijd de gegevens. Dubbele klantnummers bijvoorbeeld, of btw-codes die in beide pakketten anders heten. En de tweede valkuil: een koppeling die stilvalt zonder dat iemand het merkt. Daarom bouwen wij bewaking mee die meldt zodra er iets blijft hangen, in plaats van te wachten tot de boekhouder het ziet.
Daarom kijken we vóór de bouw eerst naar de kwaliteit van de gegevens in beide systemen, en spreken we af wat er moet gebeuren met een bericht dat niet verwerkt kan worden.
Wie is eigenaar van de koppeling als hij eenmaal draait?
U. Wij bouwen de koppeling voor uw situatie en daarna is hij van u, inclusief de code en de documentatie. U neemt dus geen tussenlaag af die per koppeling en per maand geld kost. Wilt u het beheer en de bewaking aan ons overlaten, dan spreken we dat apart af.
Dat is geen detail. Wie zijn koppelingen huurt bij een tussenpartij, betaalt elke maand opnieuw en is afhankelijk van wat die partij ondersteunt. Wij hebben onze koppelingen eerst in onze eigen bedrijven laten draaien — daar merken we zelf direct wanneer er iets knelt. Wilt u weten of uw pakketten te koppelen zijn? Bel 036 52 98 447 of mail info@cloudzicht.nl. Op de voorpagina leest u hoe wij werken.
Zit u hier tegenaan?
Vertel in een paar zinnen wat er beter moet. U krijgt een eerlijk antwoord: wat wij zouden bouwen, wat wij zouden laten liggen, en of het bij ons thuishoort of bij iemand anders. Het eerste gesprek kost u niets.