All records in NetSuite have a unique identifier that can’t be changed called an Internal ID. An Internal ID is a numeric value that is unique within each record group. For this reason, it becomes the safest identifier to use when exporting and importing data updates into NetSuite. When there is potential for duplicate Document Numbers you can always rest assured that the Internal ID will be unique. Document Numbers can also be changed whereas the Internal ID will forever stay the same.
Where to find the Internal ID of a record
If you are viewing a record and need to know the Internal ID, the easiest place to check is the URL. The following URL is for a Sales Order record.
The URL ends with id=[internal id]. This is useful for quickly retrieving the internal ID of a record but also to navigate to a record that I know the Internal ID of. If I am currently viewing a Sales Order and I want to view another Sales Order that I only know the Internal ID for I can simply edit the URL and hit enter. This is particularly helpful when you are analyzing data you have exported from NetSuite and need to view a record from your dataset. When you are used to always exporting the Internal IDs this becomes the quickest and most intuitive route to your target record.
You will also find the Internal ID of every record within the System Notes. From my Sales Order record I can navigate to the subtab System Information and then System Notes.
The first note in the System Notes of all records will be the assigning of an Internal ID.
|Be aware that System Notes are not copied over to Sandbox accounts after a refresh so you may not find the ID here in a Sandbox account
Using Internal IDs for CSV Imports
When updating records via CSV import it is always advised to use the Internal ID to find your target records. To do this safely and efficiently you will want to export a template that includes the ID and then re-import it with the updated data. If you want to really save yourself time and avoid errors you can even use the Internal ID for all referenced records and dropdown field values as well. On the field mapping page of the CSV import, click the edit icon to the left of the relevant field on the mapping tree.
From the dropdown options for Choose Reference Type select Internal ID. Personally, I will always use this option for ledger accounts, entity records or classifications like Department, Class or Location. Using the Name field can often cause failed Imports due to spelling differences, formatting such as spaces or duplicate values. You won’t have these issues using the Internal ID.
Link to records using the Internal IDs
Did you know you can use the Internal ID to create dynamic links in NetSuite as well? An example of this is creating links within Saved Searches by pulling in the Internal ID of the target record or even of a linked record. This NetFreak article will walk you through how to achieve this.