Adding Product Attributes

Use the Products API to manage attributeValue information in the database. AttributeValue details include product tax code, price, size, color, image, brand, and description. The Product Attribute Values data collection defines attributes associated with a product item, such as name, value, and audit date. Each product attribute has different options associated with it. Valid values for attributeValue depend on the value used for attributeName.

The following table describes the collection of Product Attribute Values for the productAttributeValues parameter in the ProductDataAttribute data collection.

NameDescription
attributeNameDefines the name of an attribute. This parameter accepts one or more of the following values:
  • CompanyPrefix—defines the manufacturer's company prefix.
  • DisableItemLevelManualDiscounts—specifies whether or not to disable manual markdowns and price overrides on a specific item in a sale or return transaction without restricting other discounts, including AMS offers.
    Note

    This attribute requires that the NoDiscount attribute is set to false and the Amount Off, Percent Off, and Price Override buttons are configured to display on the Item Options panel of the POS application.

  • DividendEligible—specifies the initial status of dividend eligibility for an item.
  • FrankLevel—specifies whether the POS application prints item-level franking information, prints transaction-level franking information, or does not require franking.
  • GiftCardItemFlag—specifies whether or not an item is a gift card product code or UPC. This determines whether or not the POS initiates a gift card sale flow.
  • ItemActivation—determines whether or not an item requires activation.
    Note

    This attribute requires additional retailer integration.

  • ItemBasedPromptScheme—specifies the Info Set Names used for SKU-based prompting using comma-separated values.
  • NoDiscount—specifies whether or not to allow discounts on an item.
  • PromptForPriceFlag—specifies whether or not the POS prompts for an item price.
  • PromptForResale—specifies whether or not the POS prompts for a resale barcode when an item is sold.
  • RelatedItems—specifies the selection options for supplemental items in a sales transaction. Retailers can specify whether a supplemental item is mandatory or optional and if multiple supplemental items can be selected for one product.
  • ReturnDays—defines the number of days that an item is eligible for return.
  • ReturnReasonNotRequired—specifies whether or not the POS prompts for a reason code when an item is returned.
attributeValue

Defines the value for the product item attribute corresponding to the attributeName specified.

Refer to the attributeValue table, below, for a description of the values accepted for each attribute name.

Note

attributeValue must be a properly-formatted JSON string.

attributeOldValueChanges or updates the existing value of an attribute.
customerAuditDateSpecifies the date when the audit information of the product group was last modified.

attributeValue

The following table describes the valid values for the attributeValue parameter based on each attributeName value. The attributeName can have any value, which means that it accepts any non-defined attribute names, and these will pass through the POSLog.

attributeNameattributeValue
CompanyPrefixDefines the manufacturer's company prefix. This prefix is used to validate GS1 Databar Manufacturer coupon entry.
DisableItemLevelManualDiscountsSpecifies the manual item-level markdown or price override o disable using the following comma-separated values:
  • DollarOff—indicates that the POS disables the Amount Off button on the Item Options panel when this item is added to a sale or return transaction.
  • PercentOff—indicates that the POS disables the Percent Off button on the Item Options panel when this item is added to a sale or return transaction.
  • PriceChange—indicates that the POS disables the Price Override button on the Item Options panel when this item is added to a sale or return transaction.
DividendEligible
  • true—indicates the initial dividend eligible status of item.
  • false— indicates the initial dividend eligible status of item.
FrankLevel
  • Item—indicates that the POS application should print item-level franking information for the product when it is added to a sales transaction.
  • Transaction—indicates that the POS application should print transaction-level franking information for the product at the end of a sales transaction.
  • None—indicates that there are no franking requirements.
GiftCardItemFlag
  • true—indicates that the item is a gift card product code or UPC. Scanning the item at the Sale Main Menu initiates a gift card sale flow.
  • false—indicates that the item is not a gift card product code, and the POS does not initiate a gift card sale flow at the Sale Main Menu.
ItemActivation
  • Type—the type of activation required for the product. Retailers can provide any type value to be sent to an external service.
  • Properties—an optional collection of key-value pairs that can be included in the activation request to an external service. For example: “Vendor”:”VND123”
ItemBasedPromptScheme
  • ItemDetails—the name of the Information Set used for SKU-based prompting. This value must match the Info Set Names value specified in the Information Form Definitions options group.
  • PaymentDetails
  • DataCarryover—valid values: true/false.
  • ReturnStatus—defines whether the item can be returned or not. Valid values: 0/1.
  • ReturnDetails—the name of the Information Set used for SKU-based prompting. This value must match the Info Set Names value specified in the Information Form Definitions options group.
Example

{ "ItemDetails": "PetTrainingPrompt", "PaymentDetails": "", "DataCarryover": "true", "ReturnStatus": "0", "ReturnDetails": "PetTrainingReturnPrompt" }

NoDiscount
  • true—indicates that the POS should not accept discounts for the item.
  • false—indicates that the POS should accept discounts for the item.
PromptForPriceFlag
  • true—indicates that the POS prompts for the item's price.
  • false—indicates that the POS does not prompt for the item's price.
PromptForResale
  • true—indicates that the POS prompts for a resale barcode entry when the item is sold.
  • false—indicates that the POS does not prompt for a resale barcode entry when the item is sold.
RelatedItems
  • minimum—indicates the minimum number of supplemental items that can be selected for each base product in a sales transaction. This value is optional. It defaults to 0 or an optional selection when not specified. Valid values: integer, 0 or more.
  • maximum—indicates the maximum number of supplemental items that can be selected for each base product in a sales transaction. This value is optional. Valid values: integer, 1 or more.
  • items—a comma-separated list of all the supplemental items that are associated with the base product. The number of items in the list must be less than or equal to the specified maximum value. Valid values: strings containing item codes.
Example
  • Mandatory multiple select option. Customers must select at least one supplemental item with no maximum limit:

    [{"minimum": 1, "items": ["1111111111111111", "2222222222222"]}]

  • Mandatory single select option. Customers can select only one supplemental item, and this item is required.

    [{"minimum": 1, "maximum": 1, "items": ["1111111111111111", "2222222222222"]}]

  • Optional multiple select option. Customers may or may not select a supplemental item, and there is no maximum limit.

    [{"minimum": 0, "items": ["1111111111111111", "2222222222222"]}]

  • Optional single select option. Customers may or may not select a supplemental item, but can only select one item.

    [{"minimum": 0, "maximum": 1, "items": ["1111111111111111", "2222222222222"]}]

  • Combination of mandatory and optional items. The base product has both mandatory and optional groups of supplemental items with or without minimum and maximum amounts.

    [{"minimum": 1, "items": ["11111111111111", "22222222222222"]}, {"minimum": 0, "items": ["33333333333333", "44444444444444"]}]

    Note

    There is no limit to the number of supplemental item groups that can be added for every base product. Each group must be added as comma-separated values.

ReturnDays
  • Integer—defines the number of days that an item is eligible for return. If this attribute is not set, then the item falls under the default (EOM) return days policy.
Note

This attribute is only intended for items that fall outside of the default return days.

ReturnReasonNotRequired
  • true—indicates that the POS does not prompt for a return reason code if the item is returned.
  • false—indicates that the POS prompts for a return reason code if the item is returned.