HomeData IntegrationsAccounting / ERP

NetSuite

Prerequisites

To enable this all you will need is a Netsuite Administrative Account - please make sure you are logged in to the role in Netsuite when following the directions below.

Setup

1. Ensure features are enabled

Go to Setup > Company > Enable Features and to the Suitecloud tab. Ensure ‘Token Based Authentication’ is enabled.

2. Create a new Integration Record

  • Go to Setup > Integration > Manage Integrations and click ‘New’ to create a new Integration record.
  • Name the integration Causal
  • Confirm the below from the settings on the integration page:
    • State is set to ‘Enabled’
    • ‘Token-Based Authentication’ is checked
    • ‘TBA: Authorization Flow’ and ‘Authorization Code Grant’ are unchecked
  • Save the integration

At this point of saving the record, you will be provided with Client Credentials.

Please copy and paste the ‘Consumer Key/Client ID’ and ‘Consumer Secret/Client Secret’ to a notepad. These are only generated once when the record is first saved and cannot be accessed again. The final step will include securely sending this to Causal.

3. Create a new Role

  • Go to Setup > Users/Roles > Manage Roles
  • Find the Accountant role (this is the standard role created by Netsuite) and select Customize
  • Set the name to Causal
  • Set Access Subsidiaries to ALL
  • Make sure SINGLE SIGN ONLY is Unchecked
  • Navigate to the table at the bottom of the page, select Permissions tab then select Setup tab below, then add 'User Access Tokens' as a row in the table.
  • Navigate to the Lists tab and add the Currency list as a row in the table.
  • Save the Role

4. Add role to User

  • Navigate to Setup -> Manage Users then select the user that is creating the integration
  • Select Access tab in table at the bottom
  • Select Edit and then add the Causal role
  • Save updates to the User

5. Create Access Tokens

  • Navigate to Setup > Users/Roles > Access Tokens and click ‘New Access Token’.
  • Select Causal as the Application Name
  • Select User that is creating integration
  • Select Causal role

Click save and then you will be provided with the Token ID and Token Secret, Please keep copy and paste these onto a notepad as these will only be generated once and you will need to share them with Causal team.

6. Setting up the RESTlet

  • Download the following file and extract it. Make sure it has the file ending .js
causalSavedSearchRestlet.js.zip
  • Navigate to the File Cabinet (Documents > Files > File Cabinet)
  • Add the above file into the SuiteScripts folder as Causal RESTlet
  • Navigate to Customization > Scripting > Scripts > New
  • Select the file which has just been added to the file cabinet and then Create Script Record
  • Name the Script Causal RESTlet Saved Search and the select ‘Save and Deploy’ as shown below (ID and Custom Plug-In Types will populate after this step)

  • Change the Status to ‘Released’, ensure the Log Level is ‘Debug’ and tick the checkbox for all Roles.

  • Save the Script Deployment
  • Once saved, the ‘External URL’ field will display the endpoint URL for this RESTlet. Please copy and paste this onto a notepad as these will only be generated once and you will need to share them with Causal team.
  • Navigate to Reports -> Saved Searches -> New
  • Scroll down and select Transactions
  • If you have the option to enable Advanced Search please do so
  • Select Audience tab and check ALL Roles
  • Select Criteria tab then scroll down to table to add the following rows
    • Posting: is true
    • Amount -> Not equal to -> 0
    • Account Type -> none of -> [none, statistical, non-posting] (to select multiple items at once you can ctrl+click on each account type)
    • Memorized: false
    • Type: not Revenue Adjustment
    • Status: none of Bill:Cancelled, Bill:Rejected, Bill:Pending
  • Select Results tab and check Run Unrestricted
  • Add the following columns in the Results tab:
    • Account
    • Period
    • Amount
    • Amount (Foreign Currency)
    • Exchange Rate
    • Exchange Rate (Line)
    • Currency
    • Type
    • Account Type
    • Subsidiary (no hierarchy)
  • You can also add additional information for the transaction drill-down (like Date, Memo or Document Number) or for additional categories. Please select the (no hierarchy) options for additional categories (e.g. Department (no hierarchy), Location (no hierarchy) or Class (no hierarchy)).
  • Remove any unnecessary columns to keep the saved search as small as possible
  • Update search title and ID to causal_transactions
Example Configuration

8. Create Exchange Rate Saved Search

  • Navigate to Reports -> Saved Searches -> New
  • Scroll down and select Consolidated Exchange Rates
  • If you have the option to enable Advanced Search please do so
  • Select Audience tab and check ALL Roles
  • Select Results tab and check Run Unrestricted
  • Update search title and ID to causal_rates

Please send your Customer Success Manager the below via your company's password manager or you can request a 1password vault from Causal.

  • Consumer Key/Client ID and Consumer Secret/Client Secret from step 2
  • Token ID and Token Secret from step 5
  • Endpoint URL from step 6