# NetSuite

Automate operations of NetSuite resources.

---

NetSuite is a cloud-based enterprise resource planning (ERP) software suite that provides a comprehensive set of tools for managing financial, operational, and customer relationship data. It offers a range of modules, including accounting, inventory management, order processing, and customer relationship management (CRM).

The NetSuite integration must be configured before using this node. See [NetSuite Integration](/integrations/netsuite) for more details.

## Customer Operations

These operations are based on the [NetSuite REST API for Customer](https://system.netsuite.com/help/helpcenter/en_US/APIs/REST_API_Browser/record/v1/2024.2/index.html#tag-customer).

### Create

Creates a new customer record in NetSuite.

#### Fields

- **Customer Name**: The name of the customer, it must be unique. Required.
- **Company Name**: The company name of the customer.
- **Email**: The email of the customer.
- **Subsidiary ID**: The subsidiary to create the customer in. Required.

#### Custom fields

Custom fields are defined in NetSuite console, suger will filter custom fields from the customer schema and show them in the select list.

### Update

Updates a customer record in NetSuite.

#### Supported Fields

- **Customer Name**
- **Company Name**
- **Email**
- **Subsidiary ID**

### Get

Retrieves a customer record from NetSuite.
It will return the customer record with all the fields, including custom fields.

### List

Lists customer records from NetSuite.
It will return the customer records with all the fields, including custom fields.

#### Parameters

- **Query**: The search query to filter the records. Read more about the query syntax [here](https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/section_1545222128.html).
  <img src="/img/workflow/netsuite/customer-list-query.png" alt="Search query field for listing NetSuite customer records" style="max-width:880px;width:100%;display:inline;margin:0 auto;box-shadow:5px 5px 5px #eee" />

- **Limit**: The maximum number of records to return.
- **Offset**: The number of records to skip.

## Non-Inventory Sale Item Operations

These operations are based on the [NetSuite REST API for onInventorySaleItem](https://system.netsuite.com/help/helpcenter/en_US/APIs/REST_API_Browser/record/v1/2024.2/index.html#tag-nonInventorySaleItem).

### Create

Creates a new non-inventory sale item record in NetSuite.

#### Fields

- **Item Name/Number**: The name of the item. Required.

#### Additional Fields

- **Display Name**: The display name of the non-inventory sale item.

### Update

Updates a non-inventory sale item record in NetSuite.

#### Supported Fields

- **Item Name/Number**
- **Display Name**

### Get

Retrieves a non-inventory sale item record from NetSuite.
It will return the non-inventory sale item record with all the fields.

### List

Lists non-inventory sale item records from NetSuite.

## Sales Order Operations

These operations are based on the [NetSuite REST API for SalesOrder](https://system.netsuite.com/help/helpcenter/en_US/APIs/REST_API_Browser/record/v1/2024.2/index.html#tag-salesOrder).

### Create

Creates a new sales order record in NetSuite.

#### Fields

- **Customer ID**: The ID of the customer. Required.
- **Subsidiary ID**: The subsidiary to create the sales order in. Required.
- **Custom Form ID**: Internal identifier defined in NetSuite.
- **Sales Effective Date**
- **Start Date**
- **End Date**
- **Sale Items**: Items in the sales order. An item consists of item ID, quantity, rate, description and custom fields.

#### Custom Fields

Custom fields are defined in NetSuite console, suger will filter custom fields from the sales order schema and show them in the select list.

### Update

Updates a sales order record in NetSuite.

#### Supported Fields

- **Customer ID**
- **Sale Items**

### Get

Retrieves a sales order record from NetSuite.
It will return the sales order record with all the fields.

### List

Lists sales order records from NetSuite.
