Production Tenant Features
Catalog
- Configurable Variant Property Limit per Product Type: Merchants can now configure the maximum number of variant properties allowed on a product type beyond the previous hard limit of 30. A new tenant attribute,
catalog.productType.maximumVariantProperties, controls this limit on a per-tenant basis, with a default of 30. The Product Type admin page, Product Edit page, and Active Properties modal all function correctly when the configured limit exceeds 30, and the related API endpoints return all variant attribute values without truncation. Import and Export operations are also subject to the same limit enforcement. - “Block Discounts That Cancel Their Own Minimum” Setting in Discount Condition Settings: A new toggle — “Block discounts that cancel their own minimum” — is now available under System → Discount Settings → Condition Settings. When enabled, this setting
(rejectSelfDefeatingDiscounts)prevents a discount from applying if applying it causes the order to fall below the discount’s own configured minimum. The toggle is off by default and includes a tooltip explaining its behavior. The setting is localized across all supported Admin UI locales (English, German, Spanish, French, Japanese, Korean). The existing “Include discounts for order min/max condition evaluation” toggle is unaffected. - Dynamic Price List Hierarchy Exposed as Product Property: The Product Runtime service now captures the dynamic price list hierarchy produced by the
GetPriceListHierarchyArc action and exposes it as a product property(system~DPLH)on the price object. When the Arc action modifies the hierarchy relative to the default, thesystem~DPLHproperty is populated inGetProductandValidateProductAPI responses, listing the price list codes from most-specific to least-specific. The property is hidden from shoppers and is omitted entirely when the hierarchy is unchanged or no Arc action is configured. This is an additive change to the API contract; existing integrations are not affected.
Commerce
- Payments - Support for Externally Tokenized Payment Instruments: Processing payments using tokens issued by an external payment token provider is now supported, allowing card and other instrument data to remain securely outside the platform (entirely skipping the KIBO vault) while payments are still authorized, captured, voided, and credited as usual. This gives businesses added flexibility in how they manage payment credentials, while preserving all existing payment behavior for those who continue using standard tokenization.
Inventory
- Send Negative Inventory in Export files: Merchants whose inventory positions can fall below zero can now receive those accurate negative quantities in scheduled inventory export files. A new export setting,
sendNegativeInventory, allows export configurations to pass through real negative available quantities rather than clamping them to zero. When this setting is disabled (the default), export behavior remains unchanged — negative quantities continue to appear as 0 in the file, preserving existing behavior for all other merchants.
Production Bug Fixes
Production Sandbox Features
Catalog
- Variant Product Code Search in Catalog Admin
Merchants can now search for products in the Catalog Admin using variant (child SKU) product codes. A new dedicated Variant Product Code field is available in the Advanced Filter panel on the product list page, allowing users to locate a configurable product’s variant directly by its code. Previously, the product list search only matched on base product codes and product names, meaning users who knew only the variant code received no results and had to look up the corresponding base product code separately. The new field can also be used via the quick-filter textbox.
Fulfillment
- Multi-Package Receiving for Transfer Shipments Store associates and fulfillment operators can now receive transfer shipments on a package-by-package basis. Previously, a transfer shipment could only be received as a single, all-or-nothing action. With multi-package receiving, each individual package within a shipment can be scanned or manually acknowledged as it arrives — by tracking number or through item-level validation — independently of the others. The shipment transitions to a Partially Received state as packages arrive and automatically completes to Received/Fulfilled once all packages have been accounted for.
- Configurable On-Complete Pop-ups and Dashboard Redirect for Workflow Steps Tenants can now configure step-specific behaviors — an instructions pop-up and/or an automatic redirect to the shipments dashboard — for any BPM workflow step in the Fulfillment application, including both out-of-the-box and custom steps. These behaviors are triggered only when the associate clicks Continue; Skip and Back are unaffected.

