Comment on page
NetSuite
This page describes how to use Census with NetSuite.
In this guide, we will show you how to connect NetSuite to Census and create your first sync.
- Have your NetSuite account ready, with the Administrator role.
This process involves several steps - please set aside 15-30 minutes to complete it. NetSuite configuration can be complex, so if you have any questions please contact us via [email protected] and we'll help you tailor these instructions to your needs.
- Have the proper credentials to access to your data source. See our docs for each supported data source for further information:
- 1.Visit the integrations page or use the global search to look for and navigate to: page: Manage Integrations

- 1.Create a new integration with the follow properties:
- Give it a name that you'll recognize, such as Census
- Check TOKEN-BASED AUTHENTICATION
- Leave OAuth 2.0 AUTHORIZATION CODE GRANT unchecked
- Leave TBA: AUTHORIZATION FLOW unchecked
- Set State to Enabled
- 2.Click Save when finished.
- 3.Copy and paste the CONSUMER KEY / CLIENT ID and CONSUMER SECRET / CLIENT SECRET to a password manager. You'll need those later to paste into Census.

- 1.Global search to page: Enable Features
- 2.Navigate to the tab SuiteCloud > Manage Authentication
- 3.Make sure Token Based Authentication is checked
- 4.Save

The Administrator user you're using with NetSuite and Census also needs "Token Role".
- 1.Global search to page: New Role
- 2.Name the role: Census
- 3.Check WEB SERVICES ONLY ROLE
- 4.Check DO NOT RESTRICT EMPLOYEE FIELDS
- 5.For multi-subsidiary NetSuite users**,** check ALL under ACCESSIBLE SUBSIDIARIES
- 6.Under Permissions > Setup, add the following permissions:
- Access Token Management: Full
- Custom Body Fields: Full
- Custom Column Fields: Full
- Custom Entity Fields: Full
- Custom Fields: Full
- Custom Item Fields: Full
- SOAP Web Services: Full
- REST Web Services: Full
- User Access Token: Full


7. Under Permissions > Lists, Give your Role the appropriate permissions for the NetSuite objects you'll be updating. For example, to update Customers, you'll want to give this role the Lists > Customers (Full) permission.

- 1.Global search to page: Employees
- 2.Edit the employee record of the Admin user you will be using Census with.
- 3.Navigate to Access > Roles and add the Token Role you just created above.

- 1.Global search to page: Access Tokens
- 2.Click New Access Token
- 3.Select the application and role we created above, then press Save
- 4.Copy and paste the new Token ID and Token Secret to your password manager or file. We'll use it below.

Note: Netsuite permission changes to a role or user do not occur immediately. These changes typically take anywhere from a few minutes to a few hours, and they can even take up to 24 hours to go into effect. If you are confident that you have given Census the correct permissions above and experience an error setting up the connection, we recommend waiting for these changes to go into effect before testing the connection again.
The last bit of information you’ll need is your NetSuite Account ID:
- 1.Global search to page: Company Information.
- 2.Your ACCOUNT ID will be found on that page. Copy and paste it as well.
- 1.Now in Census, add a new Destination.

- 1.Paste the Account ID of your NetSuite Account, as well as the Consumer Key, Consumer Secret, Token ID and Token Secret created above.

- 1.Click Save Connection, and click Test to double check your connection information.
You're ready to start using Census to load data from your warehouse to NetSuite! If you have any trouble with these steps, please don't hesitate to reach out to: [email protected] and we'll help get this setup.
NetSuite's API speed and rate limitation are complex and are tied to the plan you are on but you can expect a speed of ~500 records sync / minute on their base plan,
Service | Records sync / Minute |
NetSuite | 500 |
Please note that you can contact your Customer Success Manager at NetSuite to increase your NetSuite account API concurrency to increase the records sync speed.
This is is the current list of NetSuite objects supported by our connector. There are many more and we add them on a case by case basis. If you need a different type of object, please contact us to let us know which object do you need, and we will be happy to support it.
Object Name | Supported? |
Account | ✅ |
Billing Account | ✅ |
Cash Sale | ✅ |
Class | ✅ |
Contact | ✅ |
Credit Memo | ✅ |
Currency | ✅ |
Customer | ✅ |
Customer Deposit | ✅ |
Customer Payment | ✅ |
Customer Refund | ✅ |
Customer Status | ✅ |
Custom Record | ✅ |
Department | ✅ |
Employee | ✅ |
Invoice | ✅ |
Inventory Item | ✅ |
Inventory Adjustment | ✅ |
Item Fulfillment | ✅ |
Item Receipt | ✅ |
Journal Entry | ✅ |
Location | ✅ |
Other Charge Item | ✅ |
Partner | ✅ |
Purchase Order | ✅ |
Sales Order | ✅ |
Subscription | ✅ |
Subscription Change Order | ✅ |
Subsidiary | ✅ |
Vendor | ✅ |
Vendor Bill | ✅ |
Please note that NetSuite doesn't support the creation of fields via Census and currently we don't support add all fields feature for NetSuite
Behaviors | Supported? | Objects |
Update or Create | ✅ | All |
Update Only | ✅ | All |
Create Only | ✅ | All |
Netsuite is one of our most complex destinations, and some objects have behavior that is not explained in the Netsuite docs. Here are some known quirks to be aware of:
- The
Account
field cannot be set on record creation; it can only be set on record update - In order to change a Customer Payment status to "Deposited", you must send a record update that both sets the
Undep Funds
(short for "undeposted funds") field tofalse
, and sets theAccount
field to the bank account into which the funds were deposited.
Invoice
- If you're syncing to the Item List on the Invoice object your Item List data will need to be formatted in a JSON array like the following example.
[{"amount": 2.5, "item": {"internalId": "13"}, "quantity": 1}]
.
For more information on all Netsuite Objects and their fields please visit Netsuite's Schema Browser
Last modified 2mo ago