NetSuite connector installation guide
This guide will walk you through setting up the NetSuite connector in Windsor.ai to sync your NetSuite data.
Prerequisites
Before you begin, ensure you have:
- A NetSuite account with administrator access
- Access to the NetSuite Setup menu
- Permission to create integrations, roles, and access tokens
How to connect NetSuite to Windsor.ai: Setup steps
Step 1: Create a NetSuite account
If you don’t already have a NetSuite account:
1. Sign up for a NetSuite account at NetSuite.com.
2. Complete the account setup process.
3. Note your Realm (Account ID) – this can be found in your NetSuite URL or account settings:
- Production accounts: Numeric ID (e.g.,
2344535) - Sandbox accounts: Numeric ID with suffix (e.g.,
2344535_SB1)
Step 2: Set up a NetSuite account
Step 2.1: Enable token-based authentication
1. Log in to your NetSuite account.
2. Navigate to Setup → Company → Enable Features.
3. Go to the SuiteCloud tab.
4. Enable Token-Based Authentication.
5. Save your changes.
Step 2.2: Create integration
1. Go to Setup → Integrations → Manage Integrations → New.
2. Fill in the following fields:
- Name: Enter a descriptive name (e.g.,
windsor-ai-integration) - State: Select Enabled.
- Token-based authentication: Check this box.
3. Click Save.
4. After saving, you will see:
- Consumer Key – Copy this value (you’ll need it later)
- Consumer Secret – Copy this value (you’ll need it later)
Important: Store these credentials securely – the Consumer Secret will only be shown once.
Step 2.3: Note your Realm (Account ID)
Your Realm (Account ID) can be found in several ways:
1. From URL: Look at your NetSuite URL – it will contain your account ID:
- Production:
https://[ACCOUNT_ID].app.netsuite.com - Sandbox:
https://[ACCOUNT_ID]-SB1.app.netsuite.com
2. From Setup Menu: Go to Setup → Company → Company Information → Company ID.
3. Format:
- Production: Numeric only (e.g.,
2344535) - Sandbox: Numeric with suffix (e.g.,
2344535_SB1)
Step 2.4: Create Integration Role
1. Go to Setup → Users/Roles → Manage Roles → New.
2. Fill in the role details:
- Name: Enter a descriptive name (e.g.,
windsor-ai-integration-role) - ID: Enter a unique ID (e.g.,
WINDSOR_AI_INTEGRATION_ROLE)
3. Scroll down to the Permissions tab:
- (REQUIRED) Click on
Transactionsand manuallyaddall the dropdown entities with eitherfullorviewaccess level - (REQUIRED) Click on
Reportsand manuallyaddall the dropdown entities with eitherfullorviewaccess level - (REQUIRED) Click on
Listsand manuallyaddall the dropdown entities with eitherfullorviewaccess level - (REQUIRED) Click on
Setupand manuallyaddall the dropdown entities with eitherfullorviewaccess level
4. Save changes.
Important notes:
– Make sure you’ve completed all
REQUIREDsteps correctly to avoid sync issues;– If you rename or customize any
Objectin NetSuite, you must edit these permissions again for the integration role to reflect such changes.
Step 2.5: Set up User
1. Go to Setup → Users/Roles → Manage Users.
2. In the Name column, click on the user’s name you want to give access to the integration role.
3. Click the Edit button under the user’s name.
4. Scroll down to the Access tab at the bottom.
5. Select from the dropdown list the integration role you created in Step 2.4 (e.g., windsor-ai-integration-role).
5. Save changes.
Step 2.6: Create Access Token for Role
1. Go to Setup → Users/Roles → Access Tokens → New.
2. Select an Application Name (the integration you created in Step 2.2).
3. Under User, select the user you assigned the integration role to in Step 2.5.
4. Inside Role, select the role you gave to the user in Step 2.5.
5. Under Token Name, enter a descriptive name (e.g., windsor-ai-rest-integration-token).
6. Save changes.
7. After saving, Token ID and Token Secret will be displayed once – copy them to a safe place immediately.
Important: The Token Secret will only be shown once. If you lose it, you’ll need to create a new access token.
Step 3: Set up the NetSuite connector in Windsor.ai
Log in to your Windsor.ai account.
2. Navigate to Data Sources in the left-hand bar.
3. Find NetSuite in the list.
4. Fill in the connector configuration form with the following fields.
NetSuite configuration fields:
Realm (Account ID)
- Enter your NetSuite Realm (Account ID)
- Production example:
2344535 - Sandbox example:
2344535_SB1 - Format: Numeric for production, or numeric with
_SB1,_SB2, etc. for sandbox
Consumer Key
- Enter the Consumer Key from Step 2.2
- Format: 32-64 alphanumeric characters
- Example:
a123b456c789d0e1f2g3h4i5j6k7l8m9n0
Consumer Secret
- Enter the Consumer Secret from Step 2.2
- Format: 32-64 alphanumeric characters
- Example:
a123b456c789d0e1f2g3h4i5j6k7l8m9n0
Token Key (Token Id)
- Enter the Token ID from Step 2.6
- Format: 32-64 alphanumeric characters
- Example:
a123b456c789d0e1f2g3h4i5j6k7l8m9n0
Token Secret
- Enter the Token Secret from Step 2.6
- Format: 32-64 alphanumeric characters
- Example:
a123b456c789d0e1f2g3h4i5j6k7l8m9n0
Record Types
- Enter the NetSuite record types you want to sync
- Format: Comma-separated list of record type names
- Examples:
customer,salesorder,invoice,item,transaction - You can find available record types in the NetSuite Records Browser
Common record types include:
customer– Customer recordssalesorder– Sales ordersinvoice– Invoicesitem– Items/productstransaction– General transactionsemployee– Employee recordsvendor– Vendor records
5. Click Save or Connect to complete the setup.
Supported record types
The available NetSuite record types depend on:
- Your NetSuite account configuration
- The permissions granted to the integration role
- The record types enabled in your NetSuite account
To find available record types:
- Log in to NetSuite.
- Navigate to Customization → Scripting → Script Records → New.
- Or visit the NetSuite Records Browser.
Common record types that can be synced include:
accountcontactcustomeremployeeinvoiceitemsalesordertransactionvendor
Note: Ensure your integration role has the necessary permissions for the record types you want to sync (as configured in Step 2.4).
Performance considerations
- The connector is subject to NetSuite’s API rate limits and concurrency restrictions
- NetSuite enforces concurrency limits per integration
- Large data sets may take longer to sync
- Consider syncing record types during off-peak hours for better performance
Additional resources
Support
If you encounter any issues or need assistance:
- Check the troubleshooting section above.
- Review NetSuite’s system status and documentation.
- Contact Windsor.ai Support for connector-specific issues.
- Contact NetSuite Support for NetSuite account or API issues.
Last updated: 2025-01-27
FAQs
What do I need before setting up the NetSuite integration?
You need a NetSuite account with administrator access, permission to create integrations, roles, and access tokens, and access to the NetSuite Setup menu.
What permissions should the NetSuite integration role have?
Create a dedicated role and under Permissions → Transactions, Reports, Lists, and Setup, add all relevant entities with View or Full access so the connector can read the record types you plan to sync.
Which fields do I need to fill in Windsor.ai to connect NetSuite?
In the NetSuite connector form, enter your Realm (Account ID), Consumer Key, Consumer Secret, Token ID (Token Key), Token Secret, and the list of NetSuite record types you want to sync.
What NetSuite record types can I sync with Windsor.ai?
You can sync any record type that your account and role have access to, such as customer, salesorder, invoice, item, transaction, employee, and vendor. The full list is available in the NetSuite Records Browser.
Why am I not seeing certain record types or data in Windsor.ai?
Missing data usually means the integration role doesn’t have permissions on that record type, or the object was renamed/customized and the role’s permissions weren’t updated. Adjust role permissions and try syncing again.
Are there performance or rate-limit considerations when syncing NetSuite data?
Tired of juggling fragmented data? Get started with Windsor.ai today to create a single source of truth

Windsor vs Coupler.io