In order to offer high level security and authentication, NetSuite supports token-based authentication (TBA), which is a robust, industry standards-based mechanism that enhances the overall system security. This authentication mechanism enables client applications to use a token to access NetSuite through APIs, eliminating the need for RESTlets or web services integrations using store user credentials.
In this case, you need to connect NetSuite with Webgility Desktop for which you need to have 5 key parameters, before you can proceed with the integration process. The following are the key parameters which are required:
- Account ID
- Consumer Key
- Consumer Secret
- Token ID
- Token Secret
Though Account ID is already available and can be easily tracked from your NetSuite application, however you need to generate the remaining 4 parameters. Once done, you can successfully proceed to connect NetSuite with Webgility Desktop.
Hence, this article consists of two procedures such as:
- Setting up NetSuite TBA
- Connecting Webgility Desktop with NetSuite
Setting up NetSuite TBA
NetSuite TBA setup comprises of 4 steps such as:
- Enable TBA in your NetSuite account.
- Assign appropriate access permissions to an existing user (or create a new user).
- Generate the consumer Key and secret key for the Integration (Webgility).
- Generate the Access Token (token ID and token secret) for the Integration (Webgility).
Once you are done with the above steps, you can proceed to successfully connect Webgility Desktop with NetSuite.
Steps to setup TBA in NetSuite
1. Login to NetSuite account using your login credentials (user id & password).
2. In the NetSuite Home page, from the Setup menu, point to Company and then click Enable Features.
3. In the Enable Features screen:
a. Click SuiteCloud.
b. Under Manage Authentication, click TOKEN BASED AUTHENTICATION.
c. In the Terms and Conditions pop-up screen, click Accept.
The TOKEN BASED AUTHENTICATION checkbox gets selected.
d. Click Save to save the settings.
Your settings gets saved.
4. Manage Roles
A. Go to Setup > Users/Roles > Manage Roles > New.
B.Create a role and assign necessary permission for SyncApps integration.
C.The role must have "User Access Tokens" permission for integration using TBA.
i. Add following roles in Permissions >Transactions:
ii. Add following roles in Permissions > Lists:
iii. Add following roles in Permissions > setup:
D.Assign the Role to the desired user that will be used for integration. Go to Lists >Employees > Employees > edit user > Access tab > Roles sub tab.
5. To assign the Synch-App1 role for an existing user, from the Lists menu, point to Employees and then click Search.
Note: You can even create a new custom user role and assign to an existing user. To know how to proceed, click here.
In the Employee screen:
a. Search the desired user for whom you want to assign appropriate access.
The complete information of the employee user gets displayed.
b. Click Edit and then click the Access tab.
c. From the Roles drop down box, click Synch-App1 and then click OK.
d. Click Save to save the settings.
e. A confirmation message gets displayed notifying that the employee information has been successfully saved.
6. From the Setup menu, point to Integration and then click Manage Integrations to generate a Consumer Key and a Consumer Secret Key for Webgility Desktop integration.
7. In the Integrations screen, click any existing integration component or create a new integration component.
Note: Click here to learn how to create a new integration component.
8. In the Integration screen:
a. Click Edit to edit the settings of the selected integration component.
b. From the STATE drop down box, click Enabled and then Select (Enable) the TOKEN BASED AUTHENTICATION checkbox.
c. Click Save to save the settings.
d. A confirmation message displays notifying that the integration has been successfully saved.
Note: The Consumer Key and Secret Key are only displayed once. If you forget these values you will need to regenerate (reset the credentials) them and reconfigure the NetSuite.
9. From the Setup menu, point to Users/Roles > Access Tokens and then click New for generating a new access token (TokenID and Token Secret) for Webgility Desktop.
10. In the Access Token screen:
a. From the Application Name drop down box, click to select the desired application name.
b. From the User field, click to select a user (either use the List or the Search option) to generate a token.
c. From the Role drop down box, click Synch-App1.
d. The token name gets generated and displayed in the Token Name field.
e. In the Confirmation screen, note the token ID and token secret key that gets generated. Copy these values temporarily to a text editor for future reference.
Note: The token ID and secret key are only displayed once. If you forget these values you will need to regenerate them and reconfigure in NetSuite. Hence, it is advisable to save these keys, so you can use them whenever required.
11. Connect with Webgility Desktop using these generated tokens:
- Account ID
- Consumer Key,
- Consumer Secret,
- Token ID,
- Token Secret
Note: If you do not know how to locate your Account ID, follow the below steps as follows:
1. From the Setup menu, point to Integration and then click Web Services Preferences.
2. In the Web Services Preferences screen, you can locate your account ID under Primary Information section.
Connecting Webgility Desktop with NetSuite
With all the required information in hand, the final step is to connect Webgility Desktop with NetSuite.
To connect Webgility Desktop with NetSuite
1. In the Connect to Accounting Software screen:
a. From the Use Existing/Add Accounting Company drop down field, click New Accounting Company.
b. From the Select Accounting Software field, click NetSuite Inc. (US).
c. Type your account id corresponding to your NetSuite account in the Account ID field.
d. Under Authentication, click Token Based (Secured).
e. Type the consumer key, consumer secret, token id and token secret that you had generated from NetSuite in the respective fields.
Note: You can even click Basic instead of Token Based (Secured) if you want to authenticate using your email id and password. However, from a security perspective, we do not recommend basic authentication.
f. Click Connect to NetSuite.
g. Wait for the data to get downloaded and then click Continue.
You will be directed to the Order Processing Settings screen.
2. In the Order Processing Settings screen, enter the required values for the settings such as name, product code, location and more and then click Continue.