Skip to main content

NetSuite

With NetSuite modules in Make, you can watch, search, create or update, retrieve, and delete records.

Note

To use the NetSuite app in Make, you must have the Make Enterprise plan. All Enterprise apps are currently labeled as premium tier 3 in Make.

To get started with NetSuite, create an account at NetSuite.com. The account setting up the integration must have admin or system administrator permissions.

The following steps are required before creating the connection in Make:

Enable token-based authentication

To enable token-based authentication and SOAP/REST webservice:

  1. Log in to your NetSuite account as an admin.

  2. Click Setup > Company > Enable Features.

    Netsuite-7.png
  3. Click SuiteCloud and select the following options:

    Section

    Options

    SuiteScript

    CLIENT SUITESCRIPT; SERVER SUITESCRIPT

    SuiteTalk (Web Services)

    SOAP WEB SERVICES

    REST WEB SERVICES

    Manage Authentication

    SUITESIGNON; TOKEN-BASED AUTHENTICATION

  4. Click Save.

Create Consumer Key and Consumer Secret Credentials

You must create a new integration in NetSuite to generate a consumer key and consumer secret values.

  1. Navigate to Setup > Integration > Manage Integrations > New.

    NetSuite_3.png
  2. Enter a Name for the integration, select Enabled in the State field, select Token-based Authentication and TBA: authorization flow, and paste the following in the Callback URL field https://www.integromat.com/oauth/cb/netsuite.

  3. Click Save.

  4. Copy the Consumer Key and Consumer Field and save them in a safe place.

    NetSuite_5.png

You now have the consumer credentials to connect to Make.

Create and Assign Roles

An admin must create roles and assign them to the users or employees to access the integration details.

  1. To access the roles page, search for Page:roles.

  2. Click Edit next to Manage Roles.

    Netsuite_9.png
  3. Click New Role.

  4. Enter the details as provided in the table and click Save. This creates a new role.

    Name

    Enter a name for the role.

    Subsidiary Restrictions

    Select All.

    Permissions

    In the Setup tab, add the following mandatory permissions:

    • Custom Body Fields - full access

    • Custom Entry Fields - full access

    • Custom Fields - full access

    • Custom Item Fields - full access

    • Custom Lists - full access

    • Custom Record Types - full access

    • Custom Segment - full access

    • Log in using Access Tokens - full access

    • Records Catalog - full access

    • REST Web Services - full access

    • Set Up Company - view access

    • SOAP Web Services - full access

    • User Access Tokens - full access

    In the Lists tab, add the following mandatory permissions:

    • Custom Record Entries - full access

    • Item Collection - full access

    • Items - full access

    In the Reports tab, add the following mandatory permissions:

    • SuiteAnalytics Workbook - full access

    In the Transactions tab, add the following mandatory permissions:

    • Find Transactions - full access

    • Other required permissions for your desired transaction type.

  5. Search for Page:Employees to assign the role to a user.

    Netsuite-10.png
  6. To assign the role to existing employees: Click Edit next to Employees and select the employee to assign the role to.

    To assign the role to a new employee: Click Edit next to New Employees to create a new employee. Add the employee details.

  7. Click Access > Roles, add the new role you have created, and click Save.

    Screenshot_2023-01-23_at_6_57_54_PM.png

You have successfully created and assigned the roles to access the integration details.

Connect NetSuite to Make

All users can create a connection, while only admin can obtain the Consumer Key and Secret values and assign roles.

  1. Log in to your Make account, add a NetSuite module, and click Add next to the Connection field.

  2. Optional: In the Connection name field, enter a name for the connection.

  3. In the Consumer Key and Consumer Secret fields, enter the credentials that you generated in NetSuite and click Save.

  4. Grant access to Make by clicking Allow in the prompt.

You have successfully established the connection. You can now edit your scenario and add more NetSuite modules. If your connection requires reauthorization at any point, follow the connection renewal steps here.

Standard Record

You can watch, search, create or update, retrieve, and delete records using the following modules.

Note

Some entity fields describing a record type are displayed with their internal API names instead of their NetSuite labels. For example, in Account record types where the entity field is called Parent, the internal ID label refers to Subaccount of. For more information, refer to NetSuite SOAP API documentation.

Triggers when a record is created or updated.

Connection

Establish a connection to your NetSuite account.

Search Record Type

Select or map the record type of the records you want to watch.

Entity Custom Fields

Select the custom fields to be listed for mapping. If you want to list all the fields then you can leave this empty.

Limit

Set the maximum number of records Make will return during one execution cycle. The default value is 2.

Retrieves a list of records filtered by a query.

Connection

Establish a connection to your NetSuite account.

Search Record Type

Select the record type and add filters to search the record.

Limit

Set the maximum number of records Make will return during one execution cycle. The default value is 10.

Entity Custom Fields

Select the fields to be listed for mapping or leave the field blank to list records for all the available entity custom fields.

Creates or updates an existing record by its ID.

Connection

Establish a connection to your NetSuite account.

Action

Select the action you want to perform. For example, create a record and get an internal ID.

Record Type

Select the record type and enter the details of the record you want to create.

Entity Custom Fields

Select the custom fields you want to add to this record. Once you select the custom field, an option to enter or map a value will be provided.

Retrieves the details of an existing record by its ID.

Connection

Establish a connection to your NetSuite account.

Record Type

Select or map the record type of the details you want to retrieve.

Internal ID

Enter the Internal ID of the record whose details you want to retrieve.

Ensure that in the Preference section, you have selected the Show Internal ID checkbox to display the Internal ID column in the records page.

Internal_ID.png

External ID

Enter the External ID of the record whose details you want to retrieve.

Entity Custom Fields

Select the fields to be listed for mapping or leave this field blank to list all available entity custom fields.

Removes a record by its type and ID.

Connection

Establish a connection to your NetSuite account.

Record Type

Select or map the record type of the record you want to delete.

Internal ID

Enter the Internal ID of the record you want to delete.

Ensure that in the Preference section, you have selected the Show Internal ID checkbox to display the Internal ID column in the records page.

Internal_ID.png

External ID

Enter the External ID of the record you want to delete.

Reason Code ID

Enter the Reason Code ID applicable to the record you want to delete. You can find the ID at NetSuite Setup > Accounting > Accounting Lists and filter by Transaction Deletion Reason to get the reason ID.

Reason Memo

Enter a memo with the reason to delete the record.

Custom Record

You can search, create, retrieve, update, and delete custom records using the following modules.

Retrieves a list of custom records filtered by a query.

Connection

Establish a connection to your NetSuite account.

Custom Record Type

Select the custom record type and add filters to search for the custom records.

Limit

Set the maximum number of records Make will work with during one execution cycle. It must be a number between 1 and 3200. The default value is 10.

Offset

Enter the number of results to be skipped, it must be divisible by the page limit 100. Use this field with a repeater module only if you want to get more than 3200 results.

Creates a new custom record.

Connection

Establish a connection to your NetSuite account.

Custom Record Type

Select the custom record type and enter details for the record you want to create.

Retrieves the details of the custom record by its ID.

Connection

Establish a connection to your NetSuite account.

Custom Record Type

Select the custom record type of the details you want to retrieve.

ID

Enter either the internal or external ID of the custom record you want to retrieve details for. If using an external ID, add the prefix eid:. For example, eid:make-123.

To use internal IDs, ensure that in the Preference section you have selected the Show Internal ID checkbox to display the Internal ID column in the records page.

Internal_ID.png

Updates a custom record by its ID.

Connection

Establish a connection to your NetSuite account.

Custom Record Type

Select the custom record type of the record you want to update and enter the details you want to update.

ID

Enter either the internal or external ID of the custom record you want to update. If using an external ID, add the prefix eid:. For example, eid:make-123.

To use internal IDs, ensure that in the Preference section you have selected the Show Internal ID checkbox to display the Internal ID column in the records page.

Internal_ID.png

Deletes a custom record by its ID.

Connection

Establish a connection to your NetSuite account.

Custom Record Type

Select the custom record type of the record you want to delete.

ID

Enter either the internal or external ID of the custom record you want to delete. If using an external ID, add the prefix eid:. For example, eid:make-123.

To use internal IDs, ensure that in the Preference section you have selected the Show Internal ID checkbox to display the Internal ID column in the records page.

Internal_ID.png

Other

Performs an arbitrary authorized API call.

Connection

Establish a connection to your NetSuite account.

Action

Select or map an action for the call. For example, Delete List.

Body

Enter the body content for your API call. For example, <platformMsgs:getAll><platformCore:record recordType="currency" /></platformMsgs:getAll> 

Header

Enter the desired request headers. You don't have to add authorization headers; we've already added those for you.

SOAP Verison

A valid SOAP version to apply for the call. For example, NetSuitePort_2022_1.

For more information, see the NetSuite SOAP API Documentation.

Example of Use - Get All Messages

The following API call returns all the messages from your NetSuite account:

Action: Get All

Body: <platformMsgs:getAll><platformCore:record recordType="currency" /></platformMsgs:getAll

NetSuite-14.png

Matches of the search can be found in the module's Output under Bundle. In our example, 5 messages were returned:

NetSuite-17.png

Performs an arbitrary authorized REST API call.

Note

The Beta endpoints are available only if you are enrolled and have joined the Oracle NetSuite Beta programs.

netsuite-19.png

Connection

Establish a connection to your NetSuite account.

URL

Enter a path relative to https://{accountId}.suitetalk.api.netsuite.com/services/rest. For example, /record/v1/customer.

Method

Select the HTTP method you want to use:

GET to retrieve information for an entry.

POST to create a new entry.

PUT to update/replace an existing entry.

PATCH to make a partial entry update.

DELETE to delete an entry.

OPTIONS to identify allowed request methods.

Headers

You don't have to add authorization headers and content type as they are already added for you.

Query String

Enter the request query string.

Body

Enter the body content for your API call. It must be a valid JSON string.

For more information, see the NetSuite REST API documentation.

Example of Use - Get All Customers

The following API call returns all customers from your NetSuite account:

URL: /record/v1/customer

Method: GET

Netsuite_REST_API_Call_entry.png

Search results can be found in the module's Output under Bundle. In our example, 313 customers were returned.

NetSuite_REST_API_Call_results.png

Executes a SuiteQL query.

Connection

Establish a connection to your NetSuite account.

Query

For more information on building a query, visit the NetSuite documentation.

Limit

The maximum number of results to be worked with during one execution cycle. The number must be between 1 and 3200.

Offset

The number of results to be skipped, it must be divisible by the page limit 100. Use this field with a repeater module only if you want to get more than 3200 results.

For more information, see the NetSuite SuiteQL documentation.

Example of Use - Customer Information

The following SuiteQL Query returns information for three customers from your NetSuite account.

Query: SELECT * FROM customer

Limit: 3

NetSuite_Query_1.png

Results can be found in the module's Output under Bundle. In our example, 3 customers and their information were returned.

NetSuite_Query_2_updated.png