# NetSuite Internal ID Lookup Worksheet

> Source: https://netray.co/tools/netsuite-internal-id-lookup-worksheet
> Publisher: Netray (netray.co), AI and integration engineering for ERP and manufacturing systems.
> Section: Free Tools

## Short answer

An editable table to record internal IDs, script IDs and external IDs per environment, so scripts and integrations stop hardcoding guesses.

## Category

netsuite

## Erp

NetSuite

## Audience

- NetSuite developer
- NetSuite administrator
- Integration developer

## Tool

**Kind:** worksheet

**Mode:** editable

**Columns:**

#### Object

**Key:** object

**Type:** text

#### Record type

**Key:** rtype

**Type:** select

**Options:**

- Subsidiary
- Account
- Department
- Class
- Location
- Item
- Customer
- Vendor
- Role
- Custom list value
- Custom field
- Saved search
- Script
- Other

#### Production internal ID

**Key:** prod_id

**Type:** text

#### Sandbox internal ID

**Key:** sb_id

**Type:** text

#### Script ID or external ID

**Key:** script_id

**Type:** text

#### Used in

**Key:** used_in

**Type:** text

#### Last verified

**Key:** checked

**Type:** date

**Rows:**

**Object:** US Operations

**Rtype:** Subsidiary

**Prod id:** 3

**Sb id:** 3

**Script id:** SUB-US

**Used in:** Intercompany script

**Checked:** 2026-10-01

**Object:** Main Warehouse

**Rtype:** Location

**Prod id:** 12

**Sb id:** 14

**Script id:** LOC-MAIN

**Used in:** Fulfillment user event

**Checked:** 2026-10-01

**Object:** Credit hold flag

**Rtype:** Custom field

**Script id:** custbody_credit_hold

**Used in:** Sales order user event

**Checked:** 2026-10-05

**Object:** Net 30

**Rtype:** Other

**Prod id:** 2

**Sb id:** 2

**Used in:** Customer import

**Checked:** 2026-09-20

**Object:** Open sales orders

**Rtype:** Saved search

**Prod id:** 1407

**Sb id:** 1311

**Script id:** customsearch_open_so

**Used in:** Dashboard, map/reduce

**Checked:** 2026-10-12

**Notes:** Internal IDs often differ between sandbox and production, especially after a sandbox refresh, so record both and look up values at runtime where possible. To see internal IDs in the UI, enable Show Internal IDs in Home > Set Preferences > General (Advanced). Script IDs are stable across accounts and are the safer reference when available.

## Content

**Intro:** NetSuite internal IDs are numbers assigned per account, so the ID for the same subsidiary, location or saved search can differ between sandbox and production. This worksheet gives your team one place to record them with the script ID that stays stable.

**Sections:**

#### How to use the worksheet

**Body:** Add a row for every object your scripts, integrations or imports reference by ID. Record the production and sandbox internal IDs, the script ID or external ID, where it is used and when you last verified it. Export to Excel to share with the team or attach to a release checklist, and review the sheet after every sandbox refresh.

#### Internal ID, script ID and external ID

**Body:** The internal ID is a number NetSuite assigns when a record is created and it is the default key in the UI URL and in most APIs. A script ID is a text identifier such as custbody_credit_hold that you define for customization objects, and it moves with the SuiteCloud project. An external ID is a value you supply, often from another system, which REST and SOAP can use to address records. Each solves a different problem.

**Bullets:**

- Internal ID: account-specific, shown with Show Internal IDs
- Script ID: stable across accounts for custom objects
- External ID: your own key for upserts and integrations
- Prefer lookups at runtime over hardcoded numbers

#### Where hardcoded IDs go wrong

**Body:** A script that hardcodes a location ID passes in sandbox and fails in production when the numbers differ. The same happens after a sandbox refresh that renumbers newly created records. Safer patterns include loading values from a custom record or script parameter, querying by name or script ID at runtime, and keeping a mapping record that integrations read. This worksheet documents the exceptions you could not avoid.

#### Common mistakes

**Body:** Teams often copy IDs from the sandbox into production code, rely on custom list value IDs that are reassigned when a list is rebuilt, and never record the verification date. Review the sheet during release planning and remove rows when the code no longer depends on them. Keep it in version control or a shared drive with a named owner.

**Cta:** If you manage many NetSuite environments and mappings, Netray can help automate configuration drift checks across accounts, read-only by default.

**Faq:**

#### How do I find a record's internal ID in NetSuite?

**Answer:** Open the record and read the id parameter in the browser URL, or enable Show Internal IDs under Set Preferences, General, Advanced to see IDs in lists and field help. Script and saved search IDs appear on their definition pages.

#### Are internal IDs the same in sandbox and production?

**Answer:** Not reliably. A sandbox refresh copies production at that moment, but records created afterwards get different IDs in each account. Do not assume matching numbers for anything created after the refresh.

#### What is the difference between internal ID and external ID?

**Answer:** The internal ID is assigned by NetSuite and unique within the account for the record type. The external ID is a value you provide, usually mirroring another system, and it lets integrations find or upsert records without storing NetSuite numbers.

#### Should I hardcode internal IDs in scripts?

**Answer:** Avoid it. Use script parameters, a configuration record, or look up by a stable key at runtime. If you must hardcode, document it here and verify after each sandbox refresh and deployment.

## Search terms

netsuite internal id list, netsuite find internal id, netsuite internal id vs script id, netsuite sandbox production internal id mapping, netsuite show internal ids preference, netsuite id mapping template, netsuite custom list internal ids

---
Talk to an engineer: https://netray.co/contact?intent=erp_ai | Machine catalog: https://netray.co/agent/catalog.json
