Netsuite is a cloud-based business management software that helps manage customer relations, banking finances and company operations.
Make sure you are using the latest version of Netsuite (Netsuite 2019.2 or higher). You can see the version you are using at the bottom of the Netsuite home page.
Connecting to Netsuite
To streamline the connection process, you can have the Grow/Netsuite authorization window open, so you can cut and paste the values into the fields as you gather them.
- In Grow, navigate to Add New.
- Click Connect a New Data Source.
- Search and select Netsuite.
- Select Connect to Netsuite.
- In the pop-up window, enter an Authentication Nickname (connection name).
- Enter the Consumer Key, and the Consumer Secret.
The following steps help you get the Consumer Key and Consumer Secret from Netsuite:- In Netsuite, navigate to Setup > Integration > Manage Integrations > New.
- Enter a name.
- Check the Token-based Authentication and the User Credential checkboxes.
Ensure all other checkboxes are disabled.
- Click Save.
A green confirmation is shown.
- Scroll down to Client Credentials to obtain the Consumer Key, and the Consumer Secret.
This is the only time you are able to see the Consumer Key and the ConsumerSecret. Be sure to save them in a secure place to enter into Grow.
- Enter the Token Key and Token Secret.
These steps help you create your Token Key and Token Secret in Netsuite:- Click the Manage Access Tokens link at the bottom left of the home dashboard under Settings.
- Select New My Access Token.
- Select the application name you entered when getting your Consumer Key.
- Copy the Token Key, and the Token Secret to use in Grow.
This is the only time you are able to see the Token Key and the Token Secret, so be sure to save them in a secure place to enter into Grow.
- Enter your Account Number.
To get your Netsuite Account Number:- Go to Setup > Integration > Web Services Preferences.
- Copy and paste your Account Number in Grow.
- Go to Setup > Integration > Web Services Preferences.
- Enter the Deployed Script URL
-
Download the updated Javascript file linked in this step. Netsuite Warehouse works only when you create new authentication, or reconnect an existing authentication using the new script: Updated Javascript File. After it is downloaded, make sure that the file has the .js extension at the end of the file name.
Alternatively, you can update the script file in the Netsuite portal.
- In Netsuite, go to Customizations > Scripting > Script Deployments.
- Find the Grow script and select View. Select the hyperlink Grow Saved Search. Note that the name might be different, if you had saved it with a different name earlier.
- In the Script File tab, select Edit.
- Replace the older content with the content in this file: https://s3.amazonaws.com/grow-files/javascript/grow_savedSearch2.js.
It is recommended to delete the older script and then copy the new script.
- Then select Save to save the configurations.
- In NetSuite, go to Customization > Scripting > Scripts > New in your NetSuite account and click on the gray plus button that appears next to the box labeled Script File.
- A window pops up where you can choose to upload a file from your computer. Select the script file you just downloaded from Grow and click Save. Leave the File Name field blank.
When you upload the JS script, make sure it has .js at the end of the file name. If it does not have that extension after selecting the file, you can type that in here:
- Click Create Script Record.
- Name the script, and press Save.
- On the next page, click Deploy Script.
- On the next Script Deployment screen, make sure that the Status is set as Released, and under audience select all roles. You could also select just the specific role that you are using for the Grow NetSuite credentials.
- Press Save.
- In the next screen, copy the URL (not the external URL) and store it to use in Grow.
The URL will look like this:/app/site/hosting/restlet.nl?script=xxx&deploy=x
Update Script File in NetsuiteTo update the script in the Netsuite portal, follow through these steps:
-
- Click Connect to complete the authorization.
Before you proceeding with the following steps, ensure that the Token-based Authentication is enabled, and your role has sufficient permissions in your Netsuite account.
Navigate to Enabling Token-based Authentication and Setting Up User Roles to know how to enable the required.
Enabling the Token-based Authentication
Before establishing your Netsuite connection, it is important to have the Token-based Authentication enabled in your Netsuite account.
The following steps helps you through this process.
- Navigate to Setup > Company > Enable Features.
- On the SuiteCloud tab, enable the Client SuiteScript, and the Server SuiteScript features in the SuiteScript section.
- Scroll to Manage Authentication and enable Token-based Authentication.
- Click Save on this configuration page.
Setting Up User Roles
- Go to Setup > Users/Roles > Manage Roles > Search and find the role of the user you are using to connect to Grow.
- Under Permissions > Transactions, make sure that Find Transaction has the View access level.
- Under Permissions > Lists, make sure that the following permissions are added.
- Documents and Files: use the Full access level.
- Persist Search: the only access level is Create.
- Under Permissions > Setup, make sure that the following permissions have the Full access level:
- Access Token Management
- Log in using Access Tokens
- User Access Tokens
The easiest way to know that you have sufficient privileges is to let a user with an Administrator role to connect to Grow. Ensure that the user matches the one on your NetSuite account.
In the Name field select starts with and search for your Netsuite user with Admin rights.
The number before your name should match.Navigate to Setup> Users / Roles > Manage users> Search for the same number of the name of the user you are using to connect to Grow.
Click the word Administrator to check everything stated above.
Endpoints
Below is a list of the endpoints that the NetSuite/Grow integration offers, along with a short description of each.
- Saved Search Export - (Transaction): Provides details such as date/period, name, account information, amount charged about transactions on generic NetSuite saved searches.
- Saved Search Export - (Customer): Provides details such as name, account information, and contact information about customers on generic NetSuite saved searches.
- Saved Search Export: Provides details from your custom saved searches.
- Saved Search by ID: Provides you a way to customize any report using a Search ID Number and the data gets integrated with Grow.
Any saved searches that you will use in Grow must be set to Public or you will get an error.
FAQs + Tips and Tricks
Troubleshooting Tips
If your Saved Searches are coming in blank or not appearing in the list seen in Grow, here are some things to check in NetSuite:
- Saved searches must be set to Public to be able to work in Grow. Any saved searched set to Shared or Private will return an error.
- From the Results tab of the Saved Search, check the Run Unrestricted option, and uncheck the Show Totals option.
- From the Audience tab of the Saved Search, check the Select All option for Roles, Employees and Partners.
- Make sure none of the columns used in a Saved Search are using any uncommon characters in the name (/*&^, etc.).
Differences Between the Three Report Types
When you select the endpoints Saved Search Export - (Transaction) and Saved Search Export - (Customer), another field will open up with a list of saved searches that you created from a NetSuite template. On the other hand, the endpoint Saved Search Export will let you connect to a custom search you have created in NetSuite.
Custom Saved Searches
Using NetSuite's custom Saved Searches is the easiest way to call your NetSuite reports in Grow. In to your NetSuite account find the Saved Search that you want to pull and copy the ID for the search. Sign into Grow and navigate into the NetSuite connection. From the Select NetSuite Report dropdown, choose Saved Search Export. In the field labeled "Enter in your saved search id," go ahead and paste the Saved Search ID.
NetSuite DOES NOT Require a Separate User Anymore
A previous version of our NetSuite integration required you to create a NetSuite user to be used only with your Grow account. Now you can use an admin or another user with sufficient permissions to create the API keys and tokens needed to connect.
Getting the "An unexpected error has occurred" Error Emails
Due to the way NetSuite handles script errors, you might get some emails with the subject line "An unexpected error has occurred" and mention the Grow script you added to your account. These errors don't affect the data coming into Grow from NetSuite, and we are working on improving the error handling for this script. You can stop the error emails from being sent in the settings for that specific script:
- In NetSuite, go to Customization > Scripting > Scripts.
- Find the grow script being use and select Edit.
- On the bottom of the page find the Unhandled Errors tab.
- Uncheck all the Notify options and save the configuration.