Overview

This release note outlines the updates and enhancements introduced in version 8.17.9 of the Infosys Equinox Commerce platform, including technical improvements, functional changes, and security and vulnerability fixes. The release focuses on key areas such as Loyalty and Rewards, CSR Admin Console functionalities, and Product Bill of Materials (PBOM) enhancements.

Loyalty and Rewards Enhancements

The following enhancements have been made to configure reward for consistent subscription spending.

Business Use Case: When a user places a subscription order for a configurable period (e.g., 3 months), they become eligible for rewards based on cumulative spend:

  • Spend $100/month for 3 consecutive months → Earn a $50 voucher
  • Spend $250/month for 3 consecutive months → Earn a $150 voucher

To achieve the above, the following API & functional changes have been implemented:

API/Technical Changes

Order Service Enhancements

The Order service has been enhanced to include the following:

  • The subscription order’s subtotal value is passed from the Order service to the Loyalty service to determine voucher eligibility based on the order subtotal.
  • The subscription returns order’s subtotal value is passed with the ‘Return’ order type and the parent order date.
  • The store ID is passed to both the Transaction API and the Apply Rewards API.
  • A new flag, isFromOrchestration="false", is passed to prevent the application of internal rewards.
  • Detailed discount breakdowns for loyalty rewards, along with the type of reward group, are passed to the Loyalty service.

Loyalty Enhancements

The Loyalty service has been enhanced to include the following:

  • Changes in Action Class – Loyalty Reward Action: The “Earn Point Action” class has been renamed and updated to “Loyalty Reward Action”. Any loyalty point earning rules are now configured using the Loyalty Reward Action class under Rule Type 1.
  • New Loyalty Reward Action: A new loyalty action class, “Loyalty Rewards Action” has been introduced to issue rewards based on the order subtotal and loyalty-eligible value. This action also resets the subscription counter as needed, depending on additional parameters.
  • Voucher Entity Enhancements: The existing Voucher Entity has been updated to include new properties for capturing voucher details and the effective activation date.
  • New CSM Earn Reward Action: A new loyalty action class, “CSM Earn Reward Action” has been introduced to instantly issue vouchers with a configurable effective date, based on eligible voucher scenarios.
  • New CSM Return Action: A new loyalty action class, “CSM Return Action” has been introduced to degrade vouchers based on the return-eligible value.
  • Create Rule API Enhancements: The “Create Rule” API has been enhanced to support the creation of loyalty rules based on Rule Types.
  • Create Reward API Enhancements: The “Create Reward” API now supports the creation of rewards with reward groups.
  • Get Loyalty Rewards API Enhancements: The “Get Loyalty Rewards” API has been updated to support internal rewards.
  • Transactions API Enhancements: The “Transactions” API now includes new transaction loyalty types such as “Add” and “Remove” to support voucher issuance and returns.
  • Store ID Support in APIs: Both the “Transactions” API and “Apply Rewards” API have been enhanced to accept Store ID as an input parameter and apply it during transaction creation.
  • Voucher Activation and Redemption Support: Added support to activate vouchers based on their effective date and allow redemption based on expiry time.

Cart Enhancements

  • A “Price Facet Breakup” node has been introduced in the Cart service to display detailed discount breakups for loyalty rewards based on the new store property excludeRewardValue.
  • Redeem Rewards by Cart Value: A new store-level property, excludeRewardValue, has been added to provide voucher redemption based on the cart value.

Notification Enhancements

  • Added functionality to trigger notifications based on different loyalty transaction types (such as ADDED and REMOVED).

Admin Orchestrations & Storefront Orchestrations Services

The “Get Calculated Cart” API in both Admin Orchestrations and Storefront Orchestrations have been enhanced to:

  • Enabled voucher redemption based on the store property excludeRewardValue.
  • Added a “Price Facet Breakup” node in the GET Calculated Cart API to display the breakdown of discounts from loyalty and promotion details under the Cart Controller.
  • Updated the “Get Loyalty by ID” and “Get Transactions” APIs to include:
    • Voucher effective date under the Voucher Entity.
    • Support for new transaction types.

Functional Changes

Loyalty Admin Console Changes

The following updates have been introduced to manage loyalty and rewards in the Loyalty Admin console:

  • Loyalty Rule Creation: A new input parameter, “Rule Type”, has been introduced during loyalty rule creation to fetch and associate the corresponding rule type.
  • Reward Creation: A new input parameter, “Reward Group”, has been added during reward creation to identify and categorize the type of rewards being created; for example, Internal Reward and External Rewards.
  • Loyalty Transaction Enhancements: Added two new transaction types, “ADDED” and “REMOVED” in addition to the existing transaction types (such as EARNED, APPROVED, FORFEIT, REDEEM, REVERSE REDEEM, and EXPIRED), have been introduced to provide reward adjustments.

Foundation Admin Changes

The following changes have been made at the store level in the Foundation Admin Console to enhance the loyalty redemption capabilities:

  • Redeem Rewards by Cart Value or Total Order Value: A new store-level property, excludeRewardValue, has been added to determine whether loyalty rewards can be redeemed based on the cart value or the total order value. When the value is set to:
    • True: Redemption is based on the cart value. The value of currently redeemed vouchers is excluded when calculating the promotion-eligible amount. This is default.
    • False: Redemption is based on the total order value.

Ultra Admin Changes

  • Changes in the CSR Ultra Admin under customer Loyalty tab by displaying only external rewards.
  • Ability to show the voucher effective date for the available vouchers under customer loyalty profile & voucher wallet while placing an order.
  • Ability to show the new transaction types “Added & Removed” under the transaction details.

The following new features or enhancements have been made in the Ultra Admin console changes

  • Updated the CSR Ultra Admin under customer’s Loyalty to display only external rewards.
  • Ability to display the voucher effective date for available vouchers in the Loyalty section of the customer profile and Voucher Wallet during order placement.
  • Introduced support for new transaction types “Added” and “Removed” under the Transaction details section.

Ultra Storefront Changes

The following new features or enhancements have been made in the Ultra Storefront console changes:

  • Ability to display the voucher effective date for available vouchers in the Loyalty section of the customer’s profile and Voucher Wallet section during order placement.
  • Introduced support for new transaction types “Added” and “Removed” under the Transaction details section.

Ultra Admin Functional Changes

Add Missing Customer DOB

CSR Admins can now add a customer’s Date of Birth if it is empty or null.

If a DOB already exists, it cannot be updated.

Field Visibility Configuration for Account Details

CSR Admins can now manage the visibility of specific fields on the Account Details and Customer Details cards based on configuration settings. Previously, field visibility was configurable only within the Update Account and Customer drawers. With this enhancement, the same configuration (nonDisplayableAttribute under accountsExtension or customerExtension) now applies to the view cards as well. This ensures consistent field-level control across both edit and view experiences, allowing CSR Admins to tailor account information display based on business requirements.

Editable Account Name for Brand Affiliate – Business Entity

CSR Admins can now update the Account Name for accounts classified as Brand Affiliate – Business Entity. Previously, the accountName field was disabled via the nonEditableAttribute configuration. With this enhancement, a new configuration (EditableAccountNameField) allows the field to be editable specifically for this account type. All other account types remain unaffected by this change.

Product & Direct Seller Tags Visibility During CSR Order Creation

CSR Admins can now view product type tags (e.g., Bundle, SKU Kit) on PLP and PDP during CSR order creation.

Direct Seller tags are displayed for products with the property locallyProduced set to false.

Purchase Rules:

Configuration

Explanation

locallyProduced = false

Only BA & BA-Business Entity can purchase. For Preferred Members & Retail Customers, the Add to Cart button is disabled and displays a message on PDP: “Note: Click on Act on Behalf button to capture the interested user’s information on the storefront.

locallyProduced = true or not defined

Available to all users.

Direct Seller Tag Visibility for CSR Admins

CSR Admins can now view Account Type Tags for Customers and Accounts directly on their respective view pages. If the earningsMet property is set to false, the tag will display as Direct Seller. If earningsMet is true, the standard Account Type Tag will be shown. This configuration is optional—if not enabled, the default Account Type Tag will be displayed regardless of earnings status.

Loyalty Tab Restriction for India Market

CSR Admins can now restrict access to the Loyalty tab on the Customer Profile page for the India Market. A new configuration "disableTabs": [loyalty] has been introduced in customerExtension store property to disable the Loyalty tab visibility based on market-specific requirements. By default, all tabs remain visible unless explicitly disabled through this configuration. Note, this configuration only hides the tab from the UI. Direct access via URL remains unaffected. Additionally, the existing configuration to disable Loyalty features during CSR Order creation remains unchanged.

Brand Affiliate & Brand Affiliate-BE Price Facets: Member Pricing Update

For the India market, the following pricing logic has been implemented:

  • Direct Sellers (Brand Affiliate & Brand Affiliate-Business Entity) users who have not met the market earning threshold) will now see Member Price applied.
  • Brand Affiliates & Brand Affiliate-BE users who have met the threshold will continue to receive Wholesale Price.

To enable this functionality, a new configuration overrideDisableAccountTypePriceFacets in the JSON format has been added to the rulesExtension store property.

Mandatory Price Facets for Promotions

Promotion Admins can now configure mandatory additional price facets (e.g., PV, CV, Wholesale Price) using the mandatoryOfferOnOtherValues store property. These facets will appear on the promotion creation screen and can be used to apply promotion offers.

MRP Display Across Order Screens

CSR Admins can now view MRP for products across all order and subscription screens, including PLP, PDP, Cart Details.

Applicable to all account types (e.g. Brand Affiliate, Brand Affiliate-Business Entity, Preferred Member, Retail Customers, and so on) for the India market.

Member Pricing for Preferred Members

Member Price and Sub Member Price facets are now applied to Preferred Members/Customers. These price facets appear across all relevant areas, including order and subscription screens, PLP, PDP, SKU drawers, cart, view and update screens, invoices, and more.

They apply to all product types (including Bundle/Kit sub-items) and support promotions and strikethrough pricing like other price types.

Tax-Inclusive Pricing for CSR Admins

CSR Admins can now view tax-inclusive product pricing across the store to ensure accurate cart additions and payment processing. Tax-inclusive prices are displayed in the Item List drawer, SKU Selection drawer, Cart (for both normal Orders and Subscriptions Orders), view and update screens, and more. This tax-inclusive prices applies to all product types and user/account types.

Legal Tax Info Now Optional for CSR/WIC Orders in LATM

Providing Legal Tax Information is now optional on CSR/WIC order and subscription creation pages.

Orders can be placed without requiring legal details, reversing the previous restriction for LATM regions.

Legal Tax Management Enhancement

Legal Admins (only applicable based on CSR Admin extension) now have extended capabilities to manage Legal Tax information within the Account Profile module. Previously, Legal Admins could only edit existing Legal Tax data. With this enhancement, they can also add Legal Tax information for customer accounts where it is missing. This update applies exclusively to the Legal Admin role and does not affect CSR Admins or WIC Admins, who continue to have no access to add or edit Legal Tax details. All existing functionalities related to editing Legal Tax remain unchanged.

Card Payments Support Without Billing Address

CSR Admins can now create or update Customer Card payment details without a Billing Address, based on country-specific configurations:

  • Optional Countries: Cards without a billing address can be created/updated and used for order payments.
  • Mandatory Countries: Billing address is required for card creation/update. Cards without a billing address will be disabled for payments until updated.

Payment Updates for Expired Cards

CSR Admins can now update expired customer card details, allowing customers to use the updated card for order and subscription payments.

Previously, expired cards could not be selected for payment.

Payment Method Limits for CSR Order Creation

CSR Admins can now select up to 5 Credit Cards and 5 Dropbox/EFT POS/WeChat options during CSR Order creation. This configuration ensures streamlined payment management and aligns with the default system limits set for each payment method.

Resend Submitted Orders to Third-Party Systems

From the Order List and Order View pages, CSR Admins can now resend orders with status “Submitted to Fulfillment” and “Return Submitted” to the configured third‑party systems to ensure order synchronization.

Multiple Replacement Support for CSR Orders

CSR Admins can now perform multiple replacements for a single order, enabling greater flexibility in fulfilling customer requests. This enhancement is controlled via a new configuration allowMultipleReplace set to true in the ordersExtension store property. By default, multiple replacements are disabled unless explicitly enabled through this setting.

When enabled, CSR Admins can initiate replacements even if the order has already been fully or partially replaced. The system supports complete quantity replacements and also allows remaining quantity replacements when partial returns have occurred. Additionally, the same configuration enables the ability to return items from existing replacement orders, ensuring comprehensive order management.

Drop Shipment Enhancement for CSR Orders

CSR Admins can now mark an order as Drop Shipment based on the customer’s shipping address, with updated logic specific to certain markets. Previously, the Drop Shipment checkbox was available for all account types when the shipping address differed from the default and the customer’s first and last names were different. With this enhancement, the Drop Shipment option is now restricted to Brand Affiliate and Brand Affiliate – Business Entity account types only.

The condition to display the Drop Shipment checkbox remains unchanged. Additionally, when Drop Shipment is selected, the Gift Receipt and Gift Message checkboxes will be auto-selected.

Refund Shipping Charges Now Available for Return Orders

CSR Admins can now choose to refund shipping charges during the return order process for applicable markets. This feature is enabled via configuration and applies across all applicable regions.

If the original order has no shipping charges, the refund option will be disabled. If shipping charges exist, CSR Admins will see a checkbox to include the shipping amount in the refund. Selecting this checkbox adds the original shipping charge to the total refund value; leaving it unchecked excludes it.

For partial return orders, the refund for shipping charges is allowed only once. In subsequent partial returns for the same order, the checkbox will be disabled to prevent duplicate refunds.

Shipping Address & Method Selection for WIC Order Replacements

CSR Admins can now optionally select a Shipping Address and Shipping Method when replacing WIC Orders, supporting both in-store and online fulfillment scenarios. Previously, WIC Orders were replaced only within the store. With this enhancement, a checkbox labeled “Ship To Address” is introduced during the replacement flow. When selected, it enables the CSR Admin to choose a shipping address and method for the replacement order.

Product Bill of Materials Enhancements

API/Technical Changes

Catalog Service

  • The Catalog Service now supports the creation of Fixed SKU Kit products. To create a Fixed SKU Kit product, include the following attribute in the request payload in the Create Product API:
    "AttributeId": "producttype",
    "Value": "fixedKit"
  • The Catalog Service now supports the creation of bundle products that include SKU Kits and Fixed Kits as components.
    To create a bundle product, use the following request payload structure in the Create Product API:
    "producttype": "bundle"
  • Include the desired SKU Kit or Fixed Kit products using the following attributes:
    • bundlemandatoryproductids” – for mandatory components of the bundle
    • bundleoptionalproductids” – for optional components of the bundle

Cart Service

  • The cart CRUD APIs have been modified to accept products with the following attribute in the request payload:
    "producttype": "FixedKit"

    A new entity named Bundle has been introduced within the SKUs property under the Items section of the Cart model.

  • The Cart Checkout API has been enhanced to support proration for FixedKit products. This update introduces a new header parameter and improves pricing accuracy for bundled items.
    • Added a new header parameter: BundleProrationItemIds, which accepts a list of item IDs for proration.
    • FixedKit price and price facets are prorated across sub-SKUs based on their quantity and price.

Admin Orchestration Services

  • Admin Orchestration (AO) has been updated to support the FixedKit wrapper product type for PDP. The following controllers are now enabled for FixedKit: Prices, Promotions, and Inventory.
  • Bundle Product Support for FixedKit Items: Added support for creating Bundle products that include FixedKit Users can now add multiple SKU Kits and Fixed Kits to a single bundle.

Storefront Orchestration Services

Proration Support in Cart Checkout

  • Added support for FixedKit proration in the Cart Checkout flow.
  • The BundleProrationItemIds parameter is now configured for PDP in the Storefront Orchestration services, ensuring accurate representation of bundle items during checkout.

Feed Job Service

Reindexer Support for FixedKit Products:

  • Reindexer now supports FixedKit products similar to SKU Kits.
  • Price and inventory logic is applied accurately based on the FixedKit wrapper product.
  • Reindexing is triggered using the product attribute:
    "producttype": "fixedkit"

Reindexer Support for Bundles with FixedKit Products:

Reindexer logic has been enhanced to support Bundle products containing FixedKit items, ensuring accurate price and inventory calculations:

  • Price for the bundle is computed after evaluating the prices of its FixedKit components.
  • Inventory for the bundle is derived from the inventory of the FixedKit items.
  • For FixedKit products, both price and inventory are calculated using the wrapper product.

Catalog Feed Support for FixedKit Products

Enhanced catalog feed functionality to support FixedKit products across import, approval, and export operations:

  • Import Feed: FixedKit product details can now be imported via the Catalog Import Feed.
  • Approval Feed: FixedKit products can be moved from a Project to the Default Project using the Catalog Approval Feed.
  • Export Feed: FixedKit product details can be exported using the Catalog Export Feed.

Functional Changes

Create Fixed Kit Products in Catalog Admin

A new product type “Fixed Kit” can now be created in the Catalog Admin when adding a new item. This type is similar to existing options such as Bundle, SKU Kit, Fixed Bundle, Collection, Product, and SKU.

  • New option in Type dropdown: Select Fixed Kit when creating an item.
  • Add multiple SKUs: Build a kit by adding SKUs as sub-items.
  • Set price & inventory at the product level: Control the Fixed Kit as a single product.
  • Independent pricing: The Fixed Kit price is separate from individual SKU prices.

Add Fixed Kits & SKU Kits as a Bundle in Catalog Admin

You can now create or update bundles in Catalog Admin:

  • Add Fixed Kits or SKU Kits as sub-items in a bundle.
  • Mark sub-items as mandatory or optional.
  • Previously, only individual SKUs could be added to a bundle.

Fixed Kit and Bundle Changes in Ultra Admin Console (CSR Component)

Product Detail Page

  • The Fixed Kit displays only the wrapper product price in PLP and PDP.
  • All sub-items in a Fixed Kit are mandatory and cannot be deselected (no radio button option is available).

Cart Page

  • The View Cart page displays the Fixed Kit’s price and quantity at the wrapper level.
  • Cart proration logic for Fixed Kit products has been implemented to reflect the actual price.

Order View Page

  • The Order View page displays the wrapper product’s price and quantity for Fixed Kit products.
  • A View Sub-items dropdown is available at the order item level to expand and view the status of sub-items in a Fixed Kit.
  • For bundles that include a Fixed Kit product, the View Sub-items dropdown is also available for both bundle components and Fixed Kit sub-items.

Technology Maintenance & Upgrades

  • Spring Boot upgraded from v3.4.6 to v3.5.4 for enhanced performance, native image support.
  • Spring Cloud updated from 0.1 to v2025.0.0, aligning with Spring Boot 3.5.x and improving cloud-native capabilities.
  • Spring Data JPA moved to 4.6 to v3.5.1, offering better query performance and support for Jakarta Persistence 3.1.
  • Queue type migration for compatibility with RabbitMQ v4.x.
  • MongoDB upgraded to v8.0 for improved performance, security, and feature set.

Open-Source Library Vulnerability Fixes

The unique security vulnerability that has been patched into the Infosys Equinox Commerce platform is 75 vulnerabilities.

The total number of vulnerabilities closed is: 2878

Vulnerability severity levels are as follows:

  • Critical: 64
  • High: 1480
  • Medium: 1146
  • Low: 188

Revision History
2025-10-31 | JP – Added Release 8.17.9 content.