NetSuite

OAuthERPOrg connection

Org-level connection

NetSuite is connected once at the org level by an admin. The credential is shared across all groups that have been granted access — individual team members don't need to connect their own accounts.

How to connect

1

OAuth 2.0 (recommended):

2

Enter your Account ID above (Setup → Company → Company Information → Account ID)

3

In NetSuite, go to Setup → Integration → Manage Integrations → New

4

Enable Authorization Code Grant under the OAuth 2.0 subtab, check REST Web Services, and add On Belay's redirect URI

5

Save — copy the auto-generated Client ID, then add a Client Secret under Credentials

6

Paste the Client ID and Client Secret below, then click "Connect with OAuth"

7

Token-Based Auth (TBA):

8

For a complete step-by-step TBA walkthrough — including how to enable TBA at the account level, configure role permissions, create an Integration Record, and generate an Access Token — see the On Belay NetSuite TBA Setup Guide at:

9

https://github.com/Junto-Systems/onbelay/blob/main/docs/onbelay-platform/netsuite-tba-setup.md

10

Quick summary:

11

Enable Token-based Authentication and REST Web Services under Setup → Company → Enable Features → SuiteCloud tab

12

Assign your role the REST Web Services, Token-based Authentication, and Log in using Access Tokens permissions (Setup → Users/Roles → Manage Roles)

13

Create an Integration Record (Setup → Integration → Manage Integrations → New) with Token-based Authentication checked — copy the Consumer Key and Consumer Secret shown once on save

14

Create an Access Token (Setup → Users/Roles → Access Tokens → New) selecting the integration, user, and role — copy the Token ID and Token Secret shown once on save

15

Find your Account ID at Setup → Company → Company Information

16

Enter Account ID above, leave Client ID blank, and fill in Consumer Key, Consumer Secret, Token ID, and Token Secret below — then click "Connect with TBA"

Ready to connect?

Go directly to the integrations page in your dashboard.

Open Integrations →

Permissions (scopes)

These are the data scopes On Belay can be granted for NetSuite. Your org admin controls which scopes are enabled per group.

ScopeDescriptionAccess
customers:readRead customersRead only
customers:writeCreate/update customersRead / Write
sales_orders:readRead sales ordersRead only
sales_orders:writeCreate/update sales ordersRead / Write
purchase_orders:readRead purchase ordersRead only
purchase_orders:writeCreate/update purchase ordersRead / Write
invoices:readRead invoicesRead only
invoices:writeCreate/update invoicesRead / Write
inventory:readRead inventory & itemsRead only
inventory:writeUpdate inventory & itemsRead / Write
vendors:readRead vendorsRead only
vendors:writeCreate/update vendorsRead / Write
employees:readRead employeesRead only
financials:readRead financial transactions & GLRead only
reports:readRun saved searches & reportsRead only
suiteql:readExecute SuiteQL queriesRead only

Troubleshooting

"redirect_uri_mismatch" error during OAuth

Your OAuth app's authorized redirect URIs don't include the On Belay callback URL. Add https://app.onbelay.ai/api/oauth-callback/netsuite to the allowed redirect URIs in your OAuth app settings.

"invalid_scope" error

The API or scope isn't enabled in your cloud project. For Google integrations, make sure the relevant API (e.g., Google Ads API, Search Console API) is enabled in Google Cloud Console for your project.

Connected but Claude can't access data

Check that your group has been granted access to this integration in On Belay → Groups → [your group] → Integrations. Also verify the specific scopes your group is permitted to use match what your query requires.

Still stuck? We're happy to help.

Contact support →