Naar hoofdinhoud

Koppelingene-Boekhouden.nl

e-Boekhouden API koppelen aan je webshop.

De e-Boekhouden API koppelen betekent dat bestellingen, relaties en facturen uit je webshop zonder overtypen in je administratie komen. e-Boekhouden.nl is het boekhoudpakket van tienduizenden Nederlandse ondernemers, verenigingen en stichtingen, en de REST API is openbaar beschreven.

Vertrouwd door

200+ bedrijven en webshops

Dux
Swim Essentials
Vouwwagenspecialist
Fit Preps
Fysio Moov
Mörgenn
MBST
Sunwave Brands
Flaske
Boumij Makelaars

Wat het oplevert

Wat een koppeling met e-Boekhouden.nl je oplevert.

Orders zonder overtypen. Een bestelling wordt een factuur of mutatie in de administratie, met de relatie erbij.

Eén artikelbestand. Artikelen en prijzen komen uit e-Boekhouden, dus je onderhoudt ze op één plek.

Ook voor verenigingen. Leden zijn een eigen onderdeel in de API, dus een ledenadministratie op je site kan meelopen.

Technisch

De koppeling in het kort.

Vorm van de koppeling
De REST API v1 op api.e-boekhouden.nl, met onderdelen voor relaties, artikelen, facturen, mutaties, grootboek, kostenplaatsen en leden. De oudere SOAP-koppeling bestaat nog
Authenticatie
Een API-token uit de instellingen van je account. Daarmee vraag je een kortlevend sessietoken op, en dat gaat mee in de Authorization-header
Richting
Beide kanten op
Verversing
Per aanroep; het sessietoken is kortlevend en wordt telkens opnieuw opgehaald
Wij bouwen het op
WordPress, Next.js, Maatwerk

Waar het misgaat

  • Het API-token zie je één keer. Bij het aanmaken toont e-Boekhouden het, en daarna niet meer. Zet het meteen in een wachtwoordkluis; kwijt is opnieuw aanmaken, en dat betekent dat elke koppeling die erop draait tegelijk stilvalt. Stuur het ook niet per mail naar je bouwer, wat helaas de gewoonte is.
  • Er zijn twee generaties naast elkaar. De oudere koppeling is SOAP met XML en een gebruikersnaam met twee beveiligingscodes; de nieuwe is REST met JSON en een API-token. Bouw op de nieuwe. Kom je bij een bestaande site een koppeling tegen die met beveiligingscodes werkt, dan is dat de vorige generatie: die werkt nog, maar er komt niets meer bij.
  • Het token is niet hetzelfde als de sessie. Met het API-token vraag je een sessietoken op, en dat sessietoken gaat mee bij elke volgende aanroep. Het is kortlevend, dus de koppeling moet er zelf een nieuwe halen als het verloopt. Een koppeling die dat niet doet, werkt de eerste keer prima en daarna niet meer.
  • Spreek af wat een bestelling in de boekhouding is. Een factuur per bestelling, of een dagtotaal per verkoopkanaal? Voor een webshop met tientallen kleine orders per dag is dat tweede meestal netter, en het scheelt je boekhouder werk. Het is een administratieve keuze en die hoort aan het begin, niet nadat er drieduizend facturen in staan.

Bron: documentatie van e-Boekhouden.nl, Purmerend

Wat is e-Boekhouden.nl?

e-Boekhouden.nl is online boekhoudsoftware uit Purmerend, veel gebruikt door zzp’ers, kleine bedrijven, verenigingen en stichtingen. Facturen, bankmutaties, btw-aangifte, relaties en artikelen zitten erin, en voor verenigingen ook een ledenadministratie.

Dat laatste is een verschil met de meeste pakketten en het is voor een website soms precies de reden om te koppelen: een vereniging die haar leden in e-Boekhouden bijhoudt, wil dat een inschrijving op de site daar terechtkomt en niet in een los formulier.

Stappen om je webshop via de e-Boekhouden API te koppelen

De REST API is openbaar beschreven. Je maakt in de instellingen van je account een API-token aan, en daarmee vraag je een kortlevend sessietoken op. Dat sessietoken gaat mee in de Authorization-header bij elke aanroep.

Wat er te benaderen valt: relaties, artikelen en artikelgroepen, facturen en factuursjablonen, mutaties, het grootboek met saldi, kostenplaatsen, eenheden en leden. Genoeg voor een webshopkoppeling en ruim genoeg voor een ledenadministratie.

De oudere SOAP-koppeling bestaat nog en werkt met een gebruikersnaam en twee beveiligingscodes. Voor nieuw werk gebruiken wij de REST-variant.

De stappen:

  1. Jij maakt in de instellingen van je account een API-token aan en zet het direct in een wachtwoordkluis.
  2. De koppeling stuurt dat token naar /v1/session, samen met een vaste naam voor de bron. Die naam helpt e-Boekhouden bij het uitzoeken van een probleem als je contact opneemt. Het antwoord geeft het sessietoken en het aantal seconden dat het geldig is.
  3. Werk je met meer dan één administratie, dan kiest de koppeling eerst de juiste. /v1/administration/linked geeft de administraties die gekoppeld zijn aan de administratie waarin het API-token is aangemaakt. Is er in de sessie geen administratie geopend, dan geeft de API daar een foutmelding over.
  4. Na afloop sluit de koppeling de sessie af met een DELETE op hetzelfde adres, zodat er geen geldige sessies blijven liggen.

Omzet, relaties en artikelen: wat er heen en weer gaat

Naar e-Boekhouden gaat de omzet: per bestelling een factuur, of per dag een verzamelboeking per kanaal. Welke van de twee hangt af van je aantallen en van wat je boekhouder wil zien.

De klant wordt een relatie. Spreek ook hier af hoe je een bestaande relatie herkent, anders staat dezelfde persoon er na een maand vijf keer in. Werk je met Moneybird, dan bouwen we dezelfde stroom als koppeling met Moneybird.

Naar je site komen de artikelen en prijzen. Voor een webshop die zijn assortiment daar bijhoudt scheelt dat een tweede lijst; voor een vereniging is de interessantere kant juist de andere, namelijk een inschrijving die als lid wordt aangemaakt.

En er is een kant die vaak wordt vergeten: de API geeft ook de openstaande facturen. Daarmee kan een klant of lid in een eigen account op je site zien wat er nog betaald moet worden.

Limieten van de e-Boekhouden API en veelgemaakte fouten

Een lijst geeft standaard 100 regels en hoogstens 2000 per aanroep; met offset haal je de volgende op. Per parameter past één filter, dus een zoekvraag met meerdere voorwaarden op hetzelfde veld splits je op. Datums gaan in het formaat JJJJ-MM-DD.

De meeste fouten zitten in de administratie en niet in de techniek. Een factuurnummer dat al bestaat wordt geweigerd, dus de nummering van de webshop en die van e-Boekhouden mogen elkaar niet kruisen. Een btw-code moet passen bij het land waar het bedrijf is gevestigd, en de oude code voor het lage tarief van 6% heeft een einddatum van 1 januari 2019; voor 9% is er een eigen code.

En een account in de proefperiode heeft een grens voor de boekhoudmodule en de factuurmodule. Tijdens een test op zo’n account kan de koppeling daardoor ineens worden geweigerd, terwijl er niets mis is met de code.

Koppelen voor verenigingen en stichtingen

Dit is de toepassing die het vaakst wordt vergeten. Een vereniging heeft een site met een inschrijfformulier, en een penningmeester die de leden in e-Boekhouden bijhoudt. Zonder koppeling typt die penningmeester elke inschrijving over, en gaat het mis op het moment dat iemand verhuist of opzegt.

Met de koppeling wordt een inschrijving op de site meteen een lid in de administratie, en kan de contributiefactuur daaruit volgen.

Wat wij daarbij aanraden: houd de site dom en de administratie slim. De site verzamelt en toont, de administratie bepaalt wie lid is en wat er betaald moet worden. Dat scheelt discussies over welk systeem gelijk heeft.

Op WordPress, WooCommerce of maatwerk

Op WordPress met WooCommerce stuurt een taak op de server de betaalde bestellingen door, per order of als dagtotaal, en houdt hij bij welke al in de administratie staan. Voor een vereniging zit de koppeling achter het inschrijfformulier: een nieuw lid komt via de API in de ledenadministratie, en de penningmeester ziet het daar verschijnen.

Bouwen we de site op maat, in Next.js met Payload als beheer, dan loopt hetzelfde via een eigen serverroute. Dat is de keuze als de site meer doet dan verkopen, zoals een ledenomgeving waarin leden hun gegevens en openstaande contributie zien.

Werkt je boekhouder liever in een ander pakket, dan werkt een integratie met SnelStart volgens hetzelfde idee. Over het bouwen van de site of ledenomgeving zelf gaat Design & Development.

Bijgewerkt op

Specialist voor koppelingen

Portret van Jos van der Pluijm tussen de stellingen van een magazijnJosDesign & Development085 83 30 533jos@klubb.nl

Veelgestelde vragen

Kan ik mijn webshoporders automatisch in e-Boekhouden krijgen?

Ja, als factuur per bestelling of als dagtotaal per kanaal. Bij tientallen kleine orders per dag is dat tweede meestal netter voor je boekhouder. We spreken het vooraf af, want achteraf draaien is lastig.

Hoe kom ik aan een API-token?

Dat maak je aan in de instellingen van je eigen account. Let op: je ziet het één keer. Zet het meteen in een wachtwoordkluis en stuur het niet per mail.

Wat is het verschil met de SOAP-koppeling?

De SOAP-variant is de oudere generatie, met een gebruikersnaam en twee beveiligingscodes. De REST API is de nieuwe, met een API-token en JSON. Voor nieuw werk gebruiken wij de REST-variant.

Kunnen leden van onze vereniging vanaf de site worden aangemaakt?

Ja. Leden zijn een eigen onderdeel in de API, dus een inschrijving op je site kan als lid in de administratie landen, met de contributiefactuur die daaruit volgt.

Werkt een e-Boekhouden-koppeling ook op WooCommerce?

Ja. Op WooCommerce draait de koppeling met e-Boekhouden.nl als taak op de server, op een vast ritme. Het token blijft daardoor uit de paginabron, en een klant die afrekent merkt niets van de boekhouding.

Welke btw-codes gebruik je in de e-Boekhouden API?

De codes die bij het land van vestiging horen. Voor Nederland zijn dat onder meer HOOG_VERK_21 voor 21% en LAAG_VERK_9 voor 9% op verkopen. De oude code LAAG_VERK voor 6% heeft een einddatum van 1 januari 2019. Voor Belgische bedrijven is er een eigen reeks codes die met BE begint.

Heeft e-Boekhouden een API?

Ja. e-Boekhouden.nl heeft een openbaar beschreven REST API op api.e-boekhouden.nl, met onderdelen voor relaties, artikelen, facturen, mutaties, grootboek, kostenplaatsen en leden. Je meldt je aan met een API-token uit je instellingen. De oudere SOAP-koppeling bestaat nog.

Hoe koppel ik Shopify aan e-Boekhouden?

Shopify koppel je aan e-Boekhouden met een app uit de Shopify App Store of met een eigen koppeling op de REST API. Bij een eigen koppeling stuurt een taak op de server betaalde bestellingen door, per order of als dagtotaal. Meer over de shop zelf staat bij Shopify webshop laten maken.

Kan ik e-Boekhouden ook via Zapier koppelen?

Ja, e-Boekhouden.nl staat als app in Zapier, met onder meer het aanmaken van een factuur. Voor een paar eenvoudige stappen is dat genoeg. Bij veel orders of afspraken over dagtotalen en het herkennen van bestaande relaties werkt een koppeling op de REST API meestal beter.

Let's work together.

Je omzet in de boekhouding, zonder overtypen.