NetSuite Updates are are taking too long

Hello All,

For one of our NetSuite integration the Updates are taking too long to be completed and often resulting in a timeout error. We are updating saleorder line item custom field for some internal logic. The NetSuite has been upgraded to SuiteCloud plus but still there is no improvement. When we retry the errors individually it succeds but after taking too long to process one request some time take an hour to process.

I have attached few screengrabs represent the IO dashboard and NetSuite Current configuration along with that i'm attaching NetSuite request that we are making via celigo.



{
  "method": "POST",
  "uri": "https://11040785.restlets.api.netsuite.com/app/site/hosting/restlet.nl",
  "qs": {
    "script": "customscript_celigo_io_restlet_runner",
    "deploy": "customdeploy_celigo_io_restlet_runner"
  },
  "json": {
    "flowId": "676e54f5ff9f940f72361dce",
    "_importId": "676e54f5ff9f940f72361dce",
    "settings": {
      "import": {}
    },
    "import_da": null,
    "_connectionId": "671b7a4c0b8239a3c64da465",
    "_flowId": "676e54f6ff9f940f72361e16",
    "_integrationId": "676e5466b41265c4186d2100",
    "import": {
      "internalIdLookup": {
        "expression": "[\"internalid\",\"is\",\"{{{id}}}\"]"
      },
      "mapping": {
        "fields": [
          {
            "generate": "internalid",
            "lookupName": "idLookup-update-id-1743156972272"
          }
        ],
        "lists": [
          {
            "generate": "item",
            "fields": [
              {
                "extract": "items[*].NSLineID",
                "generate": "line",
                "internalId": false,
                "isKey": true,
                "discardIfEmpty": false
              },
              {
                "extract": "items[*].fishbowlquantity",
                "generate": "custcol_quantitysenttofishbowl",
                "internalId": false
              },
              {
                "generate": "_keys",
                "hardCodedValue": [
                  "line"
                ]
              }
            ]
          }
        ],
        "lookups": [
          {
            "name": "idLookup-update-id-1743156972272",
            "recordType": "salesorder",
            "resultField": "internalid",
            "allowFailures": false,
            "expression": "[\"internalid\",\"is\",\"{{{id}}}\"]",
            "_isOperationalMapping": true,
            "_importOperation": "update"
          }
        ]
      },
      "restletVersion": "suiteapp2.0",
      "recordType": "salesorder",
      "operation": "update",
      "lookups": [
        {
          "name": "idLookup-update-id-1743156972272",
          "recordType": "salesorder",
          "resultField": "internalid",
          "allowFailures": false,
          "expression": "[\"internalid\",\"is\",\"{{{id}}}\"]",
          "_isOperationalMapping": true,
          "_importOperation": "update"
        }
      ],
      "batchSize": 2,
      "ignoreExisting": false,
      "ignoreMissing": false
    },
    "captureReqAndResData": true,
    "data": [
      {
        "internalid": 125915,
        "item": [
          {
            "line": "767",
            "custcol_quantitysenttofishbowl": 3,
            "_keys": [
              "line"
            ]
          }
        ]
      }
    ],
    "preMapData": [
      {
        "id": "125915",
        "items": [
          {
            "NSLineID": "767",
            "fishbowlquantity": 3
          }
        ]
      }
    ],
    "operationalLookups": [
      {
        "name": "idLookup-update-id-1743156972272",
        "recordType": "salesorder",
        "resultField": "internalid",
        "allowFailures": false,
        "expression": [
          "internalid",
          "is",
          "125915"
        ],
        "_isOperationalMapping": true,
        "_importOperation": "update",
        "recordIndex": 0,
        "_lookupId": 1
      }
    ],
    "errors": [
      []
    ]
  }
}

Hi Yash,

A few questions for you.

How many other flows do you have scheduled at or around the same time as this one, making calls to netsuite?

I see your NS concurrency limit for that integration, but what is your concurrency setting in the NS connection? Have you looked in NS to see what else is calling and might be the culprit of the time out? This is directions for how to check in NS: NetSuite Applications Suite - Concurrency Monitor Overview

Hi Michael,

Thank you for your response!

To answer your question, there are no other Celigo flows running in parallel with this one. The concurrency limit under the integration connection is currently set to 10.

What’s puzzling is the inconsistency — sometimes the record retry happens within a minute, and other times it takes over an hour. I’ve attached a couple of screenshots showing this behavior, along with an additional screenshot of the concurrency monitor that I captured while manually retrying the error.
there are currently 9 scripts and 10 workflows active on the SaleOrder Transaction. I suspect one of these could be causing the issue.




Have you tried disabling those workflows and scripts to see if you have the same issue? I would point your flow to Sandbox and then remove these until you find the issue.

Thankyou for the response Tyler! We are testing this out at the moment.

We disabled the scripts in the NetSuite Sandbox and ran the flow—the processing time was ideal. We’ve flagged this to the NetSuite team to investigate which script(s) may not be executing correctly across all scenarios. Additionally, a performance monitor is currently being conducted on the NetSuite side.

2 Likes