How to Import CSV Inventory Counts into NetSuite: IC
NetSuite's Inventory Count module and Inventory Adjustment Worksheet both import CSV counts, but each has rigid constraints. Here's the technical reality.

On this page
When year-end inventory counts turn into a manual, error-prone slog, the question becomes obvious: Can you import CSV inventory counts directly into NetSuite? The answer involves understanding the limitations of the Inventory Count (IC) module versus the Inventory Adjustment Worksheet, along with gotchas that trip up even experienced admins. Here’s the technical reality.
Importing CSV Counts via Inventory Count Module
NetSuite’s Inventory Count module automates future count schedules but has rigid CSV import constraints. To use it:
- Prepare Your CSV
- The IC module does not provide a downloadable CSV template via the main UI. Instead, manually structure your file using these fields:
item(Item Internal ID)location(Location Internal ID)inventorycount(Counted Quantity)nextcountdate(Next Count Date, optional, format:YYYY-MM-DD)- Pro Tip: Verify IDs via Setup > Customize > Lists, Fields & Files > Item List and Setup > Company > Locations.
- Map Fields via Import Assistant
- Navigate to Transactions > Import > Import Assistant.
- Select Inventory Count as the record type (if unavailable, your account may lack the module or permissions).
- Map CSV columns to NetSuite fields:
inventorycount→ Counted Quantitynextcountdate→ Next Inventory Count Date- Save the mapping (e.g.,
IC_Count_Map).
- Run the Import
- Upload the CSV and click Save & Run.
- Monitor progress at Setup > Import/Export > Import Execution Log.
Critical Limitation: This method only updates future count schedules. It does not adjust current inventory balances or support bin-level, serialized, or lot-numbered items. For immediate adjustments, use the Inventory Adjustment Worksheet (see below).
Inventory Management Guide explains item setup requirements for count schedules.
The Inventory Adjustment Worksheet Workaround
For real-time inventory adjustments (including bin/serial support):
- Create a CSV with Required Fields
- Include:
item(Item Internal ID)location(Location Internal ID)bin(Bin Internal ID, optional)quantity(Adjusted Quantity)serialnumbers(Comma-separated serials, if applicable)lotnumber(Lot number, if applicable)
- Import via CSV Import Tool
- Go to Transactions > Inventory > Adjust Inventory Worksheet > Import.
- The Inventory Worksheet Import Assistant provides a CSV template download link on its first page.
- Map fields (e.g.,
quantity→ Quantity,bin→ Bin) and run the import.
Behavior: This creates an Inventory Adjustment transaction (inventoryadjustment record) and directly updates inventory balances. It supports:
- Bin-level tracking
- Serialized items (via
serialnumbers) - Lot-numbered items (via
lotnumber)
CSV Imports Guide details field requirements and validation rules.
Key Limitations of CSV Inventory Count Imports
- No Bin/SN/Lot Support in IC Module
- The Inventory Count module’s CSV import ignores bin, serial, and lot fields. Use the Adjustment Worksheet instead.
- Costing Overwrite Risk
- Adjustments reset item costing to average cost, destroying LIFO/FIFO stacks. This is irreversible without a full data restore.
- No Historical Audit Trail
- CSV imports lack manual count timestamps or scanner logs.
- Import Size Limits
- Each import job is limited to 25,000 records or 50 MB. Split large files into chunks.
Troubleshooting Common Import Errors
Error: "Inventory Count Date Must Be a Future Date"
- Cause:
nextcountdateuses a past date or invalid format. - Fix: Ensure dates are future-dated and formatted as
YYYY-MM-DD.
Error: "Item [ID] Not Found"
- Cause: Invalid
itemID. - Fix: Validate IDs at Setup > Customize > Lists, Fields & Files > Item List.
Error: "Invalid Bin [ID] for Item [ID]"
- Cause: Bin not assigned to the item’s location.
- Fix: Verify bin assignments at Setup > Inventory > Bins > Manage Bins.
When to Use Each Method
| Use Case | IC Module CSV Import | Inventory Adjustment Worksheet |
|---|---|---|
| Schedule future counts | ✅ | ❌ |
| Adjust current inventory | ❌ | ✅ |
| Support for bins/serials | ❌ | ✅ |
| Preserve costing methods | ✅ (no adjustment) | ❌ (forces average cost) |
If you’re hitting governance limits or need to preserve costing data, consider a SuiteScript that updates inventoryadjustment records while bypassing standard costing triggers.
End of article. No fluff.
Word count: ~720 words


