The Scenario
You are a product manager. Your company is launching a new outdoor equipment line this quarter. You have 60 new SKUs fully defined in a Google Sheet — item code in column A, description in B, item group in C, unit of measure in D. Before purchase orders can be raised or inventory received, every one of those items needs to exist in ERPNext as an Item DocType record.
ERPNext's Item form has a dozen required fields depending on your configuration. The data import template is not the same shape as your product spreadsheet. And the last time someone used the import tool on a new product launch, three items got created with the wrong item group and they had to be corrected in ERPNext's UI one by one before any purchasing could happen.
The bad version of launch prep:
- Download ERPNext's item import template, map 60 rows to the template format
- Upload the batch, discover 8 rows have item groups that do not exist yet in ERPNext
- Create those item groups manually in ERPNext first
- Re-upload, get 3 more validation errors on the UOM field
- Fix and re-upload
- Verify that all 60 items landed correctly by spot-checking in ERPNext
- The purchasing team is waiting on you to open purchase orders and it is already Thursday.
The fast version is one prompt.
The Easy Way: One Prompt in SheetXAI
SheetXAI reads your product catalog sheet and creates the ERPNext Item records directly, writing confirmation back into the sheet so you know exactly which items were created.
Open the SheetXAI sidebar and type:
Create an ERPNext Item document for each row in my 'New SKUs' sheet. Column A is the item code, column B is the description, column C is the item group, and column D is the unit of measure. Write the created ERPNext item name into column E for each row. If creation fails, write the error into column E instead of skipping the row.
SheetXAI iterates through all 60 rows, creates each Item record through the ERPNext API, and writes either the item name confirmation or the error message into column E. The purchasing team can start raising purchase orders as soon as column E is populated.
What You Get
A completed catalog sheet with 60 rows of creation confirmation:
- Successful rows — the ERPNext item name in column E
- Failed rows — the specific error (item group does not exist, duplicate item code, invalid UOM) in column E
- Clean handoff — the purchasing team has the ERPNext item names they need to raise POs without checking the ERP manually
Item groups that do not exist in ERPNext get flagged in column E specifically. You create the missing groups first and re-run just the failed rows, rather than debugging after a full batch import.
What If the Data Is Not Quite Ready
New product catalogs are rarely finalized when you need them. SheetXAI handles the gaps inline.
When item codes have inconsistent formatting across rows
Some codes are uppercase, some are mixed case, some have extra spaces. ERPNext item codes are case-sensitive and exact.
Normalize all item codes in column A: trim spaces and convert to uppercase. Then create the ERPNext Item records and write the item name into column E.
When some rows are missing a unit of measure
The product team left UOM blank for 12 items. ERPNext requires it.
For any row where column D is blank, fill it with "Nos" as the default unit of measure. Then create the ERPNext Item records for all rows and write the item name into column E.
When you want to set a standard valuation rate for all new items at creation time
Finance wants all new items to have an initial valuation rate of 0 until purchase invoices are processed.
Create an ERPNext Item record for each row using item code (A), description (B), item group (C), and UOM (D). Set the valuation rate to 0 for all items. Write the ERPNext item name into column E.
When the sheet is a mix of new items and items that already exist in ERPNext, and you need to skip duplicates
Some SKUs in the sheet were created in a previous batch. You do not want to create duplicates.
For each row, check whether an ERPNext Item with that item code already exists. If it does, write "ALREADY EXISTS" into column E and skip. If it does not, create the Item record and write the ERPNext item name into column E.
The pattern: existence checks, default value fills, and the ERPNext insert are all one instruction. You do not check manually first and then run a second prompt to create the missing ones.
Try It
Get the 7-day free trial of SheetXAI and run it against your next product catalog sheet. The ERPNext integration is included in every SheetXAI plan. For related workflows, see how to bulk-create Customer records from a migration sheet or the ERPNext in Google Sheets overview.
