Salto’s NetSuite adapter allows you to:
Fetch and deploy common NetSuite configuration data, e.g., workflows, custom fields, enabled features.
Deploy configuration changes from one NetSuite account to another.
Compare accounts.
Audit / document configuration changes.
Monitor specific configuration data changes of interest, e.g., preferences, permission schemes.
Supported Types
See the Supported Netsuite Types page.
Setup Instructions
Prerequisites for connecting a NetSuite account with Salto:
Enable SuiteCloud Development (SDF)
Install the Salto SuiteApp
Generate authentication tokens for SDF and Salto SuiteApp
Enabling SuiteCloud Development (SDF)
📘 The below steps require admin permission for your NetSuite account.
Go to Customization -> SuiteBundler -> Search & Install Bundles and click.
Search for suitecloud, and choose the bundle SuiteCloud Development Integration
Click “Install” to start the bundle installation.
Go to Setup->Company->Enable Features
Choose the “SuiteCloud” tab and make sure the following features are enabled:
SOAP web services
REST web services
Token Based Authentication
SuiteCloud Development Framework
Agree to all updates and Save.
Go to Customization -> SuiteBundler -> Search & Install Bundles -> List and click in order to verify that SDF installation is done.
Generating Authentication Tokens for SDF
Go to the home screen, click on “Manage Access Tokens”.
Click on “New My Access Tokens”.
Choose “SuiteCloud Development Integration” from the “Application Name” dropdown.
Click "Save"
Copy the “Token ID” and “Token Secret” and save them. They will not be visible later on due to security reasons.
Installing the Salto SuiteApp (aka Salto Integration Application)
Go to SuiteApps
Search for “Salto”, and choose the SuiteApp called “Salto” and click "Install"
Go to Setup->Company->Enable Features
Choose the “SuiteCloud” tab and make sure the following features are enabled:
SOAP Web Services
REST Web Services
Token Based Authentication
Create bundles with SuiteBundler
Go to Customization -> SuiteCloud Development -> Installed SuiteApp List in order to verify that Salto's SuiteApp installation is done.
Generating Authentication Tokens for Salto SuiteApp
Go to the home screen, click on “Manage Access Tokens”.
Click on “New My Access Tokens”.
Choose “Salto Integration” from the “Application Name” dropdown.
Click "Save"
Copy the “Token ID” and “Token Secret” and save them. They will not be visible later on due to security reasons.
👍 You have successfully installed SuiteCloud Development (SDF), Salto's SuiteApp and generated token IDs and secrets.
You are now ready to connect your NetSuite account to Salto.
Authentication Instructions
In application credentials, provide:
NetSuite account id - can be copied from your NetSuite URL (https://<NetSuiteAccountId>.app.netsuite.com)
Token ID and secret for SDF
Token ID and secret for Salto's SuiteApp
Example - Creating a New Environment
Note - to change the authentication credentials in an existing environment, click on the environment name and then click SETTINGS
to access the adapter configuration and credentials area.
Create a new environment
Provide a name for the environment (this name can be changed later)
Click on "Connect an App"
Select the Application Type - NetSuite
Install the plug-in (related to the Salto SuiteApp installed to NetSuite above)
Provide your NetSuite Account ID
Provide the SDF Token ID and Token Secret (that were created above)
Similarly, provide the Salto SuiteApp Token ID and Token Secret
Complete the Team Permissions (if applicable by Salto Plan)
Select Connect App or Connect App & Fetch to authenticate to NetSuite with your Token Based Authentication (TBA) credentials
Fetch and Application Connection Configuration Properties
Fetch Configuration
To learn what is the default NetSuite configuration and how you can modify it to support different use-cases such as fetching custom records or file cabinet, check out this guide.
🚧 Note: Adding more types to your fetch configuration is likely to influence the fetch duration, especially if these types have many instances.
Quick Fetch
Quick fetch leverages NetSuite’s ‘system notes’ mechanism and significantly reduces the fetch time by fetching only records and file cabinet items that were modified since your last fetch.
Fetch Targets
Once quick fetch is enabled, It’s possible to reduce fetch time by specifying specific fetch targets that may include NetSuite type names and/or file cabinet path patterns (regular expressions).
Once specified, Salto will fetch only instances of specified types and file cabinet items that matches the specified path patterns.
For example, specifying the following targets:
entitycustomfield
addressForm
customrecord_slt_tst
/MyFileCabinetDir/.*\.js
will only fetch entity custom fields, address forms, custom records of customrecord_slt_tst
and all files with the .js
suffix under the MyFileCabinetDir directory.
🚧 Note that:
Deletions can not be detected in a Quick Fetch
References in fetched elements will be updated as part of the partial fetch as long as the referenced element exists in the Salto environment. If the referenced element does not exist in the Salto environment (meaning it is new in that environment and was not fetched yet), its reference will be omitted until a full regular fetch is performed
Overriding Configuration Values
It is possible to override any fetch configuration property by specifying a key value pair.
Full list of available configuration options can be found here.
FAQs
What does the NetSuite config file look like?
Please refer to this page for details.
What is the benefit of using Salto instead of working directly with SDF?
Salto leverages SDF under the hood, along with a SuiteApp developed by Salto. Thus, Salto extends SDF and adds several key capabilities and components:
All files in the file cabinet (including deletions).
Data records such as account, subsidiary, department, classification, currency and more.
Deletions of custom record types and instances of standard types such as custom entity field, custom CRM field, custom list, custom item field, custom item, number field, custom item option, custom transaction column field and more.
Why does my NetSuite Adapter configuration sometimes get updated automatically?
There are 2 cases where we exclude elements automatically:
When we fetch elements using SDF and we hit an “unexpected error” in the SDF response. It is assumed that, once we get the "unexpected error" response for a certain element, that element fetch will consistently fail. Hence, the element is marked in the adapter configuration (
netsuite.nacl
) for two reasons:User Visibility - So the user will be able to see that we no longer fetch that element and
To ensure, in the configuration, that the element will be skipped in subsequent fetches so as not to cause a fetch failure altogether.
When we fetch elements using SDF and we hit an “You cannot download the XML file for this object because it is locked” in the SDF response. In this case we add the element to the lockedElements field in the NetSuite adapter configuration (
lockedElements.nacl
). This part of the configuration is in a separate file since it may become rather large and we do not want the sheer size of thelockedElements
to interfere the readability of the rest of the adapter configuration (netsuite.nacl
)
Do you support SuiteScripts?
Yes. SuiteScripts are fully supported, including dependencies. SuiteScript dependencies are identified and highlighted for impact analysis and environment compare & deploy operations.
What impact does Salto have on my API limits?
| Concurrency |
What are the limits? | NetSuite limits concurrency on both your account level, and per-integration. Learn more here. |
How can you adjust usage or capacity? | - See |