Importing customers and items
Bringing reference data in from CSV, mapping columns, saving reusable profiles, and how updates are matched.
Your customers, items, and prices already exist in NetSuite. Rather than retyping them, export a saved search to CSV and import it at Settings → NetSuite sync → Import.
What you can import
- Customers — name, email, phone, Internal ID, External ID, category, terms, price level, rep, territory, and custom fields.
- Items — name, SKU, description, base price, item type, category, Internal ID, External ID, and custom fields.
- Ship-to addresses — address components plus the ship-to, bill-to, and default flags, linked to a customer.
- Sales reps — name, email, and Internal ID.
- List values — values for any managed list, such as terms, shipping methods, subsidiaries, tax codes, or units.
- Item prices — per price level pricing, including quantity tiers.
Running an import
- 1Choose the entity you are importing.
- 2Upload the CSV. The first row is read as headers.
- 3Map each CSV column to a field. Close matches are pre-selected; leave a column unmapped to ignore it.
- 4For list values, choose which list the rows belong to.
- 5Review the preview, then run the import.
- 6Check the result summary for created, updated, and error counts, and open the error rows to see what failed and why.
Update versus insert
Rows are matched against existing records before anything is written. A match updates the existing record rather than creating a duplicate; no match inserts a new one. Matching prefers the strongest identifier available in your file.
| Entity | Matched on |
|---|---|
| Customers | Internal ID, then External ID, then name |
| Items | Internal ID, then External ID, then SKU, then name |
| Sales reps | Internal ID, then External ID, then email, then name |
| List values | Internal ID, then name within the chosen list |
| Item prices | Item plus price level plus minimum quantity |
| Ship-to addresses | Customer plus label |
It is what makes re-imports safe, and it is what the export needs to reference records back in NetSuite. Importing without it works, but you will end up filling the IDs in by hand later.
Saved import profiles
Once a mapping works, save it as a profile with a name. A profile stores the entity, the list key, the replace-list option, and the full column mapping, so the next file with the same layout loads its mapping in one click. Profiles record when they were last run and how many rows were created, updated, and errored.
Replace list
When importing list values you can choose to replace the list rather than merge into it. Replace clears the existing values for that list before inserting the file's rows.
Values removed by a replace are gone, and any order or customer that referenced them loses that reference. Use merge unless you are deliberately rebuilding a list from scratch.
Getting a clean file out of NetSuite
- 1Build a saved search on the record type in NetSuite.
- 2Add Internal ID as an explicit result column — it is not included by default.
- 3Add the other fields you want, then export the results as CSV.
- 4Upload that file here without opening and re-saving it in a spreadsheet.
NetOrderFlow does this for you. Start a 14-day free trial.
Questions about this guide?