> ## Documentation Index
> Fetch the complete documentation index at: https://docs.erstan.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Connecting NetSuite

> Link your NetSuite account to Erstan using the recommended Erstan app or your own integration record.

NetSuite is Erstan's flagship connector — it gives your agents grounded access to your invoices, bills, customers, and SuiteQL data. Connecting NetSuite is a two-stage flow: an owner or admin sets up the shared workspace connection once, then each member authorizes their own NetSuite user before agents can act as them.

<Frame caption="Connectors">
  <img src="https://mintcdn.com/erstan/VvzUuagDdyVkLVu5/images/connectors-list.png?fit=max&auto=format&n=VvzUuagDdyVkLVu5&q=85&s=8f30217818435243a35293a49485231b" alt="The Connectors page listing connected systems with status badges" width="2880" height="2400" data-path="images/connectors-list.png" />
</Frame>

## Before you start

<Info>
  Setting up the workspace connection requires the **Owner** or **Admin** role (or the **canManageIntegrations** permission). Members without it authorize their own user but can't establish the shared connection — see [Authorizing your NetSuite user](/connectors/netsuite-authorize).
</Info>

You'll need:

* A **NetSuite account ID** (for example `1234567` or `1234567_SB1` for a sandbox).
* A NetSuite login with permission to install a SuiteBundle (for the Erstan app method) or to create an integration record (for your own setup).
* Your browser set to **allow popups** for Erstan — the connect flow opens a NetSuite sign-in popup and polls for completion.

<Warning>
  Erstan agents act in NetSuite using the role you sign in with. The connect dialog asks you to **choose a non-Administrator role** so agents inherit only the permissions that role allows. Avoid connecting with the Administrator role.
</Warning>

## Choose how to connect

Open **Connectors** from the sidebar, click **NetSuite**, then **Connect**. In the **Connect NetSuite** dialog, under **Choose how to connect**, pick a method.

<Frame caption="The Connect NetSuite dialog">
  <img src="https://mintcdn.com/erstan/VvzUuagDdyVkLVu5/images/netsuite-connect-dialog.png?fit=max&auto=format&n=VvzUuagDdyVkLVu5&q=85&s=9eb59860913bcbdf7452df00a52fc908" alt="The Connect NetSuite dialog showing the Erstan app and Your own setup methods, the bundle ID, and the NetSuite account ID field" width="2880" height="1800" data-path="images/netsuite-connect-dialog.png" />
</Frame>

<Tabs>
  <Tab title="Erstan app (recommended)">
    The **Erstan app** method installs a NetSuite SuiteBundle and registers the OAuth client for you automatically — you never copy a Client ID.

    <Steps>
      <Step title="Install the Erstan bundle">
        Copy the **Bundle ID `702722`** (Erstan NetSuite & MCP). In NetSuite, go to **Customization → SuiteBundler → Search & Install Bundles**, search for the bundle, and install it. This is a one-time step per NetSuite account.
      </Step>

      <Step title="Enter your NetSuite account ID">
        Back in Erstan, type your **NetSuite account ID** (for example `1234567` or `1234567_SB1`).
      </Step>

      <Step title="Sign in and approve">
        Click **Connect**. A NetSuite popup opens — sign in and approve access, choosing a **non-Administrator role**. Erstan polls until the connection reports **Connected** and shows "NetSuite connected successfully".
      </Step>
    </Steps>

    <Tip>
      This method uses Dynamic Client Registration behind the scenes, so there's nothing to paste. If nothing happens after clicking Connect, check that popups are allowed for Erstan.
    </Tip>
  </Tab>

  <Tab title="Your own setup">
    The **Your own setup** method uses an OAuth integration record you create in NetSuite, and you paste its **Client ID** into Erstan.

    <Steps>
      <Step title="Add the redirect URI">
        Copy the **redirect URI** shown in the dialog and add it to your NetSuite integration record.
      </Step>

      <Step title="Enter your NetSuite account ID">
        Type your **NetSuite account ID** (for example `1234567` or `1234567_SB1`).
      </Step>

      <Step title="Paste your Client ID">
        Paste the **Client ID** from your integration record. Without it, Erstan returns "Enter the OAuth Client ID from your NetSuite integration record".
      </Step>

      <Step title="Sign in and approve">
        Click **Connect** and complete sign-in and approval in the NetSuite popup, again choosing a non-Administrator role.
      </Step>
    </Steps>
  </Tab>
</Tabs>

<Note>
  Erstan also supports **Token-Based Authentication (TBA)** as a separate NetSuite connector, where you paste an Account ID, Client ID and Secret, and Token and Token Secret instead of doing OAuth. Most workspaces use the OAuth methods above.
</Note>

## Two-stage authorization

Connecting NetSuite establishes the **Workspace OAuth connection** — the shared configuration that stores the OAuth client. That's the owner/admin's part. It does not yet let any individual act in NetSuite.

Each member then authorizes their own NetSuite user, so agents call NetSuite **as that person**, governed by their own NetSuite role and permissions.

<Steps>
  <Step title="Owner or admin connects the workspace">
    Complete one of the methods above. The connector's **Setup** tab now shows a **Workspace OAuth connection** card marked Connected.
  </Step>

  <Step title="Each member authorizes their user">
    Every member opens the NetSuite connector's **Authorizations** tab (or responds to an **Authorization required** card in chat) and clicks **Authorize**. See [Authorizing your NetSuite user](/connectors/netsuite-authorize).
  </Step>
</Steps>

<Check>
  When both stages are done, the Setup tab shows the workspace connection as Connected and your personal status as **You authorized**. Agents can now read and act on your NetSuite data.
</Check>

## After connecting

Once NetSuite is connected, the connector detail page exposes tabs for ongoing management:

* **Setup** — connection status, **Test connection**, and configuration details.
* **Authorizations** — your own authorization plus, for owners and admins, the **Workspace members** roster.
* **Knowledge** — Erstan-managed NetSuite product updates agents can retrieve for release and feature questions.
* **Tools** — the NetSuite actions agents can run, each with a write policy of **Allow**, **Require approval**, or **Deny**.

<Warning>
  Write-capable NetSuite tools (creating or updating records) default to **Require approval**, so agents pause for you before any change. Manage these on the Tools tab — see [Managing NetSuite: tools & write policy](/connectors/netsuite-manage).
</Warning>

## Next steps

<CardGroup cols={2}>
  <Card title="Authorize your NetSuite user" icon="user-check" href="/connectors/netsuite-authorize">
    Each member authorizes their own NetSuite user and role.
  </Card>

  <Card title="Tools & write policy" icon="shield-check" href="/connectors/netsuite-manage">
    Control which NetSuite actions agents can run and which need approval.
  </Card>

  <Card title="Connection troubleshooting" icon="wrench" href="/connectors/troubleshooting">
    Fix expired auth, unhealthy connections, and re-authentication.
  </Card>

  <Card title="Security & write safety" icon="lock" href="/security/overview">
    How per-user authorization and approvals keep you in control.
  </Card>
</CardGroup>
