You are here:
NetSuite Connector
Connect to an external NetSuite account. Perform tasks like syncing contacts or creating invoices. Use NetSuite as a data source (trigger) or a data target (action).
Required Editions
| View supported editions. |
| This feature requires the MuleSoft for Flow: Integration add-on. Professional Edition requires the API access add-on. To purchase, contact your Salesforce account executive. |
| MuleSoft for Flow: Integration features used with Agentforce require the Foundations or Agentforce 1 edition. To purchase these editions, contact your Salesforce account executive. |
Before You Begin
The NetSuite API doesn't return lists of required fields, so the user interface doesn't mark these fields as required.
Connections
Standard Connection
When connecting to NetSuite in a flow:
- In NetSuite:
- Go to Setup > Integration Management > Manage Integration > Authentication to make sure that you turn on token-based authentication. Make sure the role used in the integration isn't using two-factor authentication by going to Setup > User/Roles > Two-Factor Authentication Roles.
- Make sure that you have all the required permissions in NetSuite to consume REST APIs. To assign these permissions, follow the steps in Standard Roles with the REST Web Services, SuiteAnalytics Workbook, and Log in Using Access Tokens Permissions. Access to the NetSuite app and data is based on user roles and permissions. For more information about users, roles, and permissions, see the NetSuite documentation.
- Testing a NetSuite connection calls the base metadata endpoint for the InventoryItem object, so you need permission to access this object.
- In Salesforce:
- From Setup, in the Quick Find box, enter Remote Site Settings to make sure that NetSuite has remote site settings. Click New Remote Site and enter your organization's base NetSuite URL.
To connect to a data source or target, create a connection with the system's required credentials. You can connect to multiple systems within a flow and reuse each connection.
You can create connections in the Integrations tab or in Flow Builder.
This system uses Custom (Token-Based) authentication.
Token-based authentication uses an encrypted access token. The external system generates the TokenId and TokenSecret, unique to each user and integration, to connect to Flow Builder.
This system requires this credential information for its connections.
| FIELD | DESCRIPTION |
|---|---|
| Connection Name | Enter a unique connection name that helps you remember the details of this connection. After you create the connection, the system hides the credentials. You can reuse connections. Anyone with the Manage Integration Connections permission can see and use all connections in the org. Connect to NetSuite as a regular user (WSU), not a concurrent user (cWSU). |
| Account | Enter the account ID of your NetSuite instance. To find this value in NetSuite, click Setup >
Integration > SOAP Web Services Preferences.
For example: |
| ClientId | Enter the client ID generated in NetSuite. This value appears only when you create the integration. To generate a new client ID, in NetSuite, click Setup > Integrations > Manage Integrations > New to create an integration with token-based authentication enabled. Then, enter the generated client data in the ClientId field. |
| ClientSecret | Enter the client secret generated in NetSuite. This value appears only when you create the integration. To generate a new client secret, in NetSuite, click Setup > Integrations > Manage Integrations > New to create an integration with token-based authentication enabled. Then, enter the generated client data in the ClientSecret field. |
| TokenId | Enter the token ID generated in NetSuite. This value appears only when you create an access token for a user. To generate a new token ID, in NetSuite, click Setup > Users/Roles > Access Tokens > New. Select the app, user, and role with REST API permissions, and then save the record. Enter the generated token data in the TokenID field. |
| TokenSecret | Enter the token secret generated in NetSuite. This value appears only when you create an access token for a user. To generate a new token secret, in NetSuite, click Setup > Users/Roles > Access Tokens > New. Select the app, user, and role with REST API permissions, and then save the record. Enter the generated token data in the TokenSecret field. |
| URL | Enter the URL of your NetSuite instance. Create your URL by appending |
Named Credential Connection
Select a pre-existing named credential from Setup to use for your external system connections.
Before connecting to your external system with a named credential, first create or use an existing authenticated named credential and external credential that is enabled for your users.
To ensure a successful connection for use in a flow, use only one principal for each named credential.
- Use the same name for the named credential and its related objects, such as the external credential and external authentication identity providers. Labels for these objects can differ.
- Assign the user creating the connection the required user permission for the principal. Without this permission, the connection test fails and the connection remains inactive.
When you create a connection with an existing named credential, note these behaviors:
- Manage the named credential’s read-only details in Setup, not the Integrations tab. On the Integrations tab, you can only edit the connection's Connection Name and Description.
- Perform reconnections for the named credential in Setup. The Reconnect button isn’t visible on the Details page.
- Delete associated named credentials in Setup. Deleting a connection doesn't remove the credential.
Triggers
A trigger initiates the flow when a specified event occurs. Triggers are important for automating business processes because they react to real-time data changes in various systems. For more information about triggers, refer to Create a Flow with a Connector as a Trigger.
These NetSuite triggers are available in Flow Builder.
- On New Or Updated Record Trigger
- On New Record Trigger
These NetSuite objects are available for these NetSuite triggers.
- AssemblyItem
- CashRefund
- CashSale
- Contact
- CreditMemo
- Customer
NoteThe Customer object doesn't support the taxItem, taxSchedule, projectTemplate, and projectTemplateId fields.
- CustomerDeposit
- CustomerPayment
- CustomerRefund
- Employee
- Estimate
- GiftCertificateItem
- InventoryAdjustment
- InventoryItem
- Invoice
- ItemFulfillment
- ItemGroup
- ItemReceipt
- Job
- JournalEntry
- KitItem
- NonInventoryPurchaseItem
- NonInventoryResaleItem
- NonInventorySaleItem
- Opportunity
- OtherChargePurchaseItem
- OtherChargeResaleItem
- OtherChargeSaleItem
- Partner
- PaymentItem
- PhoneCall
- PurchaseOrder
- ReturnAuthorization
- SalesOrder
- ServicePurchaseItem
- ServiceResaleItem
- ServiceSaleItem
- TransferOrder
- Vendor
- VendorBill
Actions
An action performs a specific task or operation within a target system. Use actions to automate tasks across different systems without manual intervention, based on conditions set in the flow. For more information about actions, refer to Create a Flow with a Connector as an Action.
These NetSuite actions are available in Flow Builder.
- Create Record
- Delete Record
- Get Record
- Get Records
- Update Record
- Upsert Record
Get Records Action
Query searchable objects from each connector by using custom filter logic in the MuleSoft for Flow: Integration Get Records action, which functions like the Salesforce Flow's Get Records element.
The MuleSoft for Flow: Integration Get Records action:
- Defines queried object to ensure flexibility and adaptability across different data sources.
- Specifies available operators and enables the selection of fields, addition of conditions, and sorting of results.
- Defines the logical operator types.
- Includes other metadata to describe the operators available for each field when the available operators differ based on the object type.
- Runs the query request, processes the response, and formats the retrieved data accurately.
- Provides sorting options with custom logic and flexible record output.
- Limits the number of records returned to optimize performance and makes sure that you have access to the most relevant data.
These NetSuite objects are available for these NetSuite actions.
- AssemblyItem
- BillingSchedule
- CashRefund
- CashSale
- Classification
- Contact
- CreditMemo
- Currency
- Customer
- CustomerDeposit
- CustomerPayment
- CustomerRefund
- Department
- Employee
- Estimate
- GiftCertificateItem
- InventoryAdjustment
- InventoryItem
- Invoice
- ItemFulfillment
- ItemGroup
- ItemReceipt
- Job
- JournalEntry
- KitItem
- Location
- NonInventoryPurchaseItem
- NonInventoryResaleItem
- NonInventorySaleItem
- Opportunity
- OtherChargePurchaseItem
- OtherChargeResaleItem
- OtherChargeSaleItem
- Partner
- PaymentItem
- PhoneCall
- PriceLevel
- PurchaseOrder
- ReturnAuthorization
- SalesOrder
- ServicePurchaseItem
- ServiceResaleItem
- ServiceSaleItem
- Subsidiary
- TimeBill
- TransferOrder
- Vendor
- VendorBill
- Custom objects
For information about specific limitations for connections and third-party connectors, see MuleSoft for Flow: Integration Limits & Considerations.

