Follow this integration guide to connect your NetSuite data to Source Medium.
Requirements
- Administrator access for NetSuite
If you do not have Admin access, share this article with your Admin.
Steps
- Whitelist Source Medium's IP addresses
- Note: This step is required only if IP address rules (Setup > Company > Enable Features > Company > Access) are enabled for your NetSuite account. Otherwise, skip to Step 2
- Sign into your NetSuite account as an administrator
- In your NetSuite account, click Setup > Company > Company Information
- In the Allowed IP addresses field, add a comma-delimited list of the Source Medium IP addresses:
- Note: Make sure you don’t overwrite or change any existing IP addresses in this field - doing so could cause access issues for you and other NetSuite users in your account
52.23.137.21/32,52.204.223.208/32,52.204.228.32/32,52.204.230.227/32
f. Click Save
- Configure Web Services and authentication settings
- Enable Web Services
- In this step, you’ll enable Web Services for your NetSuite account. This is required to use NetSuite’s SuiteTalk API, which is what we will use to extract data
- Sign into your NetSuite account as an administrator, if you aren’t already signed in
- Using the global search, type page: enable and click the Page: Enable Features result. For example:
- Enable token-based authentication
- Next, you’ll enable token-based authentication for your NetSuite account. This is required to generate tokens and authenticate to the SuiteTalk API
- On the Enable Features page, locate the Manage Authentication section. This should be after the SuiteTalk section
- Check the Token-based Authentication box. Your settings should look like this when finished:
- Scroll to the bottom of the page and click Save
- Create an integration record for Source Medium
- Next, you’ll create an integration record for Source Medium. This will uniquely identify Source Medium in your NetSuite account
- Using the global search, type page: integrations and click the Page: Manage Integrations result
- On the Integrations page, click the New button
- On the New Integration page, fill in the following fields: 1. Name: Enter a name for the integration. For example: Source Medium 2. State: Select Enabled
- In the Authentication tab, select the Token-based Authentication option
- Click the Save button. The confirmation page will display a Consumer key/secret section
- Copy the Consumer Key and Secret somewhere handy. You’ll need these credentials to complete the setup in Source Medium.
- Create a Source Medium NetSuite role and configure permissions
- Create a Source Medium NetSuite role
- Using the global search, type page: new role and click the Page: New Role result
- On the Role page, enter a name for the role in the Name field. For example: Source Medium
- In the Authentication section, check the Web Services Only Role box
- Configure role permissions
- Next, you’ll grant permissions to the role. In the tabs below, you’ll find the following:
- Adding permissions - Step-by-step instructions for adding permissions to the role on the Create Role page.
- Required permissions - The minimum permissions required to successfully connect Source Medium to NetSuite.
- These permissions are the minimum required to successfully connect.
- Object permissions - The permissions required to access and replicate data for specific objects in NetSuite. We recommend granting only the permissions required for the objects you want to replicate.
- Table name - The name of the Source Medium table.
- Tab The tab in the Create Role page that contains the permission.
- Permission The permission required to access and replicate data for the table.
- Level The level of permission required to access and replicate data for the table. This will usually be View.
iv. On the Enable Features page, click the SuiteCloud subtab
v. Locate the SuiteTalk (Web Services) section
vi. Check the Web Services box
We recommend that you create a Source Medium-specific role and user for us. We suggest this to ensure that we don’t encounter issues with replication due to NetSuite’s API limitations.
Currently, a single NetSuite user is allowed to only have a single open API session at a time. If the user connected to Source Medium has another connection elsewhere, replication problems will arise.
c. In the table below are object-specific permissions and the tables they correspond to. The permissions for a given table must be granted to the Source Medium role in order to access and replicate data for the table.
The columns in the table are as follows:
Table name | Permission | Tab | Level | |
---|---|---|---|---|
Account | Accounts | Lists | View | |
BillingAccount | Customers | Lists | View | |
Budget | Set Up Budgets | Lists | View | |
Charge | Charge | Transactions | View | |
ContactCategory | CRM Lists | Setup | View | |
ContactRole | CRM Lists | Setup | View | |
CostCategory | Accounting Lists | Setup | View | |
CurrencyRate | Currency | Lists | View | |
CustomList | Custom Lists | Setup | View | |
Customer | Customers | Lists | View | |
CustomerCategory | Accounting Lists | Setup | View | |
CustomerStatus | Customer Status | Setup | View | |
Deleted | Deleted Records | Setup | Full | |
ExpenseCategory | Expense Categories | Lists | View | |
FairValuePrice | Fair Value Price | Lists | View | |
InboundShipment | Inbound Shipment | Lists | View | |
InventoryNumber | Items | Lists | View | |
Item | [Item Type] | Lists | View | |
ItemAccountMapping | Item Account Mapping | Setup | View | |
ItemDemandPlan | Item Demand Plan | Lists | View | |
ItemRevision | Item Revisions | Lists | View | |
ItemSupplyPlan | Item Supply Plan | Lists | View | |
Location | Locations | Lists | View | |
ManufacturingCostTemplate | Manufacturing Cost Template | Lists | View | |
ManufacturingOperationTask | Work Orders | Transactions | View | |
ManufacturingRouting | Manufacturing Routing | Lists | View | |
Nexus | Tax Items | Lists | View | |
OtherNameCategory | Accounting Lists | Setup | View | |
PriceLevel | Accounting Lists | Setup | View | |
PricingGroup | Accounting Lists | Setup | View | |
SalesTaxItem | Tax Items | Lists | View | |
SiteCategory | Presentation Categories | Lists | View | |
Subsidiary | Subsidiaries | Lists | View | |
TaxGroup | Tax Groups | Lists | View | |
TaxType | Tax Groups | Lists | View | |
Term | Customer Payment | Transactions | View | |
TimeBill | Track Time | Transactions | View | |
TimeEntry | Track Time | Transactions | View | |
Transaction | [Transaction Type] | Transactions | View | |
UnitsType | Units | Lists | View | |
Usage | Subscriptions | Lists | View | |
Vendor | Vendors | Lists | View | |
VendorCategory | Accounting Lists | Setup | View | |
customrecord_[custom_record_name] | Custom Record Types | Setup | View |
About NetSuite permissions
Depending on which products are enabled in your NetSuite account, you might not see some of these permissions. If you don’t see a permission in your NetSuite account, skip it.
For more info about these permissions and how they work within NetSuite, refer to NetSuite’s Permissions Documentation spreadsheet, which can be downloaded here from their help center. You may need to log into NetSuite to access their documentation.
d. Save the role
After you’ve finished granting permissions to the role, click Save to create it
- Create a Source Medium NetSuite user
- Using the global search, type page: new employee and click the Page: New Employees result
- In the Employee page, fill in the Name, Email, and any other required fields
- Click the Access tab, located in the bottom half of the page
- In the Access tab: 1. Check the Give Access box. 2. Check the Manually assign or change password box to create a password for the Source Medium user. 3. Enter a password in the Password field, then again in the Confirm Password field. 4. In the Roles section, search the dropdown menu to locate the Source Medium role you created in Step 4. 5. Click Add once you’ve located the role
- When finished, click Save to create the user.
- Create access tokens for Source Medium
- Using the global search, type page: tokens and click the Page: Access Tokens result
- Click the New Access Token button
- On the Access Token page, fill in the following fields: 1. Application Name: Select the integration record you created in Step 3. 2. User: Select the Source Medium user you created in Step 5. 3. Role: Select the Source Medium role you created in Step 4. 4. Token Name: Enter a name for the token. For example: Source Medium
- Click the Save button. The confirmation page will display a Token ID and Secret
- Copy the Token ID and Secret somewhere handy. You’ll need these credentials to complete the setup in Source Medium.
- Locate your NetSuite Account ID
- Using the global search, type page: web services and click the Page: Web Services Preferences result
- In the Primary Information section, locate the Account ID field as shown in the image on the right.
Next, you’ll create a dedicated NetSuite user for Source Medium and assign the Source Medium role to it.
Note: This requires the Setup > Access Token Management permission in NetSuite.
Note: If your Account ID contains a suffix - 1234567_SB2 for example.
If you have any questions or issues please reach out on your shared Slack channel, or at support@sourcemedium.com