Exact Online
Related pages:
Exact Online Technical Notes
Description
It interacts withe Exact Online API.
Requirements
Environment Variables
Please Note: From the platform version 20.51 we deprecated the component
LOG_LEVEL
environment variable. Now you can control logging level per each step of the flow.
Credentials
Here are the credentials necessary to authenticate the component with the Exact Online API:
Your Exact Online Division
- This is your division number.Application Client Id
- Here should be the OAuth client Id (client dev
). More about how to obtain your OAuth credentials check below.Application Client Secret
- Here should be your OAuth secret (client secret
).Location of the root of the OData API
- The default is/api/v1
. If not value is provided the default will be used.Print OAuth Token
- for debugging purposes.
Information about how to retrieve OAuth keys is described in the Register an app document.
The Application Client Id
and Application Client Secret
keys could be found here : https://apps.exactonline.com/be/nl-BE/V2/Manage.
Please Note: you should choose the appropriate country.
For each country, the Exact Online solution is deployed on a separate site. Because of this, the Exact Online server URL is country dependent. When configuring your credentials, the OAuth keys need to be configured for the same country as your store.
Working with dynamic metadata
On the Configure input step, firstly, you should choose an entity (object) type you want to work with. Click on the Object type to… and wait for data uploading. Then you’ll see a list of entities which are available for this action or trigger. You should choose one.
Then you wait for uploading metadata (input object structure). After metadata uploaded you can complete input object to retrieve response sample. Be careful of required fields with a red mark.
Structure of the input object will be based on objectType
field content.
Triggers
Webhook Subscription
Webhook enables the receiving of real-time data updates from Exact Online division. These updates are generated by user transactions as the envelope progresses through actions to completion. The Exact Online webhook provides updated information about the entities changes. Notification messages include information about the current status of the entity.
- More about Exact Online webhook
- More about Exact Online webhook response structure
Actions
Lookup Objects
Allows to get a list of all entities with current type in your division or to get entities that satisfy the filter. This action emits multiple results of required objects.
Input fields
- Object type to get - drop-down list with all types of the entities, required field. Select the type of entity you want to get.
- Number of search terms - not required field, number of search terms. Determines the number of search terms that the entity must match. Need to be an integer value from 1 to 100. If this field is empty, action emits all entities with selected type.
Input metadata
Metadata is depending on the input field Number of search terms
.
If Number of search terms
is empty, metadata does not exist.
If Number of search terms
= 1, metadata has only one search term.
If Number of search terms
> 1, metadata has a number of search term equal Number of search terms
and a number of criteria link equal ‘Number of search terms
- 1’.
Each search term has 3 fields:
- Field Name - chosen entity’s field name. You need to select the one field from
Value
section: - Condition - You need to select the one condition from
Value
section: - Field Value - the value that the field must match with the specified condition.
Between search terms, there is Criteria Link. You need to select the one criteria from Value
section:
For example, if you want to find all entities with types Contacts
with field ID
greater than 1
and field IsMainContact
equal true
:
Output metadata
JSON schema location folder: schemas/io/
. The necessary schema begins with the
get
and ends with the .out
and has an entity type between. For example, for
entity Accounts
schema has name getAccounts.out.json
Known limitations
See action limitations.
Upsert Entity
Allows to add new Entity or update one of the existing entity in your division.
To add a new Entity you should provide Account (account ), FirstName
, and LastName
in the request body. To update entity you should provide primary key (usually entity’s GUID
) and fields which you want to update. This action contains dynamic metadata.
Insert Entity
Allows adding a new entity to your division. To Insert Entity you must provide mandatory fields and fields which you want to update. This action is available ONLY for entities which can’t be updated with API. This action contains dynamic metadata.
Update Entity
Allows updating one of the existing entities in your division. To update entity you should provide primary key (usually entity’s GUID
) and fields which you want to update. This action is available ONLY for entities which can’t be inserted with API. This action contains dynamic metadata.
See action limitations.
Delete Entity
Allows removing one of the existing entities in your division. To remove Entity you should provide a primary key (usually entity’s GUID
) in the request body. This action contains dynamic metadata.
Current Limitations
Webhook Subscription
According to Exact Online documentation, you can’t create more than one webhook for the same topic, so webhook subscription trigger will remove, on start, all existing webhooks with callback URL or topic which are same to current.
Lookup Objects
- Action currently does not support filtering by a null value.
- Action currently does not support choosing fields to return.
- If any entity was not found, the action did not provide data.
- You need to set the
Field Value
according to the field type,Field Value
isstring
in the metadata and is checked only when executed. The necessary schema begins with theget
and ends with the.in
and has an entity type between. For example, for entityAccounts
schema has namegetAccounts.in.json
.
Update Entity
Can be used for entities that can’t be inserted via API only. This action was not fully tested due to the lack of documentation at the Exact Online official documentation. Action’s metadata should be additionally discussed with Exact Online developers or support team.
Links
To interact with Exact Online platform, this component interacts with Exact Online REST OData API (v1).
Get, Upsert, Update, Insert and Delete actions are providing all possible CRUD operations which are in Exact Online docs.