Oracle NetSuite

How to connect Oracle NetSuite data to RevOS platform

Prerequisites

  • Allowed access to all Account permissions options
  • Realm (Account ID)
  • Consumer Key
  • Consumer Secret
  • Token ID
  • Token Secret

Setup guide

Step 1: Create NetSuite account

  1. Create account on Oracle NetSuite
  1. Confirm your Email

Step 2: Setup NetSuite account

Step 2.1: Obtain Realm info

  1. Login into your NetSuite account
  1. Go to Setup ยป Company ยป Company Information
  1. Copy your Account ID (Realm). It should look like 1234567 for the Production env. or 1234567_SB2 - for a Sandbox

Step 2.2: Enable features

  1. Go to Setup ยป Company ยป Enable Features
  1. Click on SuiteCloud tab
  1. Scroll down to SuiteScript section
  1. Enable checkbox for CLIENT SUITESCRIPT and SERVER SUITESCRIPT
  1. Scroll down to Manage Authentication section
  1. Enable checkbox TOKEN-BASED AUTHENTICATION
  1. Scroll down to SuiteTalk (Web Services)
  1. Enable checkbox REST WEB SERVISES
  1. Save the changes

Step 2.3: Create Integration (obtain Consumer Key and Consumer Secret)

  1. Go to Setup ยป Integration ยป Manage Integrations ยป New
  1. Fill the Name field (we recommend to put revos-rest-integration for a name)
  1. Make sure the State is enabled
  1. Enable checkbox Token-Based Authentication in Authentication section
  1. Save changes
  1. After that, Consumer Key and Consumer Secret will be showed once (copy them to the safe place)

Step 2.4: Setup Role

  1. Go to Setup ยป Users/Roles ยป Manage Roles ยป New
  1. Fill the Name field (we recommend to put revos-integration-role for a name)
  1. Scroll down to Permissions tab
  1. (REQUIRED) Click on Transactions and manually add all the dropdown entities with either full or view access level. For more information see FAQ section below.
  1. (REQUIRED) Click on Reports and manually add all the dropdown entities with either full or view access level. For more information see FAQ section below.
  1. (REQUIRED) Click on Lists and manually add all the dropdown entities with either full or view access level. For more information see FAQ section below.
  1. (REQUIRED) Click on Setup and manually add all the dropdown entities with either full or view access level. For more information see FAQ section below.
  • Make sure you've done all REQUIRED steps correctly, to avoid sync issues in the future, for more information see FAQ section below.
  • Please edit these params again when you rename or customise any Object in Netsuite for revos-integration-role to reflect such changes.

Step 2.5: Setup User

  1. Go to Setup ยป Users/Roles ยป Manage Users
  1. In column Name click on the userโ€™s name you want to give access to the revos-integration-role
  1. Then click on Edit button under the userโ€™s name
  1. Scroll down to Access tab at the bottom
  1. Select from dropdown list the revos-integration-role role which you created in step 2.4
  1. Save changes

Step 2.6: Create Access Token for role

  1. Go to Setup ยป Users/Roles ยป Access Tokens ยป New
  1. Select an Application Name
  1. Under User select the user you assigned the revos-integration-role in the step 2.4
  1. Inside Role select the one you gave to the user in the step 2.5
  1. Under Token Name you can give a descriptive name to the Token you are creating (we recommend to put revos-rest-integration-token for a name)
  1. Save changes
  1. After that, Token ID and Token Secret will be showed once (copy them to the safe place)

Step 3: Set up the credentials

Now use following data to configure your integration in RevOS

Notion image
  • Realm (Account ID)
  • Consumer Key
  • Consumer Secret
  • Token ID
  • Token Secret Also you have properly Configured Account with Correct Permissions and Access Token for User and Role you've created early.
  • As a start date you can use 2024-01-01T00:00:00Z

Frequently Asked Questions

Can I limit access to specific data my NetSuite account?

Yes, you can limit access to specific areas of your data in NetSuite by customizing the roles and permissions assigned to the user. This is done during Step 2.4: Setup Role above. Here's how you can limit access to specific areas:

Steps to Limit Access:

  1. Create a Role with Restricted Permissions: When you create a new role (e.g., revos-integration-role), you can control which data and areas the user can access by setting specific permissions. Instead of giving the user full access to every aspect of NetSuite, you can granularly manage permissions.
      • Transactions Tab: You can restrict access to specific transaction types like Sales Orders, Purchase Orders, Invoices, etc. by only adding the required entities to the role.
      • Reports Tab: Limit access to specific reports by selecting only the necessary reports or providing view access rather than full access.
      • Lists Tab: Control which lists the user can view or modify, such as customer data, items, vendors, etc.
      • Setup Tab: Only grant permissions for specific setup-related tasks if necessary. You can withhold access to high-level admin functions that are not relevant to the user.
  1. Fine-Tune Access Levels: Each permission you grant can have different access levels:
      • View: The user can only view the data but not make any changes.
      • Create: The user can create new records but cannot modify existing records.
      • Edit: The user can edit existing records but may not have access to delete or create.
      • Full: The user has full control over the data, including viewing, editing, creating, and deleting records.
  1. Custom Record Types: If you have custom record types or fields, ensure that you only grant access to those custom records that are necessary. This way, the user wonโ€™t see or modify any custom data that they are not authorized to access.
  1. Restrict Access to Specific Subsidiaries or Departments: If you use subsidiaries or departments in NetSuite, you can restrict a role's access to only data related to specific subsidiaries or departments. This can be particularly helpful in large organizations where certain users should only have access to a particular segment of the business.
      • Subsidiary Restrictions: This can be done under the Subsidiary Restrictions tab when editing a role, which limits the data visibility to a particular subsidiary.
      • Department/Location Restrictions: You can also apply restrictions based on departments, locations, or classes.
  1. Limit SuiteScript and SuiteTalk Access: When setting up integration roles, ensure that you only grant access to the specific script or integration endpoint. This is important when you are using SuiteScript or REST APIs to pull data, as you donโ€™t want the user to have broader access than needed.
  1. Monitor Role Usage: After setting up the restricted role, itโ€™s important to monitor the usage. You can regularly check role-based access logs to ensure that the user is only accessing the areas you intended.

Example Scenario:

If you want the user to access only Sales Orders and Customer data:

  • In the Transactions Tab, add Sales Order with View or Edit permissions.
  • In the Lists Tab, add Customer with View permissions.
  • Do not add permissions for other transaction types, such as invoices or purchase orders, so that the user wonโ€™t be able to access or modify these areas.

By carefully managing the permissions in this way, you can tailor the user's access to exactly what is required for their role while protecting sensitive data in other areas of your NetSuite account.

If you have any more specific requirements or areas you need help with in terms of permission setup, let me know!

Did this answer your question?
๐Ÿ˜ž
๐Ÿ˜
๐Ÿคฉ

Last updated on August 26, 2024