Product Catalog Workflow Interface Contracts
Changed on:
9 May 2025
Detailed Description
UPSERT_CATEGORY Event
This event is used to create or update Category within the target Product Catalog.Request Payload: Create Category
Use this payload when creating a new Category entry in the catalog.Main Payload| Property | Description | Type | Required? | Length Limit |
`ref` | The unique reference identifier for the Category. Uppercase Alphanumeric. | String | Required | 100 |
`name` | The name of the Category. | String | Required | 100 |
`type` | Type of Category (Normally set to `STANDARD`). | String | Required | 50 |
`status` | Status of the Category. | String | Optional | 50 |
`summary` | A short description of the Category. | String | Optional | 255 |
`parentCategory` | Identifies the parent Category to which the item belongs. Use it to group related Categories under a shared parent. | String | Optional | 255 |
Event Request Example
Request Payload: Update Category with Children
Use this version of the payload when assigning one or more child categories to an existing parent category.Main Payload| Property | Description | Type | Required? | Length Limit |
`ref` | The unique reference identifier for the Category. Uppercase Alphanumeric. | String | Required | 100 |
`name` | The name of the Category | String | Required | 100 |
`type` | Type of the Category (Normally set to `STANDARD`) | String | Required | 50 |
`status` | Status of the Category | String | Optional | 50 |
`summary` | A short description of the Category | String | Optional | 255 |
`childCategories` | Categories that fall under the Category in the hierarchy. Used to organize nested structures. | String | Optional | 255 |
Event Request Example
UPSERT_PRODUCT Event
This event is used to create or update Products within the target Product Catalog.Request Payload
STANDARD PRODUCT
Main Payload| Property | Description | Type | Required? | Length Limit |
`ref` | The unique reference identifier for the Product | String | Required | 100 |
`name` | The name of the Product | String | Required | 255 |
`type` | Type of the Standard Product (Recommended to be set to `STANDARD` to ensure the proper functioning of the `SetState` Rule) | String | Required | 50 |
`status` | Status of the Standard Product | String | Optional | 50 |
`gtin` | The Global Trade Item Number (GTIN) for the Product | String | Required | 20 |
`summary` | A short description of the Product | String | Optional | 255 |
`attributes` | Array of attributes for the Product | [Attribute] | Optional | |
`categoryRefs` | A list of references to the Categories to which the Product relates. Product Categories must be a part of the same Product Catalog. The Category must already exist. | [String] | Optional | 100 |
`prices` | Array of prices for the Product | [prices] | Optional | |
`taxType` | Array of Tax types for the Product | [taxType] | Optional |
| Property | Description | Type | Required? | Length Limit |
`attributes.name` | Name of Standard Product attribute | String | Optional | |
`attributes.type` | Type of Standard Product attribute | String | Optional | |
`attributes.value` | Value of Standard Product attribute | String | Optional |
| Property | Description | Type | Required? | Length Limit |
`prices.type` | Type of Product price | String | Optional | 100 |
`prices.currency` | Currency of Product price | String | Optional | 255 |
`prices.value` | Value of Product price | Float | Optional | 255 |
| Property | Description | Type | Required? | Length Limit |
`taxType.country` | Country of the Tax type | String | Optional | 100 |
`taxType.group` | Group of the Tax type | String | Optional | 100 |
`taxType.tariff` | Tariff of the Tax type | String | Optional | 100 |
Event Request Example
VARIANT PRODUCT
Main Payload| Property | Description | Type | Required? | Length Limit |
`ref` | The unique reference identifier for the Product | String | Required | 100 |
`name` | The name of the Product | String | Required | 255 |
`type` | Type of the Variant Product (Recommended to be set to `VARIANT` to ensure the proper functioning of the `SetState` Rule) | String | Required | 50 |
`status` | Status of the Variant Product | String | Optional | 50 |
`gtin` | The Global Trade Item Number (GTIN) for the Product | String | Required | 20 |
`summary` | A short description of the Product | String | Optional | 255 |
`standardProductRef` | Associated base Standard Product of this Variant Product | String | Optional | 100 |
`attributes` | Array of attributes for the Product | [Attribute] | Optional | |
`categoryRefs` | A list of references to the Categories to which the Product relates. Product Categories must be a part of the same Product Catalog. The Category must already exist. | [String] | Optional | 100 |
`prices` | Array of prices for the Product | [prices] | Optional | |
`taxType` | Array of Tax types for the Product | [taxType] | Optional |
| Property | Description | Type | Required? | Length Limit |
`attributes.name` | Name of Variant Product attribute | String | Optional | |
`attributes.type` | Type of Variant Product attribute | String | Optional | |
`attributes.value` | Value of Variant Product attribute | String | Optional |
| Property | Description | Type | Required? | Length Limit |
`prices.type` | Type of Product price | String | Optional | 100 |
`prices.currency` | Currency of Product price | String | Optional | 255 |
`prices.value` | Value of Product price | Float | Optional | 255 |
| Property | Description | Type | Required? | Length Limit |
`taxType.country` | Country of the Tax type | String | Optional | 100 |
`taxType.group` | Group of the Tax type | String | Optional | 100 |
`taxType.tariff` | Tariff of the Tax type | String | Optional | 100 |