How to Renumber and Rename GL Accounts with a CSV Update in NetSuite

Give existing accounts new numbers, names, and External IDs in one pass. Prepare a CSV keyed by Internal ID, import it as Chart of Accounts with Data Handling set to Update, and verify the result.

The quick answer

Put one row per account in a CSV with four columns: Internal ID, External ID, Number, and Name. Go to Setup > Import/Export > Import CSV Records, choose Accounting and Chart of Accounts, upload the file, and set Data Handling to Update. Map all four columns and run it. Internal ID is the key that finds each account, so the number can change in the same file. Afterward, check the chart of accounts for the new numbers and names.

The screenshots show sample data. Person and operating-company names are fictional. Use your own records and values when following the steps.

Before you start

A new NetSuite account arrives with accounts that its features created for you, and some of them have no number or a name you don't want in your reports. Many of those accounts can't be deleted, so you renumber and rename them. Doing it one record at a time is slow. One CSV update changes all of them and leaves a job on record.

This example changes three accounts: Cash (internal ID 7), Services (41), and Freight Income (63). They become 1010 Operating Checking, 4110 Consulting Revenue, and 4180 Shipping Recovery. Each External ID is set to the new number so later journal or integration imports can refer to the account by it. Undeposited Funds isn't in the file, and the import doesn't touch it.

You need a role that can run CSV imports and edit accounts. Menus and available fields vary by role, features, and account setup. In a OneWorld account, also check whether Field Mapping asks for Subsidiaries on the account. If it does, include the existing subsidiary values so the update doesn't change them by accident. You also need the Internal ID column on the chart of accounts. In this account it's already showing. If yours isn't, turn on Show Internal IDs under Home > Set Preferences, or pull the IDs from a search or export that includes Internal ID.

Before you run anything, export or screenshot the current numbers and names of the accounts you're changing, so you can put them back. If you have a sandbox, try the file there first. Check each account before you put it in the file. An account that can't be deleted can usually still be renamed or renumbered, but some feature-created or system accounts allow only certain fields to change. Run those rows on their own and read the CSV response. Keep the file to the fields you mean to change. Don't put account type or subsidiaries in it unless you intend to change them. Account numbers must stay unique across your accounts, not just inside the file. Look for existing accounts that already use 1010, 4110, or 4180, because a row that collides will fail. External IDs have to be unique among accounts too, so check for collisions. Using the account number is common but optional. If another system already uses bare numbers, add a prefix such as acct-1010. If an account already has an External ID, changing it can break integrations or imports that refer to the old one. Also expect the new names and numbers to show up in reports, saved searches, and anything else people read by account name. Menu paths are the ones in this account. If a page isn't where it says, search for its name in global search.

01. Find the internal IDs

Go to Lists > Accounting > Accounts. With internal IDs showing, the list has an Internal ID column. Cash is 7, Freight Income is 63, and Services is 41. Those IDs belong to this sample account, so read yours off your own list. None of the three has a number. Undeposited Funds (15) has none either, but it stays out of the file.

Cash (7), Freight Income (63), Services (41) and Undeposited Funds (15) have no account number.

02. Prepare the update file

Build the CSV with four columns: Internal ID, External ID, Number, and Name. Row 2 changes 7 to 1010 Operating Checking, row 3 changes 41 to 4110 Consulting Revenue, and row 4 changes 63 to 4180 Shipping Recovery. External ID repeats the new number. Internal ID is the column that does the finding. You can't use the account number as the key, because the number is one of the things you're changing.

account-updates.csv: one row per account, keyed by Internal ID.

03. Start the import and choose Update

Go to Setup > Import/Export > Import CSV Records. Keep Import Type on Accounting and Record Type on Chart of Accounts. Under CSV File(s), click Select..., choose account-updates.csv, and click Next.

Accounting, Chart of Accounts, and account-updates.csv selected.

On Import Options, set Data Handling to Update and click Next. Use Update for a file that holds only accounts you know exist. Add or Update can create a new account from a row that doesn't match, so leave it alone unless you've tested how it matches. Advanced Options on this page includes an Overwrite Missing Fields setting. Leave it off unless you mean to clear fields that are blank in the file.

Data Handling is set to Update.

04. Check the field mapping

On Field Mapping, NetSuite maps the four columns: Name to Account : Name, Number to Account : Number, External ID to Account : External ID, and Internal ID to Account : Internal ID. Internal ID is the lookup, so confirm it's mapped to that field and not to a name. Name and Number aren't flagged as required here in Update mode. Only the fields you map are candidates for change, so map exactly the columns you mean to change. Click Next.

All four columns are mapped, including Internal ID.

05. Save the mapping and run it

Enter Chart of Accounts Update as the Import Map Name and click Save & Run. Saving the map means you can run the same mapping again later from the saved imports. NetSuite shows a confirmation that the import was saved and the job is in process. That banner only says the job started. It doesn't say the rows worked. Click Import Job Status in that banner.

The mapping is saved as Chart of Accounts Update, then Save and Run starts the job.
The confirmation banner links to Import Job Status.

06. Check the job status

Here the Chart of Accounts - account-updates.csv job shows Complete, 100.0%, and 3 of 3 records imported successfully. Wording and columns can differ in your account, so read the counts of successful and failed rows. If fewer rows succeed, open CSV Response to see the error on each row. Common causes are an Internal ID that doesn't exist, a duplicate account number, or a field the account's type doesn't allow. Fix the rows and run the import again.

The job completes with 3 of 3 records imported successfully.

07. Confirm the new numbers and names

Go back to Lists > Accounting > Accounts. Internal ID 7 is now 1010 Operating Checking, 41 is 4110 Consulting Revenue, and 63 is 4180 Shipping Recovery. Types and balances are the same as before the import, and the internal IDs didn't change. If you use OneWorld, check that the subsidiary restrictions didn't change either. Undeposited Funds still has no number because it wasn't in the file, as long as no script or workflow in your account edits it.

Renaming or renumbering doesn't move balances or re-post anything. Transactions stay on the same account, and reports, registers, and searches show the new number and name.

Internal IDs 7, 41 and 63 now carry numbers 1010, 4110 and 4180. Undeposited Funds is untouched.

The standard chart of accounts list may not offer an External ID column, and it didn't here, so use a search. Go to Reports > Saved Searches > All Saved Searches > New and choose Account as the search type. Here the search opens as Custom Account Search. On the Results subtab, pick External ID in the next Field row and click Add. You can move it up under Name to read it more easily. You don't need to save the search just to look. Click Preview.

External ID added to the Results columns of an Account saved search.
Preview shows External IDs 1010, 4110 and 4180 on the three updated accounts.

Check the result

  1. Job Status shows 3 of 3 records imported successfully.
  2. Internal IDs 7, 41, and 63 read 1010 Operating Checking, 4110 Consulting Revenue, and 4180 Shipping Recovery, with the same balances.
  3. The preview shows External IDs 1010, 4110, and 4180 on those accounts, and Undeposited Funds has no number or External ID.

Common questions

Why does the file use Internal ID and not the account number?

Internal ID identifies the existing account record, and it doesn't change when the number or name does. The number can't be the lookup because it's one of the things you're changing. Here, IDs 7, 41, and 63 pick out Cash, Services, and Freight Income.

Does renumbering an account change historical transactions or balances?

No. Posted transactions stay on the same account record, so nothing moves and nothing is recalculated. Reports and searches show the new number and name, including for earlier periods. What else you can change depends on the account type, your features, subsidiaries, and any restrictions on the account.

How do I find the internal IDs of my accounts?

Turn on Show Internal IDs under Home > Set Preferences and open Lists > Accounting > Accounts. A search or export that includes Internal ID works too. Pull them from the same NetSuite account you'll run the import in, because IDs from a sandbox or another company won't match.

Should I choose Update or Add or Update?

Choose Update when every row is an account you know exists. A row with a wrong ID then fails and shows up in the CSV response. Add or Update can create a new account when it can't match a row, and that's easy to miss in a chart of accounts.

What do I do if some rows fail?

Open CSV Response from the Job Status page and read the error on each row. Check the Internal ID, whether the number is already used, the mapping, any required values, and subsidiary restrictions. Fix the failed rows, and import only those again once you've confirmed the good rows don't need to run twice.

How do I see the External IDs after the import?

The standard chart of accounts list may not have an External ID column. Create an Account saved search, add External ID on the Results subtab, and click Preview. In this example the three updated accounts show 1010, 4110, and 4180.

Can I update only some fields on an account?

Yes. Map only the fields you want to change. This file maps Internal ID, External ID, Number, and Name. Accounts that aren't in the file, like Undeposited Funds here, stay as they are. Which fields you can change varies by account type, role, features, and subsidiaries.