IMPORTANT
The below information is critical to the success of your upload, failure to follow these instructions and carefully review your data prior to import can result in irreversible actions by yourself that the WorkGuru support team cannot help to reverse. Please ensure your csv's correctness before attempting to import any data.
Imports support a maximum of 10 000 lines on your import template per upload. WorkGuru's recommended maximum active product limit is 10 000 products. If you experience a timeout on upload, assume the import is still processing in the background and do not attempt a re-upload of that template for at least 10 minutes.
Products can be imported into WorkGuru in bulk via a csv upload. Download or create an import template using the headers below and populate it with your migrated or supplier product data. Note: there is a lot of field validation to ensure that consistent data is imported into WorkGuru - eg. pricing tiers must be a number only (can't be blank etc).
If your products are linked to suppliers, we highly recommend that you create/import your suppliers to WorkGuru before actioning this import so you can link products to suppliers upon import. You can find the Suppliers import article found here.
- WorkGuru Product Import Template Mandatory Field Definitions
- Optional Product Import Field Definitions
- Product Import Steps
- Tips for a successful import
WorkGuru Product Import Template Mandatory Field Definitions
Sku | Your Product Code which identifies the product needs to be unique. Best practices include no spaces, complex characters or leading zeros. This must be unique, duplicate Sku's on your import will be blocked by the system | Required |
Name | Product Name | Required |
Description | Product Description | |
CostPrice | Default sell price of product. Cannot be blank and must be numerical - set to 0 (zero) if no value. | Required |
SellPrice | Default sell price of product. Cannot be blank and must be numerical - set to 0 (zero) if no value | Required |
RRP | RRP pricing. Useful to record or display pre-discounted pricing. Required number value if column included on import | |
Barcode | UPC or EAN Barcode on product packaging. | |
Brand | Product brand for reporting | |
Category | Product category for reporting | |
SupplierCode | Default supplier's product code. | |
SupplierName | Default supplier name. If included, must match existing supplier name EXACTLY. NOTE: All the purchasing automation tools in WorkGuru do not work for products without a default supplier assigned. | Recommended |
AccountCode | Xero GL account number for sales of this product. Note: GL number only (eg 200), no text. | |
ExpenseAccountCode | Xero GL account number for COGS usage (FIFO) or expense purchases (Non-Stock) Note: GL Number only (eg "300"), no text. | |
PurchaseTaxCode | Purchase Tax - Entered as case sensitive text matching the Xero tax name (Usually GST on Expenses) | |
SellTaxCode | Sales Tax - Entered as case sensitive text matching the Xero tax name (Usually GST on Income) | |
TrackingType | Must contain one of the following types as text (FIFO, Serial, or NonStock)
| Required |
IsActive | Product visibility. Binary text - TRUE for yes (default), FALSE for no. | Required |
Height | Product height. You can use any unit type (mm, cm, m etc) as long as it is consistent across all products. | |
Length | Product length. You can use any unit type (mm, cm, m etc) as long as it is consistent across all products. | |
Width | Product width. You can use any unit type (mm, cm, m etc) as long as it is consistent across all products. | |
Weight | Product weight. You can use any unit type (g, kg, lb etc) as long as it is consistent across all products. | |
MinOrderQty | Minimum quantity purchased from the supplier. Note: Different purchase units (roll/drum etc) is handled by units of measure functionality. |
Optional Product Import Field Definitions
Pricing Tiers - You can import your alternate product pricing tiers via additional columns with the pricing tier name (case sensitive) as the header name. Eg If the price tier names are Wholesale and Trade, the import template would include the following columns:
Wholesale | Trade |
100 | 90 |
Custom Fields - Custom fields can be included on your product import by adding a column to the import with the notation CustomField::CustomFieldName as the header name. For multiple custom fields, a column with this notation for each custom field you want to import. For example, a custom field name Test, the template would include a column with the header named CustomField::Test with the rows containing the custom field data.
CustomField::Test | This is a test |
Product Import Steps
Upload
You can upload your import template from Products-> Import Products or from the Actions menu on the products dashboard.

After reviewing your spreadsheet click Choose File and select your import.

If required, expand Advanced Options to control the import process in more detail:

- Match against inactive products (Default) - Check the upload Sku against ALL products (active and inactive). Deselect to check upload Sku on active products only (may cause duplicates).
- Match against inactive suppliers (Default) - Check the upload SupplierName against ALL suppliers (active and inactive). Deselect to check upload SupplierName on active suppliers only (may cause duplicates).
- Match against inactive tax rates - Check the upload PurchaseTaxCode and SellTaxCode against ALL accounting integration tax codes (active and inactive).
- Match against inactive GL accounts - Check the upload AccountCode and ExpenseAccountCode against ALL accounting integration general ledger accounts (active and inactive).
Review any import errors or messages raised during the pre-import checks.
Click Preview to upload and preview the import template file.
Preview
It is important to preview the import data before confirming the import to ensure your product data remains corect after upload. The Preview will display a summary of exactly what it is going to happen to double check against what you are expecting it to do.

Specifically take note of the amount of Update products vs the amount of New products. For example:
- If you are importing brand new products, there should be no updated products.
- If you are updating existing products only, such as a price update, there should be no new products.
Any errors and warnings will be displayed that will need to be fixed in the data on the import template. Click Re-upload to restart the import process again with the updated import template.
- Errors - The upload will stop with NO products imported.
- Warnings - The upload will complete, with the data causing the warning NOT imported.
Commit Upload
When you're satisfied the data is accurate, click Commit to complete the upload. If you want to restart the import process with another import template, click Re-upload.

Tips for a successful import:
- Ensure you have included the required fields.
- Ensure there are only numbers in the pricing columns.
- Pricing columns are required. If a product has no price, ensure a 0 is entered, not left blank.
- Make sure formatting has been removed (e.g. '$') and a decimal point ('.') is used as the decimal delimiter, not a comma.
- Ensure that all Suppliers already exist in WorkGuru. The Supplier name needs to match exactly.
- If you are updating products, ensure your SKU's haven't been auto-formatted by your spreadsheet application. Spreadsheet apps tend to strip away leading zeros and auto-format barcodes and dates. If a product can't be matched to an existing product by EXACTLY matching SKU's, a new product will be created.
- If setting up UoMs and/or reorder levels and locations, ensure that you import the primary or parent products and components first.
- Ensure columns don't have leading or trailing spaces.
- If removing rows, ensure the row has been deleted rather than just the data it contains. Some spreadsheet apps will not remove the comma separators when deleting data instead of the row, causing an empty row (, , , , , ,) which will cause an error on import. This can easily be caught by inspecting the import template in notepad or a formatting-free text editor.
- The Sku is used to match products on you import and decide what's new or existing, for the best results use a freshly exported product list before updating products (Advanced export is great is only updating a selection of all products)
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article