Limitations and Workarounds

1. Concurrency Limits and Their Impact on Large Accounts
NetSuite enforces strict concurrency limits, which can significantly impact the processing time for large datasets. For example, if your concurrency limit is set to 1, a single request might take up to 15 minutes to process. This means that retrieving 9,000 pages from one endpoint would take several days to complete, in this case 93 days.

Workarounds:

  • Selective Data Retrieval: Utilize the Accounting Data as a Service dashboard to specify and filter the exact data types and number of years you need. By narrowing down the dataset, you can reduce the overall time and effort required for data processing.
  • Increase Concurrency Limits: Encourage your business to request an increased concurrency limit in NetSuite and update in the Accounting Data as a Service connect flow. This will enable simultaneous processing of multiple requests, significantly improving data retrieval times.

2. Default Bundle Permissions and Customization Requirements
Accounting Data as a Service's integration comes with a predefined set of permissions tailored to the data sets typically pulled and the configurations of our standard NetSuite instance. However, NetSuite enforces permissions based on subsidiary configurations, which may vary based on your businesses specific setup.

If your business has additional configurations or permissions tied to subsidiaries, these will not automatically align with Accounting Data as a Service’s default bundle permissions. NetSuite requires that your organization manually configure these additional permissions.

Workarounds:

  • Custom Bundle Creation: Create a custom version of the Accounting Data as a Service bundle and add the required permissions specific to your subsidiaries or business setup.
  • NetSuite Support: For complex configurations, seek assistance from NetSuite support to ensure proper permissions alignment with your unique use case.

Each use case is unique, and additional configurations or troubleshooting may be necessary to achieve optimal integration.

3. Push Invoice Payments endpoint returns "Unable to find a matching line for sublist apply with key" error in Netsuite?

The Push Endpoint will return this error if the invoice payment is being made to an invoice that has already been paid.

4. Why don't I have permission to set a value for an element in Netsuite?

Netsuite displays the message of insufficient permissions for setting the value of a field for one of the following reasons:

  • The field is read-only
  • An associated feature is disabled
  • The field is available either when a record is created or updated, but not in both cases
  • The business didn’t set the correct permissions for the token-based authenticator role
  • Netsuite business validations. E.g. url for vendor or customer can only be set if isPerson is false
  • The business has not set up the preferred form for the data object to accept a particular field (e.g. memo for invoice)

5. Push Invoices endpoint sometimes results in a “price level” - which looks like a line-level discount in Netsuite?

If a PUSH request is made with a unitPrice that does not match Netsuite Database, it seems to log a “price level” to try and rectify the fact that the numbers do not match. Even if this price level does not accurately reflect the discounted amount.