Skip to content

Integration Overview

Goal of this guide is to give you an overview of the catalog structure for Shopgate, the different options how catalog data can be imported from an external system into Shopgate and how it is kept up-to-date.

The catalog data consists of multiple entities:

  • Products
  • Product Attributes (e.g. sizes, colors)
  • Categories
  • Inventory (for direct ship fulfillment as well as retail store availability)
  • Catalogs (only relevant in case of multi-store / multi-catalog setups)

For the detailed specification of each entity, please check the Shopgate Catalog API.

The goal of the catalog integration is to transfer the catalog data to Shopgate and keep it up to date. There are different options how catalog information can be transferred:

CSV Import JSON Import Catalog API Integration
Supports most important - but not all data fields Supports all data fields Close to realtime updates / synced with the ecp
Easy to use (drag-and-drop or ftp upload) Highest effort to implement

The CSV Import is the best way to get started. For the best integration experience, we recommend using the JSON Import and additionally if required the Catalog API Integration.

NOTE: You can always switch between all the options or even mix them without the need of resetting your data.

For the import of catalog entities it is important to know some special relationships between entites. These relationships have implications on how (in which order) the entities need to be imported.

General rule of thumb here is:

  • Attributes, Inventory and, Catalogs come first
  • After Catalogs have been imported the Categories can be imported
  • Products last, as they depend on Attributes, Inventory and Categories

For CSV Import: The CSV Import lets you upload categories, products and inventory. Attributes get created implicitly via the product entries. Everything gets imported into a default catalog. The category CSV file should get imported before the product CSV file.

For JSON Import: If all entities get uploaded into the same import via the JSON Import Service, the process will automatically take care of the correct logical order.

If you want to learn more about the entity relationships see Concepts and Entities.

The Shopgate platform supports two import strategies for CSV and JSON imports.

The uploaded file should contain all records for this entity (e.g. all products). New records are automatically created, existing records updated and records that exist at Shopgate, but are missing in the uploaded file, will be removed from Shopgate.

NOTE: One special case is the full import for Inventory. Before uploading the file, the locations this file applies to can be specified. This way, inventory records of other locations remain untouched. This can be helpful when different locations or location groups use different ways to manage their inventory.

New records from the file will be created and existing records updated, but if records are missing from the file they will not be deleted from Shopgate. To delete records via a partial import, an explicit entry has to be added to the file with the field importType and value “D”. Example to delete the product 123:

  • JSON: {“productCode”:”123”, “importType”:”D”}
  • CSV: Set column “ImportType” to “D”