Werkritme
Integraties en koppelingen

Koppelen met software die geen API heeft

Geen API? Koppelen kan vaak toch: via exportbestanden, een gedeelde map, de database, e-mail of het scherm. Met per omweg wat er breekt.

4 oktober 2026 · Jeffrey · 6 min lezen

Een pakket dat al vijftien jaar de planning of de werkplaats draait, heeft lang niet altijd een API. De leverancier is klein of overgenomen, de software draait op een server in de meterkast. Toch moet daar elke dag informatie uit naar elders: uren naar de loonadministratie, orders naar de boekhouding. Wie de leverancier belt, hoort dat een koppelvlak "op de roadmap staat".

Een API is de nette voordeur, maar ook zonder API is er vaak een zijdeur. Hieronder staan ze in de volgorde waarin wij ze proberen: van de omweg die nauwelijks breekt naar de omweg die bij elke update breekt.

Het bestand dat het pakket toch al kan maken

Veel pakketten kunnen exporteren, al zit het soms verstopt onder "rapporten", en veel moderne pakketten kunnen importeren. AFAS documenteert bijvoorbeeld dat u alleen ASCII-bestanden zoals .TXT of .CSV kunt importeren, op basis van een importdefinitie waarin staat welk veld in het bestand bij welk veld in Profit hoort. Het uitgangspunt is een CSV-bestand met een kopregel; regels die niet door de controle komen, schrijft Profit weg in een apart .log-bestand met dezelfde naam als het origineel.

Een koppeling zonder API is daarmee in de kern een bestandskoppeling: het oude pakket exporteert, een klein programma zet de kolommen om, het nieuwe pakket importeert. Wat breekt, is niet de techniek maar de inhoud. Een kolom die van naam verandert, een datum die ineens als 3-8-2026 wordt geschreven, een puntkomma in een adresregel. Daarom is dat .log-bestand met afgekeurde regels het belangrijkste onderdeel van de hele koppeling. Wie het niet leest, hoort van de accountant dat de import al weken regels overslaat. AFAS zet er niet voor niets bij dat u het importeren altijd eerst in een testomgeving uitvoert.

De gedeelde map als postbus

Kan de export automatisch draaien, elke nacht via een geplande taak, dan wordt de map waarin dat bestand belandt het koppelvlak. Een programma houdt de map in de gaten en verwerkt elk nieuw bestand. Ouderwets, maar goed te bewaken: geen bestand om acht uur, dan is er iets mis. Dat is een controle van één regel.

Wat breekt, is de omgeving rond de map. Een server die wordt vervangen zonder dat de geplande taak meeverhuist. Een netwerkschijf die na een update een andere letter krijgt. Een bestand dat nog half geschreven is op het moment dat het wordt opgepakt. Dat laatste is te ondervangen door te wachten tot het bestand niet meer groeit, maar het moet wel gebouwd worden. Op de pagina over techniek en eigendom staat hoe wij zoiets inrichten, op wiens server, en van wie het is.

Rechtstreeks in de database

Achter veel oudere pakketten zit een gewone database: SQL Server, een Access-bestand, soms nog een DBF-structuur. Daar rechtstreeks uit lezen is de snelste omweg die er is. Geen export, geen bestand, geen nachtelijke wachttijd: een nieuwe klant kan binnen een minuut in het andere systeem staan.

Lezen is hier het sleutelwoord. Schrijven in andermans database doen wij niet: het pakket houdt zelf verbanden bij die u van buitenaf niet ziet, en één verkeerd weggeschreven regel kan het pakket laten struikelen. Wat bij lezen breekt, is de structuur. De leverancier hernoemt in een nieuwe versie een tabel of splitst een kolom, en de koppeling leest ineens niets of het verkeerde. Daar staat tegenover dat u het hier van tevoren kunt weten: release notes zijn een signaal dat een schermrobot nooit krijgt. Vraag de leverancier daarom letterlijk dit: "Mag ik alleen-lezen toegang tot de database, en welke tabellen wijzigen jullie bij een nieuwe versie?" Het antwoord zegt meer dan elke folder.

E-mail als koppelvlak

Sommige pakketten kunnen niets exporteren maar wel mailen: een orderbevestiging, een dagrapport, een PDF met de planning. Dan is de mailbox het koppelvlak. Een programma leest de postbus, haalt uit bijlage of tekst wat het nodig heeft en zet het door. Het is dezelfde techniek als bij orders die als PDF binnenkomen, alleen is de afzender nu uw eigen pakket.

Wat breekt, is de lay-out van het bericht. Een nieuwe versie zet het ordernummer twee regels lager of het totaalbedrag ineens in een tabel, en het uitlezen gaat mis. Zoeken op betekenis in plaats van op positie helpt, maar het blijft uitlezen van iets dat niet voor een machine is bedoeld. Bij een handvol berichten per dag is dat te overzien. Bij honderden wordt het een bron van uitzonderingen die iemand moet nakijken.

Het scherm bedienen, als het niet anders kan

De laatste omweg is een robot die doet wat een mens doet: inloggen, op het veld klikken, typen, opslaan. Dat heet schermautomatisering of RPA, en soms is het de enige weg. Maar op de pagina over procesautomatisering staat niet voor niets dat we geen robot bouwen die uw scherm bedient en omvalt bij de eerste schermwijziging. De literatuurstudie van Syed e.a. (Queensland University of Technology en Universiteit Utrecht, 2020) noemt het als een van de open problemen: bots zijn zelden gebouwd om afwijkingen op te vangen, en een andere schermresolutie of een gewijzigde indeling is al genoeg om ze te laten stoppen of een verkeerd pad in te slaan, waarna een mens moet ingrijpen. Zelfs Microsoft, dat met Power Automate zulke robots verkoopt, richt het gereedschap erop in: per schermelement legt u meerdere selectors vast, en als de eerste faalt probeert het programma de volgende. Een reservewiel voor een band die de fabrikant al ziet leeglopen.

Wat breekt, is dus wat de leverancier aan het scherm verandert, en u hoort dat pas als de robot stilstaat. Een schermrobot hoort daarom alleen op een pakket dat werkelijk niets anders biedt, met bewaking die meldt wanneer hij vastloopt, en met de afspraak dat elke update eerst op een testmachine draait.

Wanneer geen van de omwegen loont

Een omweg kost meer bouw- en bewakingswerk dan een nette API. Bij enkele tientallen handelingen per jaar is overtypen goedkoper dan wat u ook bouwt. Bij een pakket dat de leverancier over een jaar uitfaseert, koppelt u aan een bewegend doel. En als het oude pakket alleen een scherm biedt en het proces elke maand van vorm verandert, is de eerlijkste uitkomst dat u eerst het pakket vervangt en daarna pas koppelt.

Wat u zonder ons kunt doen: deze week het menu van uw pakket doorlopen op export, import en rapporten naar Excel, en de leverancier de vraag over de database stellen. Dan weet u welke zijdeur er is; pas daarna is de vraag of het bouwen ervan loont. Op de pagina over koppelingen staat wanneer maatwerk loont en wanneer niet.

Begin met één proces

Vertel welk werk bij u het vaakst wordt overgetypt. Blijkt automatiseren daar geen goed idee, dan hoort u dat in het eerste gesprek – vóór er een factuur is.

Laat uw proces beoordelen

Kennismaking is gratis en vrijblijvend. Wilt u het onderbouwd? Dan is de Automation Check €295 – verrekend als u binnen 30 dagen laat bouwen.