Omgaan met Exact Online rate limits

Iedere integratiepartij krijgt te maken met rate limits. Deze limieten bepalen hoeveel verzoeken een koppeling mag doen binnen een bepaalde tijdspanne. Het overschrijden van deze limieten kan leiden tot een slecht werkende koppeling. Dit is vooral bij koppelingen met Exact Online aan de orde. In deze blog vertelt onze collega Joris je wat rate limits zijn, hoe je je koppelingen efficiënt kunt inrichten en wat te doen als je toch de rate limits overschrijdt.

Beginnen bij het begin

Wat zijn rate limits?

Exact Online is de afgelopen jaren steeds strenger geworden op het aanroepen van hun systemen. Het aanroepen van hun systemen gaat middels een API (Application Programming Interface). Een API is een aparte verbinding, waarmee koppelingen toegang kunnen krijgen tot de data in Exact Online.

De limieten die Exact Online heeft ingesteld zijn van toepassing op deze API. Deze limieten worden ook wel 'rate-limits' genoemd en geven aan hoe vaak een koppeling via die API een verzoek mag doen naar Exact Online op een bepaalde dag. Exact Online heeft bepaald dat koppelingen maximaal 5000 aanroepen per dag mogen doen. Als deze 5000 verbruikt zijn, weigert Exact Online nieuwe verzoeken te accepteren. Na het verstrijken van middernacht wordt het aantal aanroepen weer gereset naar 5000.

Hoe richten wij onze koppelingen efficiënt in?

Om te zorgen dat onze koppelingen onder het maximum blijven, maken we gebruik van 'sync-endpoints'. Deze endpoints heeft Exact Online beschikbaar gesteld om het mogelijk te maken om onder de limiet van 5000 aanroepen te blijven. Een sync-endpoint werkt op basis van een tijdsstempel. Een tijdsstempel wordt door Exact Online berekend op het moment van het wijzigen van data.

Enkele voorbeelden:

  • Wijzigen van de afleverdatum van een order
  • Goederenlevering bijwerken met een track-and-trace code
  • Factuur definitief maken
  • Artikel bijwerken met een nieuwe barcode
  • Adresregel bijwerken

Een sync-endpoint is dus bedoeld voor het 'in sync' houden van de data in Exact Online met de koppeling. Een groot voordeel van het gebruik van sync-endpoints is dat je niet voor iedere nieuwe order alle bestelde artikelen moet opvragen bij Exact Online, maar dat deze al bekend zijn in de koppeling. Hierdoor verspilt de koppeling dus niet onnodige aanroepen richting Exact Online.

Naast sync-endpoints hebben we de volgende maatregelen genomen in de koppeling:

  • Meten - Wij houden het aantal verzoeken vanuit onze koppeling naar Exact Onlie bij. Zo weten we hoeveel verzoeken we doen en kunnen we anticiperen waar nodig.
  • Geoptimaliseerde timing - Naast dagelijkse rate-limits heeft Exact Online ook rate-limits per minuut bepaald. Op het moment van schrijven is dit maximaal 60 per minuut. Om het syncen van data niet boven deze limiet uit te laten komen, syncen we de data van verschillende objecten op verschillende intervallen.

Wat als de rate limits alsnog overschreden worden?

Heb je een compleet geoptimaliseerde koppeling, maar kom je in piekperioden alsnog boven de rate limits uit? Dan kunnen we met een goed onderbouwde analyse op zak een uitzondering aanvragen bij Exact Online. Je koppeling blijft dan gewoon naadloos werken, ook tijdens de piekperioden!

Niek 1

Hulp nodig bij je Exact Online koppeling?

Plan direct een afspraak met onze collega Niek. Hij praat je graag bij over de laatste ontwikkelingen en kijkt met je mee naar de koppelkansen binnen jouw bedrijf.