Skip to main content

NetSuite Settings

Configure NetSuite adapter settings in Salto

Dan Avigdor avatar
Written by Dan Avigdor
Updated yesterday

After adding an NetSuite application connection to an environment, users can customize various aspects according to their unique setup.

To do this, go to the Environment Settings -> Application Connections -> click the three dots next to your application -> Edit Configuration File

For more information about changing settings, read the Salto Configuration File article.

Managing File Cabinet Files

By default, Salto fetches only script files under the SuiteScripts and Templates folders, but this can be configured.

To control which files are included in your Salto workspace:

netsuite {
fetch = {
include = {
fileCabinet = [
"^/SuiteScripts/.*",
"^/Templates/.*",
]
}
exclude = {
fileCabinet = [
"^/Web Site Hosting Files.*",
]
}
}
}

You can also set size limits to prevent fetching excessively large file cabinets:

netsuite {
client = {
maxFileCabinetSizeInGB = 3
maxFilesPerFileCabinetFolder = [
{
folderPath = "/SuiteScripts.*"
limit = 2000
},
]
}
}

Note – File Cabinet limits help prevent performance issues when working with large NetSuite accounts.

Including Custom Records

By default, Salto does not fetch custom records from NetSuite. You can enable this by adding them to the include section.

To fetch all custom records:

netsuite {
fetch = {
include = {
customRecords = [
{
name = ".*"
}
]
}
}
}


To fetch only a subset (for example, records from a specific bundle):
​

netsuite {
fetch = {
include = {
customRecords = [
{
name = "customrecord_sw_.*"
}
]
}
}
}

Managing SuiteApps

Fetch SuiteApps objects using the following configuration:
​

netsuite {
client = {
installedSuiteApps = [
"com.netsuite.someapp",
"com.netsuite.anotherapp"
]
}
}

Configuring Concurrency Limits

NetSuite enforces API rate limits that can impact fetch and deploy operations. You can configure concurrency settings to optimize performance:

netsuite {
concurrencyLimit = 5
client = {
fetchAllTypesAtOnce = false
fetchTypeTimeoutInMinutes = 4
maxItemsInImportObjectsRequest = 40
sdfConcurrencyLimit = 4
}
suiteAppClient = {
suiteAppConcurrencyLimit = 4
httpTimeoutLimitInMinutes = 20
}
}

Managing Deploy Dependencies

You can include or exclude specific dependencies when deploying to NetSuite:

netsuite {
deploy = {
additionalDependencies = {
include = {
features = [
"DEPARTMENTS",
"SUBSCRIPTIONBILLING:required"
]
}
exclude = {
objects = [
"unwanted_object"
]
}
}
}
}

Features are included as optional by default. Add the :required suffix to mark a feature as required.

Deployment Validation

Deployment validation is enabled by default.

If needed, it can be disabled using:
​

netsuite {
deploy = {
validate = false
}
}
Did this answer your question?