Ga naar hoofdinhoud
Terug naar Maatwerk Software
9 min lezen19 september 2026Gecontroleerd op 15 september 2026

SnelStart API uitgelegd: welke sleutels je nodig hebt

De SnelStart B2B-API werkt met drie sleutels in plaats van een gewone API-key. Wat dat betekent voor auth, endpoints, limieten en de kosten van je koppeling.

Bram DokmanOprichter & AI-specialist

Oprichter van CleverTech AI, met 12+ jaar ervaring in software development, online marketing en cloud-infrastructuur. BSc Science & Innovation Management (Universiteit Utrecht).

Deze pagina is gecontroleerd op

Ontwikkelaar bekijkt op een laptopscherm de code van een SnelStart-koppeling met de token-aanvraag en de response-headers
Maatwerk Software

Kort antwoord

De SnelStart B2B-API werkt niet met één API-key maar met drie sleutels: een subscription key uit het B2B-developerportaal (van jou als bouwer), een koppelingssleutel die je klant zelf aanmaakt in SnelStart Web, en een access token dat je daarmee ophaalt. Die koppelingssleutel is de lastige: de maatwerktegel waarmee de klant hem maakt, werkt alleen bij de pakketten inZicht en inControle, dus dat check je vóór de offerte. SnelStart publiceert geen rate-limitgetal — je merkt de grens aan een HTTP 429 — en webhooks horen alleen bij de zwaardere productieroute met OAuth, minimaal vijf klanten en certificering, waarvoor eenmalig €250 exclusief btw per permanente sleutel wordt gerekend. Een standaard boekhoudkoppeling kost bij ons €2.000 tot €5.000 eenmalig plus €150 tot €350 per maand beheer.

Uit de praktijk · volgende stap

Van lezen naar doen.

De SnelStart B2B-API draait op https://b2bapi.snelstart.nl/v2/ en heeft geen API-key in de gebruikelijke zin. Je hebt er drie sleutels voor nodig, en precies één daarvan is niet van jou: die maakt je klant zelf aan in zijn eigen administratie.

Dat is het verschil dat de meeste offertes voor een SnelStart-koppeling te laag maakt. Bij Exact Online regel je toegang met OAuth2 en een division-nummer en ben je klaar; bij SnelStart hangt het koppelproces aan een handeling van de klant, aan zijn abonnement en aan een certificering achteraf.

De bredere afweging tussen pakket en maatwerk staat in onze gids over maatwerk software. Hier gaat het puur om wat een developer tegenkomt.

De drie sleutels, en wie welke bezit

Een call naar de SnelStart-API bevat twee sleutels in de headers en is voorafgegaan door een derde in de token-aanvraag. Ze komen uit drie verschillende handen.

Sleutel Van wie Waar hij vandaan komt
Subscription key (primary en secondary) Van jou als bouwer Je profiel in het B2B-developerportaal
Koppelingssleutel (clientkey) Van de klant De klant maakt hem zelf aan in SnelStart Web
Access token Afgeleid Ruil je bij elke sessie in voor de koppelingssleutel

De koppelingssleutel is de lastige. De klant haalt hem op onder de koppelingen in SnelStart Web, via de maatwerktegel, en die tegel werkt alleen bij de pakketten inZicht en inControle (SnelStart kennisplein, 2026).

Zit je klant op een lichter pakket of nog in de proefperiode, dan is er geen sleutel en dus geen koppeling. Dat check je vóór de offerte, niet tijdens de bouw.

Het token halen: één POST, form-encoded

De token-aanvraag gaat naar een andere host dan de API zelf en is bewust simpel: geen redirect, geen client secret, alleen de koppelingssleutel van de klant.

Bash
curl -X POST https://auth.snelstart.nl/b2b/token \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=clientkey&clientkey=<koppelingssleutel van de klant>"

Let op het formaat.

De veelgeciteerde integratiegids van Apideck toont de body als een JSON-object met een veld clientKey, terwijl de PHP-client van IntoWebDevelopment hem al jaren form-encoded verstuurt als grant_type=clientkey&clientkey=… (iwd-nl/snelstart-php, 2026). Wij bouwen op de tweede variant, omdat dat werkende productiecode is en geen samenvatting ervan.

De respons bevat expires_in. Apideck noemt een uur; die PHP-client beschouwt een token met minder dan twintig seconden resttijd alvast als verlopen, zodat een call niet halverwege omvalt.

Daarna gaat elke call naar de API met beide headers tegelijk:

HTTP
GET /v2/relaties?$filter=Naam eq 'Jansen'&$top=25 HTTP/1.1
Host: b2bapi.snelstart.nl
Ocp-Apim-Subscription-Key: <jouw subscription key>
Authorization: Bearer <access token>

Welke endpoints er zijn

De API is een REST-laag op Azure API Management (Apideck, 2026) met OData-filters. De resources volgen de Nederlandse boekhoudtermen, niet de Engelse.

  • relaties — debiteuren en crediteuren, inclusief relaties/{id}/doorlopendeincassomachtigingen
  • verkoopboekingen en inkoopboekingen — de boekingen zelf, met regels
  • verkoopfacturen en inkoopfacturen — lezen, plus verkoopfacturen/{id}/ubl voor de UBL-versie
  • verkooporders — aanmaken en verwijderen
  • grootboeken, btwtarieven, kostenplaatsen, artikelen, landen — de stamgegevens
  • documenten — bijlagen bij een boeking of relatie

Filteren gaat met $filter, pagineren met $top en $skip. Er is geen $expand, dus gerelateerde gegevens haal je met een extra call op — net als bij Exact Online.

Dat tikt aan.

Een factuur wegschrijven raakt in de praktijk de relatie, het btwtarief, het grootboek en pas daarna de boeking zelf (Apideck, 2026). Reken bij je ontwerp met calls per order, niet met orders per dag.

Wat er níet in de documentatie staat

Drie dingen die elke SnelStart-koppeling raken zijn nergens hard gepubliceerd. Dat is geen slordigheid van SnelStart maar een ontwerpkeuze, en je moet er alsnog omheen bouwen.

Geen gepubliceerd rate-limitgetal. Waar Exact Online limieten per administratie publiceert, geeft SnelStart ze niet vrij; de ontwikkelsleutel is negentig dagen geldig en staat een niet-gespecificeerd aantal calls toe (Maesn, 2026). Je krijgt gewoon een HTTP 429 zodra je eroverheen gaat.

Daar zit precies de reden voor die tweede subscription key.

De PHP-client wisselt bij een 429 van de primary naar de secondary sleutel en geeft het pas op als ook die 429 teruggeeft, met maximaal drie pogingen (iwd-nl/snelstart-php, 2026). Wie alleen de primary sleutel configureert, gooit die marge weg.

Webhooks: het hangt af van je route. De publieke B2B-API documenteert geen webhooks, dus voor een maatwerkkoppeling is periodiek pollen het eerlijke antwoord. Vraag je een productiekoppeling aan voor meerdere eindgebruikers, dan vraagt SnelStart in het aanmeldformulier juist wél om een webhook-URL, en is OAuth daar verplicht (SnelStart, 2026).

Bouw je dus voor één klant, ontwerp dan op polling. Bouw je een product voor de markt, reken dan op de zwaardere route: OAuth, minimaal vijf klanten bij aanmelding en een certificeringsperiode van circa twaalf dagen.

Certificering kost geld. Na goedkeuring rekent SnelStart eenmalig €250 exclusief btw per afgegeven permanente sleutel (SnelStart kennisplein, 2026). Klein bedrag, maar het staat zelden in een offerte en het moment waarop het valt, ligt ná de bouw.

De fouten die pas in productie opduiken

In koppeltrajecten op boekhoudpakketten ziet CleverTech AI steeds dezelfde drie statuscodes terugkomen, en geen ervan betekent wat de code suggereert.

Code Wat je denkt Wat het meestal is
401 Verkeerde subscription key Het access token is verlopen, of de klant zette een backup terug
400 Foute JSON Btw op boekingsniveau klopt niet met de btw op regelniveau
429 Te veel verkeer Eén import die het ongepubliceerde plafond raakt

Die 401 na een backup verdient toelichting.

Zet een klant een herstelpunt terug, dan krijgt de administratie een nieuwe koppelingssleutel en moet de koppeling opnieuw geactiveerd worden (SnelStart kennisplein, 2026). Je koppeling staat stil tot iemand dat doorheeft.

Bouw daarom een expliciete melding op een mislukte token-aanvraag, gericht aan de klant en niet aan je eigen logfile. Dezelfde eigenaardigheid speelt bij Yuki, waar de accountant de administratie beheert en dus ook de koppeling in handen heeft.

De 400 is de stillere.

SnelStart valideert btw op twee niveaus tegelijk en weigert de boeking zodra ze niet overeenkomen (Apideck, 2026). Bij standaardtarieven merk je daar niets van; bij verlegde btw, marge-artikelen of een deelretour valt de hele boeking om.

Waar de AI zit: vóór de call, niet erin

De API accepteert alleen een complete, gevalideerde boeking. Dat maakt de interessante AI-vraag niet "wat kan AI in SnelStart doen", maar: wie vult de velden die de API eist?

Bij een inkoopfactuur zijn dat er drie die niemand leuk vindt: welk grootboek, welk btwtarief, welke kostenplaats. Precies die drie staan als eigen endpoints in de API (grootboeken, btwtarieven, kostenplaatsen), dus een model kan de geldige waarden ophalen en daaruit kiezen in plaats van iets te verzinnen.

Het patroon dat daaruit volgt, is een pijplijn in drie stappen:

  1. Extractie — een PDF of scan omzetten naar bedragen, regels en btw-percentages
  2. Classificatie — die regels koppelen aan een grootboekrekening uit de lijst die de API teruggeeft
  3. Boeking — het resultaat als inkoopboeking wegschrijven, met de bijlage via documenten

De koppeling blijft in dat model saai en deterministisch, en dat is de bedoeling: het onzekere deel zit ervóór, met een mens die de voorstellen afkeurt of accepteert. Hoe wij zo'n laag bouwen en wat hij kost, staat op software met AI.

Eén grens hoort erbij.

Een classifier die op honderd facturen goed scoort, kan op een nieuwe leverancier structureel de verkeerde kostenplaats kiezen — zonder foutmelding, want de API accepteert elke geldige waarde. Laat het voorstel dus voorstel blijven tot je een paar maanden meetgegevens hebt.

Wanneer je dit helemaal niet moet laten bouwen

De meeste SnelStart-gebruikers hebben geen maatwerkkoppeling nodig. Voor een webshop met een gangbare btw-stroom bestaat er een plugin, en die gebruikt dezelfde API.

Onze eigen grens: onder de tien orders per dag op SnelStart verdient een koppeling van €2.000 zich pas na zes tot twaalf maanden terug, en adviseren we een standaard plugin. Die grens en de prijsopbouw staan voluit op boekhoudkoppeling en ERP-integratie: €2.000 tot €5.000 eenmalig voor een standaardstroom, €150 tot €350 per maand voor monitoring en onderhoud.

Maatwerk wordt de betere keuze zodra minstens twee van deze vier gelden:

  • Btw die per regel verschilt: verlegd, marge, OSS of een mix
  • Een bronsysteem zonder plugin, zoals eigen software of een planningspakket
  • Meer dan twee systemen in de keten, waardoor je een doorgeefluik nodig hebt
  • Documenten die als bijlage mee moeten, niet alleen bedragen

Zit je daar, dan ligt een SnelStart-koppeling in dezelfde bandbreedte als onze andere API-koppelingen op maat: vanaf €5.000 in één richting, €7.500 tot €15.000 bidirectioneel met datatransformatie.

Twijfel je aan welke kant je zit, dan is de snelste check niet je ordervolume maar je btw. Stuur ons je btw-situatie en je bronsysteem — daarmee is in één gesprek duidelijk of een plugin het redt.

Opgesteld met AI-ondersteuning, geredigeerd en inhoudelijk verantwoord door Bram Dokman.

Tags:#API#Koppelingen#Maatwerk software#Boekhouding
Delen:
Veelgestelde vragen

Antwoorden over dit artikel

Wat heb ik nodig om de SnelStart API te gebruiken?

Drie dingen: een subscription key uit het B2B-developerportaal, een koppelingssleutel die je klant zelf aanmaakt in SnelStart Web, en een access token dat je daarmee ophaalt. De maatwerktegel waarmee de klant die sleutel maakt, werkt alleen bij de pakketten inZicht en inControle.

Wat zijn de rate limits van de SnelStart API?

SnelStart publiceert geen getal per minuut of per dag, anders dan Exact Online. Je merkt de grens aan een HTTP 429. Omdat je twee subscription keys krijgt, kun je bij een 429 doorschakelen naar de secondary key; bouw daarnaast exponentiele wachttijden in.

Ondersteunt de SnelStart API webhooks?

Voor een maatwerkkoppeling niet: de publieke B2B-API documenteert geen webhooks, dus je pollt periodiek. Vraag je een productiekoppeling aan voor meerdere eindgebruikers, dan vraagt SnelStart juist wel om een webhook-URL en is OAuth verplicht.

Wat kost een SnelStart-koppeling?

De API zelf is gratis, maar SnelStart rekent eenmalig €250 exclusief btw per permanente sleutel na certificering. Bij CleverTech AI kost een standaard boekhoudkoppeling €2.000 tot €5.000 eenmalig plus €150 tot €350 per maand beheer.

Waarom valt mijn SnelStart-koppeling ineens uit met een 401?

Meestal is het access token verlopen en faalt de vernieuwing stil. De tweede oorzaak wordt vaak gemist: zet de klant een backup of herstelpunt terug, dan krijgt de administratie een nieuwe koppelingssleutel en moet de koppeling opnieuw geactiveerd worden.

Hoe vraag ik een access token aan?

Met één POST naar auth.snelstart.nl/b2b/token, form-encoded, met grant_type=clientkey en de koppelingssleutel van de klant. Geen redirect, geen client secret. Let op het formaat: rondzwervende integratiegidsen tonen de body als JSON, terwijl werkende productiecode hem form-encoded verstuurt. De respons bevat expires_in, in de praktijk een uur; trek daar een marge van enkele tientallen seconden vanaf, zodat een lopende call niet op een net verlopen token stuit.

Mijn klant kan geen koppelingssleutel aanmaken — wat nu?

Dan zit hij waarschijnlijk op een te licht pakket of nog in de proefperiode. De maatwerktegel in SnelStart Web waarmee de sleutel wordt aangemaakt, is er alleen bij inZicht en inControle. Zonder sleutel is er geen koppeling, dus dit is een check vóór de offerte en niet tijdens de bouw.

Welke endpoints biedt de SnelStart API?

De resources volgen de Nederlandse boekhoudtermen: relaties, verkoopboekingen en inkoopboekingen, verkoopfacturen en inkoopfacturen, verkooporders, de stamgegevens (grootboeken, btwtarieven, kostenplaatsen, artikelen, landen) en documenten voor bijlagen. Filteren doe je met $filter en pagineren met $top en $skip; $expand bestaat niet.

Waarom kost één factuur meerdere API-calls?

Omdat $expand ontbreekt, dus elk gerelateerd gegeven is een aparte call — net als bij Exact Online. Voor één inkoopfactuur raak je achtereenvolgens de relatie, het btwtarief en het grootboek voordat je de boeking zelf wegschrijft. Begroot je koppeling daarom in calls per order, niet in orders per dag.

Waarom weigert SnelStart mijn boeking met een 400?

Zelden om foute JSON, meestal om btw. SnelStart controleert het btw-bedrag op boekingsniveau tegen dat op regelniveau en weigert zodra die twee uiteenlopen. Met één tarief over de hele factuur valt dat nooit op; het gaat mis bij verlegde btw, marge-artikelen en deelretouren.

Wat is het verschil met de Exact Online API?

Exact Online geeft je OAuth2, een division-nummer en gepubliceerde limieten per administratie: je regelt de toegang zelf en weet vooraf waar de grens ligt. Bij SnelStart hangt elke koppeling aan drie dingen buiten jouw hand — een sleutel die de klant aanmaakt, het pakket waarop hij zit, en een certificering achteraf — en blijft de limiet ongepubliceerd. Daarom worden SnelStart-koppelingen zo vaak te laag begroot.

Wanneer heb ik helemaal geen maatwerkkoppeling nodig?

De meeste SnelStart-gebruikers niet. Draai je een webshop met een gangbare btw-stroom, dan doet een bestaande plugin hetzelfde werk via dezelfde API. Wij trekken de grens bij ordervolume: blijf je onder de tien orders per dag, dan duurt het zes tot twaalf maanden voordat een koppeling van €2.000 zichzelf terugverdient, en adviseren we die plugin.

Wanneer wordt maatwerk wél de betere keuze?

Zodra er minstens twee van vier dingen spelen: btw die per orderregel verschilt (verlegd, marge, OSS of een mix), een bronsysteem waarvoor geen plugin bestaat, een keten van meer dan twee systemen, of documenten die als bijlage mee moeten in plaats van alleen bedragen. Dan val je in de bandbreedte van onze overige API-koppelingen op maat: eenrichtingsverkeer vanaf €5.000, bidirectioneel met datatransformatie €7.500 tot €15.000.

Kan AI de boeking zelf doen via de API?

Nee, en dat is precies goed. De API accepteert alleen een complete, gevalideerde boeking, dus de AI zit vóór de call: extractie uit de pdf, classificatie tegen de geldige waarden die de endpoints grootboeken, btwtarieven en kostenplaatsen teruggeven, en dan een deterministische boeking. Laat het voorstel voorstel blijven tot je een paar maanden meetgegevens hebt — een classifier die op honderd facturen goed scoort, kan bij een nieuwe leverancier structureel de verkeerde kostenplaats kiezen zonder dat de API klaagt.

Volgende stap

Wat dit in jouw situatie betekent, weet je snel

Je legt je vraag voor, wij zeggen wat haalbaar is, wat het ongeveer kost en wat de slimste eerste stap is. Ook als dat betekent: nog even niet bouwen.

Liever eerst schriftelijk? Stel je vraag via het formulier.
Liever eerst zelf checken? Download de AI Readiness Checklist.
Of begin met de gratis AI-scan.
5,0op Google
  • Zeer fijne samenwerking! Professioneel, deskundig en vooral erg oplossingsgericht. Ze denken goed mee, communiceren duidelijk en leveren kwaliteit. Een betrouwbare en innovatieve techpartner die ik zeker kan aanbevelen!

    Spark O.

  • Heel goed geholpen duidelijke uitleg en werken heel hard voor je en denken heel goed mee wat belangrijk is. Duidelijk heel veel kennis van zaken. Echt een aanrader.

    Maarten B.

Verder lezen

Meer in deze serie

Blijf op de hoogte

Ontvang praktische AI-inzichten in je inbox. Geen spam, alleen waardevolle content.

Geen spam · max 2x per maand · altijd opzegbaar

Je gegevens worden alleen gebruikt voor het verzenden van de nieuwsbrief. Uitschrijven kan op elk moment.

Van kennis naar resultaat

Wat betekent dit voor jouw bedrijf?

We denken vrijblijvend mee over wat dit concreet zou opleveren — vaste prijs, vaste deadline.