API of geen API: hoe koppel je software die dicht zit?

Jurjen Rijsdijk

Jurjen Rijsdijk

Flowbros · automatisering voor het MKB

Wij (Jurjen en Albert-Jan, zwagers) bouwen koppelingen tussen softwarepakketten. De eerste vraag is altijd: heeft het pakket een API? Zo ja, dan is het meestal rechttoe rechtaan. Zo nee, dan zoeken we een andere ingang. Die is er bijna altijd.

Wat een API eigenlijk is

Een API is de officiële ingang van een softwarepakket. Andere software mag er gegevens ophalen of aanleveren, volgens afspraken die de maker heeft vastgelegd. Moderne pakketten als Exact Online, AFAS en Gripp hebben er een. Voor ons is dat de kortste route: we halen de data op waar die nodig is en er hoeft niemand iets over te typen.

Veel software zit dicht

Vooral oudere branchesoftware heeft vaak geen API. Het pakket draait lokaal of bij een hostingpartij, de data zit erin en komt er alleen uit via het scherm of een export. Overstappen op iets moderns is een groot project, en vaak doet het pakket verder gewoon wat het moet doen. Dan wil je koppelen met wat er is. De afgelopen maanden zagen we dat bij een keukenzaak, een beddenzaak en een houtverwerker: prima pakketten, alleen komt de data er niet vanzelf uit.

Heeft je pakket een API?
Ja
API-koppeling
Nee
Exports
Imports
Inleesmailbox
Database
Documenten uitlezen
De vijf routes als een pakket geen API heeft.

De ingangen die er bijna altijd zijn

Geen API betekent zelden dat er niets kan. Dit zijn de routes die wij in de praktijk gebruiken:

1

Exports

Bijna elk pakket kan lijsten exporteren naar Excel of CSV. Vaak kan dat gepland, elke nacht automatisch. Wij pakken zo'n bestand op en verwerken het verder.

2

Imports

Veel pakketten kunnen zelf bestanden inlezen, bijvoorbeeld uit een vaste map op de server. Wij maken het bestand precies in het formaat dat het pakket verwacht en zetten het daar automatisch neer. Soms moet de leverancier die importfunctie eerst aanzetten. Bij een pakket op een gedeelde server is dat meestal een klus die zij in rekening brengen; hou daar rekening mee.

3

De inleesmailbox

Veel boekhoudpakketten hebben een e-mailadres waar je PDF's naartoe stuurt die dan automatisch worden ingelezen. Wij maken het document en mailen het erheen. Zo werkt onze pakbon-naar-factuur-flow bij pakketten zonder API.

4

De database

Draait het pakket lokaal, dan is er soms rechtstreeks toegang tot de database mogelijk. Dat doen we altijd in overleg met de leverancier.

5

Documenten uitlezen

Komt de data alleen als PDF of rapport naar buiten, dan lezen we die documenten uit met AI. Regels waar de uitlezing niet zeker over is, gaan naar een controlelijst in plaats van rechtstreeks je systeem in. Zo werken we ook met leveranciersprijslijsten.

Zo ging dat bij anderen

Bij i-Kook Keukens (Simar) leest onze nacalculatie-tool de verkoopregels en de inkoopfacturen uit het pakket en legt die per order naast elkaar. De eerste werkende versie stond er binnen 40 uur.

Bij een beddenzaak komen de prijslijsten van leveranciers als Excel en PDF binnen. Die zetten we om naar één vast bestand dat in een map op de server wordt klaargezet, waarna het pakket het 's nachts inleest.

En voor facturen naar een boekhouding zonder API gebruiken we de inleesmailbox: het systeem maakt de factuur als PDF en mailt hem naar het inleesadres. Niemand wacht op de softwareleverancier.

Wat we ook leerden: vraag het na. Verrassend vaak heeft een pakket of leverancier wél een export of zelfs een API, alleen heeft er nooit iemand om gevraagd.

Welke route wanneer

RouteGeschikt alsWat je nodig hebtLet op
APIhet pakket er een heefttoegang of een sleutel van de leveranciersoms extra kosten per maand
Exportdata eruit moeteen geplande export naar een mapkolommen die verschuiven na een update
Importdata erin moetimportfunctie aan en een vast formaatde leverancier moet het soms inrichten
Inleesmailboxhet om documenten gaat, zoals facturen of bonnenhet inleesadres van je pakketalleen voor documenten, niet voor losse data
Databasehet pakket lokaal draaittoestemming en toegangalleen lezen, nooit schrijven
Documenten uitlezener alleen PDF's zijnde documenten zelfeen controlelijst voor twijfelgevallen

Zo check je zelf wat jouw pakket kan

  1. Kijk in de menu's naar "Exporteren", "Importeren" of "Rapporten". Staat het erin, dan is er een ingang.
  2. Vraag je leverancier letterlijk: "Hebben jullie een API, of een importfunctie voor bestanden?" En vraag om de documentatie.
  3. Weet waar het pakket draait: op je eigen server, bij een hostingpartij, of in de cloud. Dat bepaalt welke routes open staan.
  4. Check of je boekhouding een inleesmailadres heeft.
  5. Maak één voorbeeldexport en stuur 'm ons. Daar zien we in tien minuten aan wat er kan.

Waar het misgaat

Een koppeling zonder API werkt met bestanden, en bestanden veranderen. Een leverancier voegt een kolom toe, een decimaalpunt wordt een komma, een artikelnummer komt twee keer voor, of de export draait net ná de import. Daarom bouwen we altijd controle in: de flow checkt wat er binnenkomt en stuurt een melding als iets afwijkt van wat we verwachten. Een stille fout is erger dan een foutmelding.

Hoe wij zo'n koppeling aanpakken

We beginnen bij de vraag achter de koppeling: welke informatie moet waar terechtkomen, en hoe vaak. Dan kijken we welke ingang het pakket heeft en overleggen we waar nodig met de leverancier. Daarna bouwen we de koppeling en laten die eerst een tijdje meedraaien naast je huidige manier van werken, zodat je kunt vergelijken of alles klopt voordat je erop vertrouwt.

Meer weten

Een koppeling is zelden het doel op zich. Meestal gaat het om grip op je cijfers of je artikeldata. Lees ook wat is een margelek en offertes automatisch berekenen.

Verder lezen

Benieuwd wat er bij jou uit komt?

In 20 minuten laten we het draaien op je eigen cijfers. Vraag naar Jurjen Rijsdijk, jurjen@flowbros.nl.

Jurjen Rijsdijk

Jurjen Rijsdijk

Flowbros — ondernemer & procesdenker

Albert-Jan bouwt de techniek, ik kijk mee waar je tijd weglekt. Even sparren kan altijd.

jurjen@flowbros.nl

Veelgestelde vragen