recategorizeProduct

Description
This transaction recategorizes a product from one category to another within the same category hierarchy.
Web Services
Operation name: recategorizeProduct
Service name: Product
Example
Recategorize the TV Stand product from the General Furniture category to the Home Entertainment Furniture category.

Recategorize the Home Owners Line of Credit product from the Financial Services category to the Personal Credit category.

Usage information
You can use this transaction to recategorize a single product from one category to another.

StartDate and EndDate are optional inputs in the request. They correspond to the start and end dates of the new product category association.

Preconditions
A product category association must exist.

The new category with which the product will be associated must be active.

The new category must support the ability to categorize products (AssociationIndicator in the CategoryBObj must be set to Y).

Mandatory input
  • ProductId
  • OldCategoryId
  • NewCategoryId
Inquiry levels
Not applicable
Filter values
Not applicable
Transaction behavior
This transaction inactivates the product category association between the product and the old category, effective as of the current date, and create a new product category association between the product and the new category. If the StartDate is not provided, the current date is used by default.

If the EndDate for the new product category association is not provided, the EndDate of the new category is used by default.

If a product category association already exists for the product and the new category, and the StartDate and EndDate values of the new product category association overlap with the existing record, then this transaction fails.

When a product is recategorized, its active product-category specification (spec) values (ProductSpecValueBObj) from the old category are impacted in one of two ways:
  • The product-category spec values will be retained even after recategorization, meaning that these values can still be updated or retrieved for the product, if either of the following conditions is true:
    • The spec can be accessed through the new category and the StartDate and EndDate of the product-category spec values fall within the date range defined by the StartDate and EndDate of the new product category association.
    • The spec values can be accessed through another existing product category association or the product's type.
  • The product-category spec values will be inactivated by the transaction if either of the following conditions are true:
    • The spec can be accessed through the new category, but the StartDate and EndDate are not within the date range defined by the StartDate and EndDate of the new product category association.
    • The spec can no longer be accessed through the new category, another existing product category association, or the product's type.

The transaction returns the ProductCategoryAssociationBObj created for the product and the new category.

For details on categorizing a product into a category, see the transaction categorizeProduct.

For details on inactivating an existing product category association, see the transaction updateProductCategoryAssociation.

Request message
<TCRMTxType> recategorizeProduct

<TCRMTxObject> RecategorizeProductBObj

<TCRMObject> RecategorizeProductBObj

Response objects
ProductCategoryAssociationBObj
Special note
Not applicable