Exact Online limits from 1 July 2021
Exact has announced new limits for its APIs from 1 July 2021. These may affect your application if you use an integration with Exact Online.
We can only test the impact from 1 July, because Exact Online does not provide a test version of the APIs. There is also no phased rollout by application, accountant, server or customer group. We are therefore providing an update in advance that attempts to respect these limits as closely as possible, without being able to test it fully beforehand.
In specific situations, the integration may consequently not work completely as expected. After 1 July, we will evaluate its behaviour and release further adjustments where needed. If you encounter problems, contact us so we can assess your situation.
Below are some changes and their possible impact. There are other changes, but we do not expect problems from those because their impact is limited.
At most one access token every 570 seconds
Every exchange with Exact Online requires an access token for security. It works like a temporary password. The token is valid for ten minutes, or 600 seconds, after which communication is blocked. A new token must therefore be requested within that period for use during the next ten minutes.
Previously, the application requested a new token after eight or nine minutes to keep the integration running without interruption. The new limit makes another token available only after 570 seconds, or nine and a half minutes. The integration must now request it precisely between 570 and 600 seconds.
In the past, Exact’s server sometimes “forgot” a token after three minutes, leaving us unable to access data. We introduced a workaround requesting another token after two minutes. This often happened overnight or at peak times when Exact’s servers were overloaded. We can no longer use that workaround, because a new token may only be requested after nine and a half minutes.
At most 200 requests per day
This limit can cause problems for integrations exchanging a lot of data. For example, a shop might receive 100 orders a day, make changes to some later, and create several new customers.
Integrations that import every product daily to pick up changes also face problems when there are more than 200 products. We can partly address this by requesting only products with a particular modification date, but it is unclear whether Exact treats every relevant change as a product modification. A price change in a price list linked to a product, for example, may not technically change the product record, even though the product’s price has changed in practice.
Mandatory filters when retrieving data
Data exchanges must now retrieve only part of the available data. It is no longer possible to request all products or customers at once. Previously, overnight updates retrieved every customer and compared the records to identify differences before updating them.
We have added filters to all data exchanges. In some cases this may cause difficulties, because retrieving the full set of information requires more requests, which count towards the daily limit described above.
Please note: this adjusted functionality is available from Base4 version 4.3.10. An update is often included in your subscription. Contact us for installation help if you expect or experience problems.