Learn how to connect Engini to NetSuite.
With the NetSuite activities in Engini you can create, update, delete, get one or more records.
Getting Started with Netsuite #
Prerequisites #
- Access to NetSuite admin account.
- Identify all NetSuite permissions required.
Connecting Engini to NetSuite.com #
NetSuite Integration and Access Configuration #
- Enable web services & token-based authentication:
- Navigate to “Enable Features” form using the following path as described below and in the picture.
Setup > Company > Enable Features - Navigate to the “SuiteCloud” Tab.
- Enable CLIENT SUITESCRIPT & SERVER SUITESCRIPT in the SuiteScript section.
- Enable SOAP WEB SERVICES & REST WEB SERVICES in the SuiteTalk section.
- Enable TOKEN-BASED AUTHENTICATION & OAUTH 2.0 in the Manage Authentication section.
- Scroll back to the top of the page and save the changes.
- Navigate to “Enable Features” form using the following path as described below and in the picture.
- Create an integration record:
- Create a new Integration record by navigating to the following path as described below and in the picture.
Setup > Integration > Manage Integrations > New - Provide a name to the integration record & make sure that the STATE is enabled.
- Enable TOKEN-BASED AUTHENTICATION & Disable AUTHORIZATION FLOW in the Token-based authentication section.
- Disable AUTHORIZATION CODE GRANT in the OAuth 2.0 section.
- Save the integration record.
- Copy and story the consumer key and secret somewhere safe since it will be displayed for you only once and we will need it to authenticate NetSuite with Engini.
- Create a new Integration record by navigating to the following path as described below and in the picture.
- Create an integration role – Likely the most important part:
- Create a new Integration role by navigating to the following path as described below and in the picture.
Setup > Users/Roles > Manage Roles > New - Provide a name to the integration role
- Check the “ALL” option & enable “ALLOW CROSS-SUBIDIARY RECORD VIEWING” in the Subsidiary Restrictions section.
- Optional – You can set this role as a WEB SERVICES ONLY ROLE in the Authentication section. meaning you won’t be able to sign in the NetSuite UI using this role but only to interact with it’s API’s.
- Setting up permissions in the Permissions section (as example we will show adding a permissions to Sales orders transactions):
- In the Transaction tab choose “Sales Order”, then choose the permission level on the right column from the available options (View/Create/Edit/Full) and click on Add button.
- In the same tab, also add the Find Transaction permission as seen in the picture below. This permission will enable you to query NetSuite for transactions like Sales orders, invoice, etc.
- The sales order has different lists related to it – for example, Customers and Item Collection (order items). To get access to those lists we need to define them in the Lists tab with the appropriate permissions level as following.
- We will need to add the following permissions in the Setup tab as seen in the picture below.
- To allow querying NetSuite and get lists of result we will need to add “SuiteAnalytics Workbook” permissions in the Reports tab as seen in the picture below.
- Scroll back to the top of the page and save the changes.
- In the Transaction tab choose “Sales Order”, then choose the permission level on the right column from the available options (View/Create/Edit/Full) and click on Add button.
- Create a new Integration role by navigating to the following path as described below and in the picture.
- Assign the integration role – You can choose to create a new user or assign it to an existing user:
- Edit an Existing User
- Navigate to the following path as described below and in the picture.
Setup > Users/Roles > Manage Users - Click on the user you want to edit in the list.
- Once inside the Employee form click on Edit button to enter Edit mode.
- Enable GIVE ACCESS (if not enabled already) in the access tab & assign the Engini Integration Role created earlier and click on the Add button.
- Click on the save button to save the changes.
- Navigate to the following path as described below and in the picture.
- Create a new user
- Navigate to the following path as described below and in the picture.
Lists > Employees > Employees > New - Name the employee.
- Provide an email.
- Choose the SUBSIDIARY.
- Enable GIVE ACCESS in the access tab & assign the Engini Integration Role created earlier and click on the Add button.
- Click on the save button to save the changes.
- Navigate to the following path as described below and in the picture.
- Edit an Existing User
- Create access token for the integration user:
- Navigate to the following path as described below and in the picture.
Setup > Users/Roles > Access Token > New - For the APPLICATION NAME choose from the list the Integration Record we created earlier.
- For the USER choose from the list the user we created / edited and assigned the role to.
- For the ROLE choose from the list the role we created Earlier.
- Click the save button.
- Copy and store the TOKEN ID & TOKEN SECRET in a safe place. We will need it to authenticate NetSuite with Engini.
- Navigate to the following path as described below and in the picture.
Add a connection to NetSuite in Engini #
- Enter your Engini account at https://app.engini.io.
- Navigate to Connections page by clicking on the Connections on the left sidebar or by clicking here.
- Click on the Add connection option located at the topbar.
- Choose NetSuite option from the available applications.
- Enter the following details in the “Add Connection” form:
- Connection name
Enter a unique and descriptive name for this connection. This name will help you identify and manage the connection in your Engini account. “NetSuite” by default. - Account ID
Input your Netsuite Account ID. - Token ID
Provide the Token ID for authentication. - Token Secret
Enter the Token Secret associated with your Netsuite account. - Consumer Key / Client ID
Input your Consumer Key or Client ID. - Consumer Secret / Client Secret
Enter your Consumer Secret or Client Secret. - Press “Save”.
- Connection name
Schedule Triggers #
Check for created records
#
- Object Type
Select the type of object you want to check if a new record has been created. - Starting (UTC)
Choose the date and time for this workflow to start working. For the selected day time the workflow will run according to the selected frequency. - Recur every
Select the time interval. The minimum time interval is 15 minutes. - Add time frame
- Click on the “Add time frames” button.
- Select the specific time frame during which you want your workflow to be executed. Simply select the start time and end time that best align with your scheduling preferences.
- Press the “Add time frame” button for adding more time frames.
- Next Run at
You’ll see the date and time for the next run according to UTC time and your local time. - Add Conditions
You can specify which records will be returned from the search results by utilizing the “Add Conditions” button.- choose from the drop down the field you want to filter by.
- Select the condition you want the record to meet for the selected field.
- Click on the field to show the tooltip with all the options you can choose. You can populate the field in one of the following options:
- Static value – number / string. when using strings, you need to surround them with single quotes (‘).
- Property value from a previous activity (Using the tooltip that opens when clicking on the field).
- Expression – using functions and/or Previous activity properties and/or static values (Using the tooltip that opens when clicking on the field).
- Repeat steps 1-3 for all the fields you want to populate.
- Top N
By clicking on the empty field next to “Top N” you can define the maximum number of values you want to retrieve.
Check for updated records
#
- Object Type
Select the type of object you want to check if a record has been updated. - Starting (UTC)
Choose the date and time for this workflow to start working. For the selected day time the workflow will run according to the selected frequency. - Recur every
Select the time interval. The minimum time interval is 15 minutes. - Add time frame
- Click on the “Add time frames” button.
- Select the specific time frame during which you want your workflow to be executed. Simply select the start time and end time that best align with your scheduling preferences.
- Press the “Add time frame” button for adding more time frames.
- Next Run at
You’ll see the date and time for the next run according to UTC time and your local time. - Add Conditions
- choose from the drop down the field you want to filter by.
- Select the condition you want the record to meet for the selected field.
- Click on the field to show the tooltip with all the options you can choose. You can populate the field in one of the following options:
- Static value – number / string. when using strings, you need to surround them with single quotes (‘).
- Property value from a previous activity (Using the tooltip that opens when clicking on the field).
- Expression – using functions and/or Previous activity properties and/or static values (Using the tooltip that opens when clicking on the field).
- Repeat steps 1-3 for all the fields you want to populate.
- Top N
By clicking on the empty field next to “Top N” you can define the maximum number of values you want to retrieve.
Actions #
Create Record
#
Creates a new record of the selected object type.
- Object Type field
Select from the drop down the type of record you want to create.
Depending on the object of the selected type, additional fields that must be completed will become available. - Add Field
By clicking the “Add field” button, you can choose how to fill in the various fields in the record you are creating. You can add one field to the activity or more fields to the activity definitions, up to the number of fields in the board.- Choose from the drop down the field you want to fill.
- Click on the empty field to the right of the drop down to be shown the tooltip with all the options you can use to fill the field.
- You can populate the field in one of the following options:
- Static value – number / string. when using strings, you need to surround them with single quotes (‘).
- Property value from a previous activity (Using the tooltip that opens when clicking on the field).
- Expression – using functions and/or Previous activity properties and/or static values (Using the tooltip that opens when clicking on the field).
- Repeat the steps from step 3 for all the fields you wish to populate.
Delete Record
#
- Object Type
Select from the drop down the type of record you want to delete. - ID
Enter the ID of the record you want to delete.
Update Record
#
Updates an existing record in an object.
- Object Type field
Select from the drop down the type of record you want to update. - ID
Enter the ID of the record you want to update. - Add Field
By clicking the “Add field” button, you can choose how to fill in the various fields in the record you are updating . You can add one field to the activity or more fields to the activity definitions, up to the number of fields in the board.- Choose from the drop down the field you want to fill.
- Click on the empty field to the right of the drop down to be shown the tooltip with all the options you can use to fill the field.
- You can populate the field in one of the following options:
- Static value – number / string. when using strings, you need to surround them with single quotes (‘).
- Property value from a previous activity (Using the tooltip that opens when clicking on the field).
- Expression – using functions and/or Previous activity properties and/or static values (Using the tooltip that opens when clicking on the field).
- Repeat steps a-c for all the fields you want to populate.
Get Record
#
Gets a specified record in an object.
- Object Type field
Select from the drop down the type of record you want to retrieve. - ID
Enter or search for the ID of the record you want to retrieve.
Get Records
#
Gets all the records in an object.
- Object Type field
Select from the drop down the type of record you want to retrieve. - Add Filter
You can specify which records will be returned from the search results by utilizing the “Add Filter” button.- Choose from the drop down the field you want to filter by.
- Select the condition you want the record to meet for the selected field.
- Click on the field to show the tooltip with all the options you can choose.
- You can populate the field in one of the following options:
- Static value – number / string. when using strings, you need to surround them with single quotes (‘).
- Property value from a previous activity (Using the tooltip that opens when clicking on the field).
- Expression – using functions and/or Previous activity properties and/or static values (Using the tooltip that opens when clicking on the field).
- Repeat steps a-d for all the fields you want to populate.
- Top N
By clicking on the empty field next to “Top N” you can define the maximum number of values you want to retrieve.
Create or Update Record
#
You can create a new record if it doesn’t already exist in the database. If the record is found, the activity will update it.
- Object Type field
Select from the drop down the type of record you want to Create/Update. - ID
Enter or search for the ID of the record you want to Create/Update. - Add Field
By clicking the “Add field” button, you can choose how to fill in the various fields in the record you are creating/updating . You can add one field to the activity or more fields to the activity definitions, up to the number of fields in the board.- Choose from the drop down the field you want to fill.
- Click on the empty field to the right of the drop down to be shown the tooltip with all the options you can use to fill the field.
- You can populate the field in one of the following options:
- Static value – number / string. when using strings, you need to surround them with single quotes (‘).
- Property value from a previous activity (Using the tooltip that opens when clicking on the field).
- Expression – using functions and/or Previous activity properties and/or static values (Using the tooltip that opens when clicking on the field).
- Repeat steps a-c for all the fields you want to populate.
Initialize Objects Array
#
It allows you to create and set up an array, a structured collection of objects, which can be used for various purposes throughout your workflow.
- Name
By default, the array is named ‘objects array,’ but you have the flexibility to rename it according to your specific use case. - Object Element Type
You need to define the type of objects from the drop down that will be stored within the array.
Append Item Object To Array
#
You can add an item object to an existing array, allowing you to create, expand, and manipulate collections of objects efficiently.
- Variable
Choose from the dropdown an existing array variable in which you want to add the item object. This variable stores the collection of objects to which you’ll append the new item. - Add Field
By clicking the “Add field” button, you can choose how to fill in the various fields in the record you are updating . You can add one field to the activity or more fields to the activity definitions, up to the number of fields in the board.- Choose from the drop down the field you want to fill.
- Click on the empty field to the right of the drop down to be shown the tooltip with all the options you can use to fill the field.
- You can populate the field in one of the following options:
- Static value – number / string. when using strings, you need to surround them with single quotes (‘).
- Property value from a previous activity (Using the tooltip that opens when clicking on the field).
- Expression – using functions and/or Previous activity properties and/or static values (Using the tooltip that opens when clicking on the field).
- Repeat steps a-c for all the fields you want to populate.
Map Object Type Array
#
This activity is particularly useful when there is an array of data that needs to be translated into another structure. This activity is especially efficient when the array structure is fixed and doesn’t depend on specific conditions.
- Date List
Choose a data list that you’ve obtained from previous activities in your workflow. This data list typically contains an array of objects that you want to process and transform. - Object Element Type
You need to define the type of objects from the drop down that will be stored within the array. - Add Field
By clicking the “Add field” button, you can choose how to fill in the various fields when you are mapping.- Choose from the drop down the field you want to fill.
- Click on the empty field to the right of the drop down to be shown the tooltip with all the options you can use to fill the field.
- You can populate the field in one of the following options:
- Static value – number / string. when using strings, you need to surround them with single quotes (‘).
- Property value from a previous activity (Using the tooltip that opens when clicking on the field).
- Expression – using functions and/or Previous activity properties and/or static values (Using the tooltip that opens when clicking on the field).
- Repeat steps a-c for all the fields you want to populate.