Interface ProductCatalogModel

All Superinterfaces:
JsonEnum
All Known Implementing Classes:
ProductCatalogModel.ProductCatalogModelEnum

public interface ProductCatalogModel extends JsonEnum

Determines how Product Variants are managed in the Project.

  • Field Details

    • CLASSIC

      static final ProductCatalogModel CLASSIC

      Product Variants are embedded in the Product. This is the default model.

    • IN_MIGRATION

      static final ProductCatalogModel IN_MIGRATION

      This temporary model supports migration from Classic to Modular. Product Variants remain embedded, and Product API Variant update actions remain supported. Other resources that resolve Variants default to standalone Variants, while Product Search defaults to embedded Variants. See the migration guide for details.

    • MODULAR

      static final ProductCatalogModel MODULAR

      Product Variants are standalone resources managed through the Variants API. Pricing uses StandalonePrices. Embedded Prices and Product API Variant update actions are unsupported.

      • Variant-related update actions on Products return a 400 error.
      • Products must be created without masterVariant and variants.
      • Products cannot be deleted while Variants reference them.
      • Products cannot be unpublished while they have published Variants.
      • Carts read variant data from the Variant API instead of embedded Product Variants.
      • priceMode on Products is set to Standalone.
  • Method Details

    • getJsonName

      String getJsonName()
      the JSON value
      Specified by:
      getJsonName in interface JsonEnum
      Returns:
      json value
    • name

      String name()
      the enum value
      Specified by:
      name in interface JsonEnum
      Returns:
      name
    • toString

      String toString()
      convert value to string
      Specified by:
      toString in interface JsonEnum
      Overrides:
      toString in class Object
      Returns:
      string representation
    • findEnum

      static ProductCatalogModel findEnum(String value)
      factory method for a enum value of ProductCatalogModel if no enum has been found an anonymous instance will be created
      Parameters:
      value - the enum value to be wrapped
      Returns:
      enum instance
    • findEnumViaJsonName

      static Optional<ProductCatalogModel> findEnumViaJsonName(String jsonName)
      method to find enum using the JSON value
      Parameters:
      jsonName - the json value to be wrapped
      Returns:
      optional of enum instance
    • values

      static ProductCatalogModel[] values()
      possible enum values
      Returns:
      array of possible enum values