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

# NetSuite

Oracle NetSuite is a cloud-based ERP platform that manages financials, order management, inventory, CRM, and business operations. Connecting NetSuite to Duvo lets your Agents read and manage enterprise data directly through the NetSuite AI Connector MCP, eliminating manual navigation of NetSuite screens.

## Setup

<Warning>
  If you connected NetSuite before this setup flow was introduced, that connection never completed authorization and cannot read or write data. Delete the old connection and create a new one following the steps below.
</Warning>

<Steps>
  <Step title="Enable the required NetSuite features" icon="settings">
    In NetSuite, go to **Setup > Company > Enable Features > SuiteCloud** and turn on:

    <Check>**OAuth 2.0**</Check>
    <Check>**Server SuiteScript**</Check>
    <Check>**REST Web Services**</Check>

    These are account-level features required for the NetSuite AI Connector MCP, not OAuth scopes — you'll choose scopes separately when you create the Integration Record.

    Your NetSuite account ID is visible in your NetSuite URL (`https://<accountid>.app.netsuite.com`); you'll need it later when entering the MCP Server URL in Duvo.
  </Step>

  <Step title="Create a role for Duvo" icon="user-check">
    The NetSuite role you use to authorize the connection (in a later step) must not be Administrator — NetSuite blocks the OAuth authorization flow for that role. Create or reuse a role that has the AI Connector MCP permissions assigned, and assign it to the user who will complete the OAuth consent.

    <Warning>
      Do not use the Administrator role for this connection. NetSuite's AI Connector explicitly rejects Administrator-role sessions.
    </Warning>
  </Step>

  <Step title="Create an Integration Record" icon="key">
    Go to **Setup > Integration > Manage Integrations > New**.

    * Give the integration a name (for example, `Duvo`).
    * Under **Authentication**, enable **Authorization Code Grant (OAuth 2.0)**.
    * Under **OAuth 2.0 Scopes**, select only **NetSuite AI Connector Service**.
    * NetSuite requires the **Public Client** checkbox for the AI Connector MCP scope — check it. With **Public Client** checked, NetSuite does not issue a Client Secret; that's expected, since the Client Secret is optional in Duvo.
    * Add Duvo's redirect URI as an allowed redirect URI. You can find this URI in the Duvo connection form under **How to set up your OAuth app**.
    * Save the record. NetSuite displays the **Client ID** (and **Client Secret**, if you didn't check Public Client) once — copy them immediately.

    <Tip>
      Need help with the Integration Record? See [NetSuite Integration Records](https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/section_157771281.html) for creating and managing OAuth 2.0 Integration Records.
    </Tip>
  </Step>

  <Step title="Add the connection in Duvo" icon="plug">
    On the [Connections page](https://app.duvo.ai/integrations), open NetSuite and fill in these fields:

    <ParamField body="Connection name" type="string" required>
      A custom name to help you identify this connection (for example, `NetSuite Production`).
    </ParamField>

    <ParamField body="MCP Server URL" type="URL" required>
      Your NetSuite AI Connector MCP endpoint. See **MCP Server URL formats** below for the exact form to use.
    </ParamField>

    <ParamField body="OAuth Client ID" type="string" required>
      The Client ID shown when you saved the Integration Record in NetSuite.
    </ParamField>

    <ParamField body="Client Secret" type="string">
      The Client Secret shown when you saved the Integration Record in NetSuite. Only required for confidential-client Integration records — leave this blank for the standard Public Client setup above.
    </ParamField>

    Select **Continue to NetSuite**. You're redirected to NetSuite to sign in and approve access, then returned to Duvo with the connection active.
  </Step>
</Steps>

### MCP Server URL formats

Replace `<accountid>` with your NetSuite account ID:

* `https://<accountid>.suitetalk.api.netsuite.com/services/mcp/v1/all` — the account-wide endpoint, exposing the full NetSuite AI Connector MCP catalog.
* `https://<accountid>.suitetalk.api.netsuite.com/services/mcp/v1/suiteapp/<application-id>` — scopes the connection to a single SuiteApp.

Sandbox account IDs shown with an underscore (for example `1234567_sb1`) must use a hyphen in the hostname instead: `1234567-sb1.suitetalk.api.netsuite.com`.

### Reconnecting and troubleshooting

If NetSuite revokes or expires the connection's tokens, select **Reconnect** on the NetSuite connection card. Duvo reuses the stored Client ID and Client Secret from the Integration Record automatically — you don't need to re-enter them.

If an Agent's NetSuite tool calls fail, open the Integration Record in NetSuite and check its **MCP Execution Log** for the underlying OAuth or tool-call error.

<AccordionGroup>
  <Accordion title="Third-party documentation" icon="book">
    * [NetSuite AI Connector MCP](https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/chapter_1563541660.html) — Oracle's guide to enabling and configuring the AI Connector MCP service.
    * [NetSuite Integration Records](https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/section_157771281.html) — How to create and manage OAuth 2.0 Integration Records.
    * [NetSuite AI Connector connection URLs](https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/section_0714082142.html) — The `/services/mcp/v1/all` and per-SuiteApp URL formats.
    * [MCP Standard Tools](https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/article_0902023450.html) and [MCP Standard Tools SuiteApp](https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/article_143403258.html) — What the AI Connector exposes and how to install a scoped SuiteApp.
  </Accordion>
</AccordionGroup>

## Capabilities

* **Financial record management** — Read and manage accounts, general ledger entries, journal entries, and financial transactions.
* **Customer and vendor management** — Access customer and vendor records including contact details, payment terms, and transaction history.
* **Order and fulfillment tracking** — Retrieve sales orders, purchase orders, and fulfillment records across your operations.
* **Inventory visibility** — Look up inventory items, stock levels, and warehouse data.
* **Reporting and analytics** — Run saved searches and retrieve structured data for business reporting.

## Key Benefits

* **Direct ERP access** — Agents query NetSuite data in real time, so reports and workflows reflect current records without manual exports.
* **Broad operational coverage** — A single connection spans financials, CRM, inventory, and order management across your NetSuite environment.
* **Secure OAuth authentication** — Uses NetSuite's standard OAuth 2.0 Authorization Code flow. Duvo stores the Client ID and Client Secret you supply in encrypted form, using them only to complete authorization and to refresh or reconnect the connection later.
* **No NetSuite expertise required after setup** — Once connected, Agents translate natural-language requests into the correct NetSuite queries, so business users do not need to know NetSuite navigation paths.

## Works Well With

<CardGroup cols={3}>
  <Card title="Google Sheets" icon="https://mintcdn.com/duvo-d8027998/O3tlM6eCuFk2uJpN/images/connections/google-sheets.svg?fit=max&auto=format&n=O3tlM6eCuFk2uJpN&q=85&s=0ef8d55e05c34e7a4a618933bdf0ceb3" href="/user-guide/connections/available-connections/google-sheets" width="24" height="24" data-path="images/connections/google-sheets.svg">
    Pull NetSuite financial data, vendor lists, or order summaries into spreadsheets for analysis and reporting.
  </Card>

  <Card title="Microsoft Excel" icon="https://mintcdn.com/duvo-d8027998/O3tlM6eCuFk2uJpN/images/connections/excel.svg?fit=max&auto=format&n=O3tlM6eCuFk2uJpN&q=85&s=986599d60d09acee47293fda2b62df99" href="/user-guide/connections/available-connections/microsoft-excel" width="2290" height="2130" data-path="images/connections/excel.svg">
    Pull NetSuite financial data, vendor lists, or order summaries into spreadsheets for analysis and reporting.
  </Card>

  <Card title="Gmail" icon="https://mintcdn.com/duvo-d8027998/O3tlM6eCuFk2uJpN/images/connections/gmail.svg?fit=max&auto=format&n=O3tlM6eCuFk2uJpN&q=85&s=ad4e229283f3fe2f26c0f96a49f28e13" href="/user-guide/connections/available-connections/gmail" width="88" height="66" data-path="images/connections/gmail.svg">
    Retrieve NetSuite records and include them in automated notifications, approval emails, or customer follow-ups.
  </Card>

  <Card title="Microsoft Outlook" icon="https://mintcdn.com/duvo-d8027998/O3tlM6eCuFk2uJpN/images/connections/outlook.svg?fit=max&auto=format&n=O3tlM6eCuFk2uJpN&q=85&s=e29aeb65c8cffce1cd3c83b81289b71f" href="/user-guide/connections/available-connections/microsoft-outlook" width="1831" height="1703" data-path="images/connections/outlook.svg">
    Retrieve NetSuite records and include them in automated notifications, approval emails, or customer follow-ups.
  </Card>

  <Card title="Slack" icon="https://mintcdn.com/duvo-d8027998/O3tlM6eCuFk2uJpN/images/connections/slack.svg?fit=max&auto=format&n=O3tlM6eCuFk2uJpN&q=85&s=8a64bdd1af39e903923e4a273b4a4618" href="/user-guide/connections/available-connections/slack" width="512" height="512" data-path="images/connections/slack.svg">
    Post NetSuite order updates, financial alerts, or inventory changes to team channels automatically.
  </Card>

  <Card title="Microsoft Teams" icon="https://mintcdn.com/duvo-d8027998/O3tlM6eCuFk2uJpN/images/connections/teams.svg?fit=max&auto=format&n=O3tlM6eCuFk2uJpN&q=85&s=6402a90678b560d0b0a4fc3b02c0d3e0" href="/user-guide/connections/available-connections/microsoft-teams" width="2229" height="2073" data-path="images/connections/teams.svg">
    Post NetSuite order updates, financial alerts, or inventory changes to team channels automatically.
  </Card>
</CardGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.