THIS ARTICLE IS FOR THE SHOPGATE CURBSIDE PRODUCT ONLY
The Catalog > Upload Data tab allows you to easily upload category, product, and inventory information. Depending on your Shopgate integration, you can use a Shopgate template or use the inventory REST endpoints to upload catalog data. You can also download existing catalog data (Category & Products) in our curbside CSV directly from this module.
Download Catalog Data
When you click on a "Download" link under category or products, you will trigger a new export to be created. The export can take several minutes to complete depending on the size of the catalog, however once complete you will receive an email with a link to download the file. This will be in the same file used for uploading CSV into the Shopgate platform.
Formatting the CSV Files
You can upload the catalog data via a CSV file, using any inventory system. To prepare the CSV files to upload, you must follow the expected format. Click Download CSV to view the sample CSV files that show you how to format your data. Field names are not case sensitive. If this is your first time uploading content, begin with the Category Upload and then proceed in order to the Product and Inventory uploads.
Note that each catalog entry contains the following field:
- Import Type: Indicates if record (row) is an "Add / Change” or "Delete." A value of "AC" indicates that the record should be added if it is not already present or updated if it is already present. A value of "D" indicates that the record should be deleted from the system. If you do not provide a value for this field, the import type will default to “AC.”
Category CSV
The Category CSV establishes the framework for uploading products and inventory. These categories are required to create a product taxonomy so customers can browse the catalog. Most ecommerce and POS systems have an existing taxonomy you can export.
FieldName |
Required |
Description |
Type |
Max Length |
Default Values |
ImportType |
Required, but has fallback |
Indicates if record (row) is an "Add / Change", or "Delete". A value of "AC" indicates that the record should be added if it's not already present or updated if it is already present. A value of "D" indicates that the record should be deleted from the system. |
Text |
3 |
If no value is present the record will be defaulted to "AC". |
CategoryCode |
Required |
Primary key or record identifier for a product category |
Text |
|
|
Name |
Required |
User friendly name of a product category |
Text |
|
|
SequenceID |
Required, but has default |
The order that the categories will be displayed |
URL |
255 |
If no value is present the order in the import file will be used. |
ParentCategoryCode |
Required, but has default |
Code of the parent category code for hierarchy creation |
Text |
|
If no value is present this category will not be nested |
Image |
Required, but has default |
URL to a category image |
URL |
255 |
|
CategoryDescription |
Required, but has default |
Short description of a product category |
Text |
255 |
|
Product CSV
The Product CSV provides key information about each product. Each row represents a product record. Every product variant requires its own record entry. Configurable products can have up to three options (e.g. size, material, color).
FieldName |
Required |
Description |
Type |
Max Length |
Default Values |
ImportType |
Required, but has fallback |
Indicates if record (row) is an "Add / Change", or "Delete". A value of "AC" indicates that the record should be added if it's not already present or updated if it is already present. A value of "D" indicates that the record should be deleted from the system. |
Text |
3 |
If no value is present the record will be defaulted to "AC". |
ProductCode |
Required |
Primary key or record identifier for a sales item |
Text |
|
|
Sequence |
Optional |
Product rank sort order. |
Number |
|
A number 1 to n. |
localecode |
Required, but has fallback |
Locale code for the catalog / item record |
Text |
5 |
By default this will be set to the default locale code on the merchant account. |
currencycode |
Required, but has fallback |
Currency code for the catalog / item record |
Text |
3 |
By default this will be set to the default currency on the merchant account. |
Name |
Required |
User friendly product name that is displayed / used in the category list, product detail, cart, order, order confirmation, order summary, and in some notificiations. |
Text |
255 |
Item name |
shortdescription |
Optional |
User friendly product short description that is normally displayed on the category list page and on the product detail page |
Text |
500 |
Optional quick decription of a product |
longdescription |
Required, but has fallback |
User friendly product long description that is normally displayed on the product detail page |
Text |
65535 |
Optional long "detailed" decription of a product |
ProductImages |
Required, but has fallback |
Optional list of product images |
URL |
255 |
Optional, but recommended, link to a product image URL that will be used in category lists and on the PDP. A list of multiple URLs can be provided. URLs delimited by a tilde ~ |
sku |
Required, but has fallback |
Item Stock Keeping Unit Code |
Text |
255 |
If no value is present the record will be defaulted to the ProductCode value |
upc |
Required, but has fallback |
Optional UPC or Barcode number for search / discovery |
Text |
255 |
Optional field that enables additional search options for this product that is generally set to BARCODE or UPC value of the product |
mfgpartnum |
Required, but has fallback |
Optional Manufacturing part number for search / discovery |
Text |
255 |
Optional field that enables additional search options for this product |
itemprice |
Required |
Item price per quantiy ordered |
Decimal |
8,2 |
Item Price |
Status |
Required |
Item status |
Text |
{Active,Inactive} |
If no value is present the record will be defaulted to "Active" |
saleprice |
Required, but has fallback |
Item price value for items on sale, will be displayed a strike through price normally |
Decimal |
8,2 |
|
ItemUnitOfMeasure |
Required, but has fallback |
Default unit of measure for a product. For example "each", "kg", "lb", "cm" etc. |
Text |
10 |
If no value is present the record will be defaulted to "Each" |
UnitValue |
Required, but has fallback |
Amount that the product contains of the unit specified above |
Decimal |
8,2 |
If no value is present the record will be defaulted to "1" |
UnitPriceRefUom |
Optional |
Unit used for displaying the unit price information, see Displaying Unit Price Information |
Text |
10 |
|
UnitPriceRefValue |
Optional |
Amount for displaying the Unit Price Information |
Decimal |
8,2 |
|
HasCatchWeight |
Required, but has fallback
|
Determines if product is treated as Catch Weight product |
|
{True, False} |
If no value is present the record will be defaulted to "False" |
ModelType |
Required |
Sets the "model" or type of a product record. |
Text |
{Standard, Configurable, Variant} |
|
InventoryManaged |
Required, but has fallback |
Inventory management setting for this product. Denotes if inventory is tracked / managed for a product record |
boolean |
{True, False} |
If no value is present the record will be defaulted to "False" |
InventoryTreatment |
Optional |
Allows you to set the how the product should be displayed when out of stock. |
Text |
{hideInStorefront, showOutOfStock} |
|
ParentProductCode |
Optional, no fallback |
Parent Product Code for variant product records |
Text |
255 |
If the record is a type of Variant, then this field is required and must reference the "Parent Product Code" that will enable the configuration of this product. |
TaxClass |
Required, but has fallback |
Product specific tax class |
Text |
255 |
If no value is provided, the configurated default product tax class will be used. Tax classes are set up in the Admin under Settings > Taxes |
FulfillmentMethods |
Required |
A list of supported / enabled fulfillment methods for this product. |
Text |
{directShip, BOPIS, ROPIS} |
If no value is present the record will be defaulted to "ROPIS" |
Properties |
Required, but has fallback |
A list of key value pairs for product properties that can be used to provide additional information on product specs or properies to help shoppers find additional product details. These are displayed on the product detail page. |
Text Key / Value |
Key(255):Value(255) |
Name / Value pairs and a single product have currently have any number of unique properties. They are formatted as follows in the properties field: DisplayedAttributeName:DisplayedAttributeValue Ie: Department:Grocery To send more than one property per product each name/value pair should be seperated with a value sub-delimiter which is set to "~". Ie: "Department:Grocery~Size:24 16oz Cans"" |
Categories |
Required |
List of category names that the product should be listed in |
Text |
255 |
Name of the categories (must match existing categories) that the product should be listed in. Must be tilde delimited |
CategoryCode |
Required |
List of category codes that the product should be listed in. Multiple entries delimited with ~ |
Text |
255 |
Code of the categories (must match existing categories) that the product should be listed in. If both this and Categories field are present on the record this one will be used and the Categories field will be ignored. |
ProductOption1 |
Optional, no fallback |
Name of First Product Option |
Text |
255 |
First configurable option for a "configurable" product or the first set value for a product "variant". The product option fields (1-3) and their value fields, along with the ParentProductCode field are used for "configurable products" or "Parent/Child Products" Ie: T-Shirt that comes in Small, Medium, or Large." |
ProductOption1Value |
Optional, no fallback |
ParentProduct: List of possible values of variant configurations Variant: Single value of variant record |
Text |
255 |
First configurable list of options for a "configurable" product or the first set value for a product "variant" |
ProductOption2 |
Optional, no fallback |
Name of Second Product Option |
Text |
255 |
Second configurable option for a "configurable" product or the first set value for a product "variant" |
ProductOption2Value |
Optional, no fallback |
ParentProduct: List of possible values of variant configurations Variant: Single value of variant record |
Text |
255 |
Second configurable list of options for a "configurable" product or the first set value for a product "variant" |
ProductOption3 |
Optional, no fallback |
Name of Third Product Option |
Text |
255 |
Third configurable option for a "configurable" product or the first set value for a product "variant" |
ProductOption3Value |
Optional, no fallback |
ParentProduct: List of possible values of variant configurations Variant: Single value of variant record |
Text |
255 |
Third configurable list of options for a "configurable" product or the first set value for a product "variant" |
Inventory CSV
FieldName |
Required |
Description |
Type |
Max Length |
Default Values |
Comments |
ImportType |
Required, but has fallback |
Indicates if record (row) is an "Add / Change", or "Delete". A value of "AC" indicates that the record should be added if it's not already present or updated if it is already present. A value of "D" indicates that the record should be deleted from the system. |
Text |
3 |
If no value is present the record will be defaulted to "AC". |
|
productCode |
Required |
Primary key or record identifier for a sales item |
Text |
|
|
In many cases product code and SKU are the same for merchants, however they can be different. The product code acts as the primary key in the Shopgate system for a sales item. example: "MTH-001" |
sku |
Required |
Item Stock Keeping Unit Code |
Text |
255 |
If no value is present the record will be defaulted to the ProductCode value |
|
locationCode |
Required |
Indicates the location code for this inventory record |
Text |
255 |
Must match existing setup location code |
example: "en-us" |
onHand |
Required |
The numberic on hand count of this item at this location |
Number |
|
Must be a whole number |
|
safetyStock |
Required, but has fallback |
The quatity of inventory that you would like to no be availble for digital orders, thus reserving them for Walk-ins |
Number |
|
Must be a whole number |
|
bin |
Required, but has fallback |
Aisle, Row, Shelve Location for where this item is locationed in the store |
Text |
50 |
|
example: 45-12 |
binLocation |
Required, but has fallback |
Shelve location for this item in this location |
Text |
50 |
|
example: 123 |
Uploading CSV Files
Once you have properly formatted your CSV files, simply drag and drop each file into the appropriate box to upload your data. The data begins to process immediately and may take up to 15 minutes. Once the upload completes, details for the category, product, and inventory are available in their respective tabs.
Magento Integration
Shopgate has connectors for both Magento 1 and Magento 2 that will help you manage categories, products, and inventory dynamically. Please contact support@shopgate.com for more information.