Covered in this article
Related pages
Latest Changelog
Version 2.2.0 ()
NetSuite component

NetSuite component

A component which interacts with the NetSuite ERP system.

How works

Communication with NetSuite API established using NetSuite’s native SDK. 2017.2 NetSuite version is used and supported. The component will work with other NS versions in most cases. But 100% compatibility could not be guaranteed.

Requirements

API version

2019.1 NetSuite version is used and supported. The component will work with other NS versions in most cases. But 100% compatibility could not be guaranteed.

Environment variables

Component reuquires 1024 MB of RAM memory to properly function. It is recommended to increase the RAM memory prior any activity. Contact Support for more.

Enable web-service communication

NetSuite’s Web Services SOAP interface allows you to communicate with the ERP and to integrate external systems with it. NetSuite’s native SDK, which is used for the communication in the component, uses NetSuite’s SOAP Web Services under the hood.

By default web service communication is disabled in NetSuite. So it should be enabled in order to allow component make calls. To enable Web Service communication:

  1. Go to Setup -> Company -> Enable Features
  2. Open SuiteCloud tab and tick there the ‘Web Services’ checkbox in the SuitTalk section
  3. Press Save

Enable Web Service

Technical Notes

The technical notes page gives some technical details about NetSuite component like changelog.

Authentication on platform

In order to use the functions of the NetSuite component, you need to go through the authentication process. Please follow the step by steps instruction on this page.

Triggers

NetSuite component includes the following triggers:

  1. Get New and Updated Objects Polling
    Generic trigger that polls NetSuite instance for new and/or updated objects (of any type available in the NetSuite).

  2. Polling objects
    Find an object or a set of objects was updated since last polling of time.

The following NetSuite triggers are deprecated:

  1. Search Entity(deprecated)
    Deprecated. Use Get New and Updated Objects Polling trigger instead. Find an object or a set of objects using filter criteria (field, operator, value).

Actions

NetSuite component includes the following actions:

  1. Delete Object By Id
    Deletes an object by the ID provided.

  2. Lookup Object By Id
    Lookup an object by the ID provided.

  3. Lookup Objects
    Looks for objects available in NetSuite which meet given criteria.

  4. Upsert Object By Id
    Either update an object in NetSuite by an ID provided or inserts as a new object if it does not exist.

The following Salesforce actions are deprecated:

  1. Lookup Customer(deprecated)
    Deprecated. Use Lookup Object By Id action instead. This action enables to find the customer by provided ID.

  2. Lookup Invoice(deprecated)
    Deprecated. Use Lookup Object By Id action instead. This action can be used to find invoices by provided ID.

  3. Upsert Customer(deprecated)
    Deprecated. Use Lookup Object By Id action instead. Create new or update existing customer by provided external ID.

  4. Upsert Contact(deprecated)
    Deprecated. Use Upsert Object By Id action instead. Create new or update existing contact by provided external ID.

  5. Upsert Invoice(deprecated)
    Deprecated. Use Upsert Object By Id action instead. Create new or update existing invoice by provided external ID.

  6. Upsert Sales Order(deprecated)
    Deprecated. Use Upsert Object By Id action instead. Create new or update existing sales order by provided external ID.

  7. Upsert Vendor(deprecated)
    Deprecated. Use Upsert Object By Id action instead. Create new or update existing vendor by provided external ID.

Upsert custom fields

Currently, You can upsert custom fields only from developer mode. You should to use property type, which can accept next values:

  • BooleanCustomFieldRef
  • DateCustomFieldRef
  • DoubleCustomFieldRef
  • LongCustomFieldRef
  • MultiSelectCustomFieldRef
  • SelectCustomFieldRef
  • StringCustomFieldRef

You can find example of custom field structures bellow.

  • BooleanCustomFieldRef
{
  "internalId": "1",
  "scriptId": "script1",
  "value": true,
  "type": "BooleanCustomFieldRef"
}
  • DateCustomFieldRef
{
  "internalId": "1",
  "scriptId": "script1",
  "value": "2018-01-01T00:00:00.000+00:00",
  "type": "DateCustomFieldRef"
}
  • DoubleCustomFieldRef
{
  "internalId": "1",
  "scriptId": "script1",
  "value": 3456.24,
  "type": "DoubleCustomFieldRef"
}
  • LongCustomFieldRef
{
  "internalId": "1",
  "scriptId": "script1",
  "value": 987979999,
  "type": "LongCustomFieldRef"
}
  • MultiSelectCustomFieldRef
{
  "internalId": "1",
  "scriptId": "script1",
  "value": [
      {
      "name":"item1",
      "internalId":"2134",
      "externalId":"9878",
      "typeId":"21"
      },
      {
        "name":"item2",
        "internalId":"2135",
        "externalId":"9879",
        "typeId":"21"
      }
  ],
  "type": "MultiSelectCustomFieldRef"
}
  • SelectCustomFieldRef
{
  "internalId": "1",
  "scriptId": "script1",
  "value": {
      "name":"item1",
      "internalId":"2134",
      "externalId":"9878",
      "typeId":"21"
      },
  "type": "SelectCustomFieldRef"
}
  • StringCustomFieldRef
{
  "internalId": "1",
  "scriptId": "script1",
  "value": "some value",
  "type": "StringCustomFieldRef"
}

NetSuite API docs.

Get your free 14-day elastic.io trial account to use this component.