NetSuite – Gotchas
NetSuite is the leading integrated cloud business software suite, including business accounting, ERP, CRM and ecommerce software.
29 gotchas across 17 resources
These are connector-specific behaviors and limitations to be aware of when integrating.
Balance Sheet1 gotcha
balanceSheetOneNetSuite date filtering resolves `filter[end_date]` to accounting period IDs via SuiteQL, then filters the SOAP request by periods up to that date. This requires the SuiteAnalytics Workbook permission for period resolution. If unavailable, returns all-time data as fallback. For Balance Sheet, only `filter[end_date]` is meaningful (point-in-time snapshot).
Bill Payments3 gotchas
billPaymentsAllIn order to read or write the `status` field, you must enable Approval Routing for Vendor Payments in Netsuite. Navigate to Setup > Accounting Preferences > Approval Routing > Vendor Payments > Approval Routing.
billPaymentsAddIn order to read or write the `status` field, you must enable Approval Routing for Vendor Payments in Netsuite. Navigate to Setup > Accounting Preferences > Approval Routing > Vendor Payments > Approval Routing.
billPaymentsOneIn order to read or write the `status` field, you must enable Approval Routing for Vendor Payments in Netsuite. Navigate to Setup > Accounting Preferences > Approval Routing > Vendor Payments > Approval Routing.
Bills2 gotchas
billsAllThe minimun page size accepted for Netsuite is 5. The cursor for Netsuite expires if they have not been used within 15 minutes after its creation.
billsAddFor creating or updating a bill in Netsuite, its required to provide the line type.
Credit Notes4 gotchas
creditNotesAllThe minimun page size accepted for Netsuite is 5. The cursor for Netsuite expires if they have not been used within 15 minutes after its creation.
creditNotesAddNetsuite only supports one tracking category at a time so only the first item in the tracking_categories list will be used.
creditNotesUpdate- Netsuite doesn't support voiding credit notes via API. Options: 1) Remove allocations and delete, or 2) Create a reversing invoice for the same amount.
creditNotesUpdateNetsuite only supports one tracking category at a time so only the first item in the tracking_categories list will be used.
Customers1 gotcha
customersAllThe minimun page size accepted for Netsuite is 5. The cursor for Netsuite expires if they have not been used within 15 minutes after its creation.
Departments1 gotcha
departmentsAllThe minimun page size accepted for Netsuite is 5. The cursor for Netsuite expires if they have not been used within 15 minutes after its creation.
Invoice Items1 gotcha
invoiceItemsAllThe minimun page size accepted for Netsuite is 5. The cursor for Netsuite expires if they have not been used within 15 minutes after its creation.
Invoices3 gotchas
invoicesAllThe minimum page size accepted for Netsuite is 5. The cursor for Netsuite expires if it has not been used within 15 minutes after its creation. When using filters or sort parameters (which trigger the SuiteQL path), `quantity` and `unit_price` on line items may reflect base-unit values (e.g., days) rather than selling-unit values (e.g., years) for items with Units of Measure (UOM) enabled. `total_amount` is always accurate regardless. Use the GET one endpoint for selling-unit quantities.
invoicesAddNetsuite only supports one tracking category at a time so only the first item in the tracking_categories list will be used. While creating an invoice, revenue start date and revenue end date should be passed in the custom fields object inside the line items.
invoicesUpdateNetsuite only supports one tracking category at a time so only the first item in the tracking_categories list will be used.
Journal Entries3 gotchas
journalEntriesAllThe minimun page size accepted for Netsuite is 5. The cursor for Netsuite expires if they have not been used within 15 minutes after its creation.
journalEntriesAddNetsuite only supports one tracking category at a time so only the first item in the tracking_categories list will be used.
journalEntriesUpdateNetsuite only supports one tracking category at a time so only the first item in the tracking_categories list will be used.
Ledger Accounts2 gotchas
ledgerAccountsAllThe minimun page size accepted for Netsuite is 5. The cursor for Netsuite expires if they have not been used within 15 minutes after its creation.
ledgerAccountsAddThe `currency` field is supported only when Multi-Currency is enabled in NetSuite. It applies mainly to Bank and Credit Card accounts and becomes read-only after creation.
Locations1 gotcha
locationsAllThe minimun page size accepted for Netsuite is 5. The cursor for Netsuite expires if they have not been used within 15 minutes after its creation.
Payments2 gotchas
paymentsAllThe minimun page size accepted for Netsuite is 5. The cursor for Netsuite expires if they have not been used within 15 minutes after its creation.
paymentsAddThe number property could be used to override the Netsuite tranId property.
Profit And Loss1 gotcha
profitAndLossOneNetSuite date filtering resolves `filter[start_date]` and `filter[end_date]` to accounting period IDs via SuiteQL, then filters the SOAP request by those periods. This requires the SuiteAnalytics Workbook permission for period resolution. If the permission is unavailable, the report returns all-time data as a fallback. For best results, keep date ranges under 16 years (200 monthly periods).
Purchase Orders1 gotcha
purchaseOrdersAllThe minimun page size accepted for Netsuite is 5. The cursor for Netsuite expires if they have not been used within 15 minutes after its creation.
Subsidiaries1 gotcha
subsidiariesAllThe minimun page size accepted for Netsuite is 5. The cursor for Netsuite expires if they have not been used within 15 minutes after its creation.
Suppliers1 gotcha
suppliersAllThe minimun page size accepted for Netsuite is 5. The cursor for Netsuite expires if they have not been used within 15 minutes after its creation.
Tax Rates1 gotcha
taxRatesAllThe minimun page size accepted for Netsuite is 5. The cursor for Netsuite expires if they have not been used within 15 minutes after its creation. NetSuite supports compound taxes through the `components` array, allowing multi-tier tax structures (e.g., state + county taxes).