{
    "version": "https://jsonfeed.org/version/1",
    "title": "Elastic Path Documentation Blog",
    "home_page_url": "https://elasticpath.dev/changelog",
    "description": "Elastic Path Cloud Services Changelog",
    "items": [
        {
            "id": "https://elasticpath.dev/changelog/2026/04/16/2026/changelog",
            "content_html": "<p><strong>MINOR</strong> Introduced Shopper and Admin Custom Attributes for Products</p>\n<p>Merchandisers and integrators can now attach flexible string metadata to products in two visibility tiers—catalog-visible <strong>shopper</strong> attributes and <strong>admin-only</strong> attributes—using the same model already established for hierarchy nodes.</p>\n<p>What's New?</p>\n<p>Extended the PIM product model with <code>shopper_attributes</code> and <code>admin_attributes</code>: optional maps of string keys to string values, validated consistently with nodes (including limits on the number of keys and on name and value length).</p>\n<p>Product APIs support creating, updating, and reading these fields on products; persisted data is stored on the product document for downstream catalog and administration flows.</p>\n<p>Product lifecycle events for create and update now include shopper and admin custom attributes where applicable, so downstream consumers can react without an extra round trip.</p>\n<p>CSV <strong>export</strong> can emit custom attribute columns using the <code>shopper_attributes.</code> and <code>admin_attributes.</code> prefixes; <strong>selective exports</strong> use <code>columns.include</code> with either explicit keys or a per-type wildcard (<code>shopper_attributes.*</code> / <code>admin_attributes.*</code>), with validation that prevents combining a wildcard and individual columns for the same attribute type in one request.</p>\n<p>CSV <strong>import</strong> understands the same column naming, so bulk workflows can round-trip attribute data alongside core product fields.</p>\n<p>For variant matrices, <strong>new</strong> child products inherit the base product’s shopper and admin attributes at build time; <strong>rebuild</strong> reconciles parent keys onto matched existing children so shared parent metadata stays aligned while child-specific keys remain unless the parent removes them.</p>\n<p>This release brings product custom attributes in line with hierarchy behavior and reduces the need for parallel systems or workarounds for storefront versus internal metadata.</p>\n<p>For details see:</p>\n<ul>\n<li><a href=\"https://elasticpath.dev/guides/key-concepts/product-experience-manager/custom-attributes\">Custom attributes on products</a></li>\n</ul>",
            "url": "https://elasticpath.dev/changelog/2026/04/16/2026/changelog",
            "title": "Shopper and Admin Custom Attributes on Products",
            "summary": "MINOR Introduced Shopper and Admin Custom Attributes for Products",
            "date_modified": "2026-04-16T00:00:00.000Z",
            "tags": [
                "Products",
                "PIM",
                "Commerce Manager",
                "Hierarchies"
            ]
        },
        {
            "id": "https://elasticpath.dev/changelog/2026/03/02/2026/changelog",
            "content_html": "<p><strong>MINOR</strong> Custom Attribute-Based Condition for Cart Items</p>\n<p>You can now target cart items based on their custom attributes when creating promotions in Promotions Builder.</p>\n<p>What's New?</p>\n<ul>\n<li><strong>Custom attributes on cart items</strong> - Specify custom attributes to be added to cart items for use in promotional targeting.</li>\n<li><strong>Custom attribute targeting</strong> - Create promotion conditions that target cart items by their custom attributes, enabling more precise promotional rules.</li>\n</ul>\n<p>For details see:</p>\n<ul>\n<li><a href=\"https://elasticpath.dev/guides/How-To/promotions-builder/item-custom-attribute-promotion\">How to create promotion with item custom attribute</a></li>\n<li><a href=\"https://elasticpath.dev/docs/api/carts/cart-items\">Cart Items</a></li>\n<li><a href=\"https://elasticpath.dev/docs/api/promotions-builder/create-rule-promotion\">Promotions Builder API</a></li>\n</ul>\n<!-- -->\n<grid class=\"grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 gap-6\"><a class=\"block rounded-3xl overflow-hidden hover:bg-gray-100 hover:shadow-md shadow-lg transition-shadow duration-200 no-underline hover:no-underline dark:bg-gray-900 undefined\"><div class=\"aspect-video\"><iframe class=\"w-full h-full object-cover\" src=\"\" title=\"Embedded video\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen=\"\"></iframe></div><div class=\"px-4 py-2\"><div class=\"font-bold text-lg mb-2\">Item custom attribute conditions update</div><div class=\"text-gray-700 dark:text-white text-sm font-normal pb-4\">Item custom attribute conditions update in Commerce Manager</div></div></a></grid>",
            "url": "https://elasticpath.dev/changelog/2026/03/02/2026/changelog",
            "title": "Custom Attribute-Based Condition for Cart Items",
            "summary": "MINOR Custom Attribute-Based Condition for Cart Items",
            "date_modified": "2026-03-02T00:00:00.000Z",
            "tags": [
                "Commerce Manager",
                "Promotions Builder",
                "Carts & Orders"
            ]
        },
        {
            "id": "https://elasticpath.dev/changelog/2026/02/26/2026/changelog",
            "content_html": "<p><strong>MINOR</strong> Location-Based Cart Item Separation</p>\n<p>You can now control how cart items with the same SKU but different inventory locations are handled. When the <code>separate_items_by_location</code> setting is enabled, items with the same SKU are kept as separate line items based on their location instead of being merged.</p>\n<p>What's New?</p>\n<ul>\n<li>\n<p><strong>Location-based item separation</strong> - Enable or disable location-based item separation by setting <code>separate_items_by_location</code> to <code>true</code> or <code>false</code>. When enabled, cart items with the same SKU but different inventory locations are kept as separate line items instead of being merged.</p>\n<ul>\n<li>Can be set at the store level or for individual carts with the setting: <code>\"item_settings\": { \"separate_items_by_location\": true }</code>. By default, it is <code>false</code>.</li>\n</ul>\n</li>\n<li>\n<p>For details see:</p>\n</li>\n<li>\n<p><a href=\"https://elasticpath.dev/docs/api/carts/put-v-2-settings-cart\">Carts settings API</a></p>\n</li>\n<li>\n<p><a href=\"https://elasticpath.dev/docs/api/pxm/inventory_mli/inventories-introduction#multi-location-inventories\">Multi location inventories</a></p>\n</li>\n<li>\n<p><a href=\"https://elasticpath.dev/docs/api/carts/manage-carts#stock-locations\">Cart item with location API</a></p>\n</li>\n</ul>",
            "url": "https://elasticpath.dev/changelog/2026/02/26/2026/changelog",
            "title": "Location-Based Cart Item Separation",
            "summary": "MINOR Location-Based Cart Item Separation",
            "date_modified": "2026-02-26T00:00:00.000Z",
            "tags": [
                "Carts & Orders"
            ]
        },
        {
            "id": "https://elasticpath.dev/changelog/2026/02/23/2026/changelog",
            "content_html": "<p><strong>MINOR</strong> Max Units Limitation for Promotions</p>\n<p>You can now set a maximum quantity limit across all eligible items in a promotion. This new <strong>Maximum discounted quantities across all eligible items</strong> option allows you to cap the total number of units that receive a discount.</p>\n<p>What's New?</p>\n<ul>\n<li><strong>Cross-item unit cap</strong> - Set a total unit limit that applies across all eligible SKUs, not per-SKU</li>\n</ul>\n<p>For details see:</p>\n<ul>\n<li><a href=\"https://elasticpath.dev/guides/How-To/promotions-builder/item-discount-with-max-units-limitation\">Creating an Item Discount with Max Units Limitation Guide</a></li>\n<li><a href=\"https://elasticpath.dev/docs/api/promotions-builder/create-rule-promotion\">Rule Promotions API</a></li>\n</ul>",
            "url": "https://elasticpath.dev/changelog/2026/02/23/2026/changelog",
            "title": "Max Units Limitation for Promotions",
            "summary": "MINOR Max Units Limitation for Promotions",
            "date_modified": "2026-02-23T00:00:00.000Z",
            "tags": [
                "Commerce Manager",
                "Promotions Builder"
            ]
        },
        {
            "id": "https://elasticpath.dev/changelog/2026/02/18/2026/changelog",
            "content_html": "<p><strong>MINOR</strong> External Reference ID for Shipping Groups</p>\n<p>Cart and order shipping groups now support an <code>external_ref</code> field, enabling merchants to link shipping groups to external systems such as ERPs.</p>\n<p>What's New?</p>\n<ul>\n<li><strong>External reference field</strong> - Shipping groups support an <code>external_ref</code> field for integration with external systems. Set it when creating cart shipping groups, or update it on existing cart or order shipping groups without\naffecting other data.</li>\n<li><strong>Checkout persistence</strong> - When a cart with shipping groups is checked out, the <code>external_ref</code> values are preserved on the resulting order shipping groups</li>\n</ul>\n<p>For details see:</p>\n<ul>\n<li><a href=\"https://elasticpath.dev/docs/api/carts/create-shipping-group\">Cart Shipping Groups</a></li>\n</ul>",
            "url": "https://elasticpath.dev/changelog/2026/02/18/2026/changelog",
            "title": "External Reference ID for Shipping Groups",
            "summary": "MINOR External Reference ID for Shipping Groups",
            "date_modified": "2026-02-18T00:00:00.000Z",
            "tags": [
                "Carts & Orders"
            ]
        },
        {
            "id": "https://elasticpath.dev/changelog/2026/02/12/2026/changelog",
            "content_html": "<p><strong>MAJOR</strong> Custom API Navigation Placement</p>\n<p>Users can now configure where Custom APIs appear in the Commerce Manager navigation sidebar, providing greater flexibility in organizing their workspace.</p>\n<p>What's New?</p>\n<ul>\n<li><strong>Navigation placement</strong> - Choose which main section your Custom API appears under: Home, Merchandise, Orders, Subscriptions, Composer, Extensions, or Settings</li>\n<li><strong>Sub-section nesting</strong> - Optionally nest Custom APIs under specific sub-sections within a main section (e.g., Products within Merchandise)</li>\n</ul>\n<!-- -->\n<grid class=\"grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 gap-6\"><a class=\"block rounded-3xl overflow-hidden hover:bg-gray-100 hover:shadow-md shadow-lg transition-shadow duration-200 no-underline hover:no-underline dark:bg-gray-900 undefined\"><div class=\"aspect-video\"><iframe class=\"w-full h-full object-cover\" src=\"\" title=\"Embedded video\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen=\"\"></iframe></div><div class=\"px-4 py-2\"><div class=\"font-bold text-lg mb-2\">Custom API Navigation Placement</div><div class=\"text-gray-700 dark:text-white text-sm font-normal pb-4\">Custom API Navigation Placement in Commerce Manager</div></div></a></grid>\n<p>For details see:</p>\n<ul>\n<li><a href=\"https://elasticpath.dev/docs/commerce-manager/commerce-extension/commerce-extension-in-cm#custom-api-navigation-placement\">Commerce Extensions in Commerce Manager</a></li>\n</ul>",
            "url": "https://elasticpath.dev/changelog/2026/02/12/2026/changelog",
            "title": "Custom API Navigation Placement in Commerce Manager",
            "summary": "MAJOR Custom API Navigation Placement",
            "date_modified": "2026-02-12T00:00:00.000Z",
            "tags": [
                "Commerce Manager",
                "Commerce Extensions"
            ]
        },
        {
            "id": "https://elasticpath.dev/changelog/2026/02/10/2026/changelog",
            "content_html": "<p><strong>MAJOR</strong> Catalog Search - Built-in Search for Your Storefront</p>\n<p>Elastic Path now includes <strong>Catalog Search</strong>, a fully integrated search service that provides fast, relevant product discovery for your storefront. Search is built directly into Elastic Path Commerce Cloud and your catalogs, eliminating the need for third-party search vendors and complex integration work.</p>\n<p>What's New?</p>\n<ul>\n<li><strong>Store search enablement</strong> - Enable search for your store or organization and go live without configuring a separate search provider.</li>\n<li><strong>Automatic catalog indexing</strong> - When you publish a catalog, products are automatically indexed and become searchable. Multiple catalogs (e.g., live and pre-live) can be indexed simultaneously, with catalog rules and shopper context controlling which catalog a shopper searches.</li>\n<li><strong>Configurable searchable attributes</strong> - Control which product fields drive search results, including product name, description, SKU, and custom extended attributes from your templates.</li>\n<li><strong>Faceted search and filtering</strong> - Shoppers can filter results by categories, attributes, price ranges, and more. Configure which attributes are facetable to power your filtering UI.</li>\n<li><strong>Sorting</strong> - Sort search results by relevance, price, or custom attributes.</li>\n<li><strong>Typeahead and keyword search</strong> - Provide instant suggestions as shoppers type, guiding them toward the right products and categories.</li>\n<li><strong>Search profiles</strong> - Create different search behaviors for different use cases. Weight fields differently (e.g., emphasize size and material for rugs, finish and style for lighting), apply filters, and configure boost rules.</li>\n<li><strong>Query boosting</strong> - Promote or demote products based on categories, tags, or attribute values. Boost seasonal collections, featured products, or sale items to the top of results.</li>\n<li><strong>InstantSearch.js adapter</strong> - Integrate search into your storefront using the popular InstantSearch.js library with our adapter package.</li>\n</ul>\n<p>For details see:</p>\n<ul>\n<li><a href=\"https://elasticpath.dev/docs/commerce-manager/product-experience-manager/catalog-search/overview\">Catalog Search Overview</a> - Enable search for your store</li>\n<li><a href=\"https://elasticpath.dev/docs/commerce-manager/product-experience-manager/catalog-search/indexing\">Indexing</a> - Configure searchable attributes</li>\n<li><a href=\"https://elasticpath.dev/docs/commerce-manager/product-experience-manager/catalog-search/profiles\">Profiles</a> - Set up search profiles and boosting rules</li>\n<li><a href=\"https://elasticpath.dev/guides/How-To/Catalogs/Search/setting-up-search\">Setting Up Catalog Search (API)</a> - API-based configuration</li>\n<li><a href=\"https://elasticpath.dev/docs/developer-tools/fundamentals/product-discovery/how-to/instantsearch-adapter\">InstantSearch Adapter</a> - Build search UIs with InstantSearch.js</li>\n</ul>",
            "url": "https://elasticpath.dev/changelog/2026/02/10/2026/changelog",
            "title": "Introducing Catalog Search",
            "summary": "MAJOR Catalog Search - Built-in Search for Your Storefront",
            "date_modified": "2026-02-10T00:00:00.000Z",
            "tags": [
                "Product Experience Manager",
                "Catalogs",
                "Search",
                "Commerce Manager"
            ]
        },
        {
            "id": "https://elasticpath.dev/changelog/2026/02/05/2026/changelog",
            "content_html": "<p><strong>MAJOR</strong> New Custom Field Types for Custom APIs</p>\n<p>What's New?</p>\n<p>Two new Custom Field types have been added to allow even more extensibility in Custom APIs:</p>\n<ul>\n<li><strong>List Field Type</strong> - Store Administrators can now create Custom Fields with the <code>list</code> field_type to store array of simple values (string, integer, boolean, float). This type support a range of validation and filtering options.</li>\n<li><strong>Any Field Type</strong> - Store Administrators can now create Custom Fields with the <code>any</code> field_type to store arbitrary JSON in Custom APIs. These types do not support filtering.</li>\n</ul>\n<p>For details see:</p>\n<ul>\n<li><a href=\"https://elasticpath.dev/docs/api/commerce-extensions/custom-fields\">Custom Fields</a></li>\n<li><a href=\"https://elasticpath.dev/docs/commerce-manager/commerce-extension/commerce-extension-in-cm#creating-custom-fields\">Custom Fields in Commerce Manager</a></li>\n</ul>",
            "url": "https://elasticpath.dev/changelog/2026/02/05/2026/changelog",
            "title": "Custom Fields Enhancements: \"any\", \"list\" Field Type, List Filtering, and Constraints",
            "summary": "MAJOR New Custom Field Types for Custom APIs",
            "date_modified": "2026-02-05T00:00:00.000Z",
            "tags": [
                "Commerce Extensions",
                "Commerce Manager"
            ]
        },
        {
            "id": "https://elasticpath.dev/changelog/2026/02/03/2026/changelog",
            "content_html": "<p><strong>MINOR</strong> Generated OpenAPI Specs for Custom APIs</p>\n<p>You can now view or download OpenAPI specifications for all of your Custom APIs in Commerce Manager. This feature makes it easier to generate code leveraging Custom APIs.</p>\n<p>What's New?</p>\n<ul>\n<li>View the OpenAPI spec in-app for any custom API.</li>\n<li>Download the OpenAPI spec to share with developers or import into API tooling.</li>\n</ul>\n<p>For details see:</p>\n<ul>\n<li><a href=\"https://elasticpath.dev/docs/commerce-manager/commerce-extension/commerce-extension-in-cm#access-openapi-spec\">Access OpenAPI Spec</a></li>\n</ul>",
            "url": "https://elasticpath.dev/changelog/2026/02/03/2026/changelog",
            "title": "Dynamic OpenAPI Specs for Custom APIs",
            "summary": "MINOR Generated OpenAPI Specs for Custom APIs",
            "date_modified": "2026-02-03T00:00:00.000Z",
            "tags": [
                "Commerce Manager",
                "Commerce Extensions"
            ]
        },
        {
            "id": "https://elasticpath.dev/changelog/2026/01/28/2026/changelog",
            "content_html": "<p><strong>MINOR</strong> Original Price Field in Cart and Order Items</p>\n<p>What's New?</p>\n<p>Cart and order items now include an <code>original_price</code> field under <code>meta.display_price</code>, providing visibility into the product's original catalog price before any catalog-level sales, tiered pricing adjustments, or cart/item level promotions are applied. This supports additional pricing visibility features, such as storefront strikethrough prices.</p>\n<p>For details see:</p>\n<ul>\n<li><a href=\"https://elasticpath.dev/docs/api/carts/get-cart-items\">Get Cart Items</a></li>\n<li><a href=\"https://elasticpath.dev/docs/api/carts/get-order-items\">Get Order Items</a></li>\n</ul>",
            "url": "https://elasticpath.dev/changelog/2026/01/28/2026/changelog",
            "title": "Original Price Field in Cart and Order Items",
            "summary": "MINOR Original Price Field in Cart and Order Items",
            "date_modified": "2026-01-28T00:00:00.000Z",
            "tags": [
                "Carts & Orders"
            ]
        },
        {
            "id": "https://elasticpath.dev/changelog/2025/12/09/2025/changelog",
            "content_html": "<p><strong>MINOR</strong> Catalog Delta Files for AI Product Feeds</p>\n<p>Elastic Path now supports using <strong>Catalog Delta Files</strong> as a direct data source for <strong>OpenAI Product Feeds</strong>, enabling near real-time synchronization of product changes into AI-powered search, discovery, and agent workflows.</p>\n<p>What's New?</p>\n<ul>\n<li><strong>Delta files as AI ingestion source</strong> - Catalog Delta Files can now be used as an official feed input for OpenAI Product Feeds to support AI search, recommendations, and shopper agents.</li>\n<li><strong>Change-based updates only</strong> - Delta files include only created, updated, and deleted products, eliminating the need for full catalog re-ingestion.</li>\n<li><strong>Automatic generation on publish</strong> - Delta files are produced automatically during full and incremental catalog publish events.</li>\n<li><strong>Optimized for AI pipelines</strong> - Reduced ingestion cost, faster update cycles, and improved data freshness for AI-driven experiences.</li>\n<li><strong>Supports full product lifecycle changes</strong> - Includes updates to attributes, availability, pricing references, and product deletions.</li>\n</ul>\n<p>For details see:</p>\n<ul>\n<li><a href=\"https://elasticpath.dev/docs/commerce-manager/product-experience-manager/catalogs/publishing-catalogs#using-catalog-delta-files\">Using Catalog Delta Files</a></li>\n</ul>",
            "url": "https://elasticpath.dev/changelog/2025/12/09/2025/changelog",
            "title": "Catalog Delta Files for OpenAI Product Feeds",
            "summary": "MINOR Catalog Delta Files for AI Product Feeds",
            "date_modified": "2025-12-09T00:00:00.000Z",
            "tags": [
                "Product Experience Manager",
                "Catalogs",
                "AI",
                "Search"
            ]
        },
        {
            "id": "https://elasticpath.dev/changelog/2025/12/04/2025/changelog",
            "content_html": "<p><strong>MINOR</strong> Address Filtering in Account Address Book</p>\n<p>Commerce Manager users can now quickly find specific account addresses using flexible filtering options in the <strong>Address Book</strong> tab.</p>\n<p>What's New?</p>\n<ul>\n<li><strong>Address filters in Commerce Manager</strong> - Use the <strong>Add Filter</strong> menu in the <strong>Address Book</strong> tab to filter addresses by fields such as first name, last name, name, company name, phone number, address lines, city, county/region, postcode, country, and instructions.</li>\n<li><strong>Multi-criteria filtering</strong> - Combine multiple filters to narrow down long address lists for large B2B accounts.</li>\n</ul>\n<p>For details see:</p>\n<ul>\n<li><a href=\"https://elasticpath.dev/docs/commerce-manager/account-management/accounts\">Managing Accounts in Commerce Manager</a></li>\n<li><a href=\"https://elasticpath.dev/docs/api/addresses/account-addresses\">Account Addresses API</a></li>\n</ul>",
            "url": "https://elasticpath.dev/changelog/2025/12/04/2025/changelog",
            "title": "Filter Addresses in Account Address Book",
            "summary": "MINOR Address Filtering in Account Address Book",
            "date_modified": "2025-12-04T00:00:00.000Z",
            "tags": [
                "Account Management",
                "Commerce Manager"
            ]
        },
        {
            "id": "https://elasticpath.dev/changelog/2025/12/02/2025/changelog",
            "content_html": "<p><strong>MINOR</strong> Support for Additional Comparison Operators in Cart Custom Attributes</p>\n<p>What's New?</p>\n<ul>\n<li>\n<p>Promotions Builder now supports advanced comparison operators for cart custom attributes.</p>\n<ul>\n<li>is equal to</li>\n<li>is greater than</li>\n<li>is equal or greater than</li>\n<li>is less than</li>\n<li>is equal or less than</li>\n</ul>\n</li>\n<li>\n<p>Enables scenarios like:</p>\n<ul>\n<li>\n<p>Offering a discount to customers with a Lifetime Value (LTV) greater than 1000.</p>\n</li>\n<li>\n<p>Targeting items in the cart with a weight less than 20 for promotional discounts.</p>\n</li>\n</ul>\n</li>\n</ul>\n<p>These enhancements provide greater flexibility for building highly customized promotion logic based on numeric cart-level attributes.</p>\n<p>For details see:</p>\n<ul>\n<li><a href=\"https://elasticpath.dev/docs/api/carts/create-a-cart#custom-attributes\">Cart Custom Attributes</a></li>\n<li><a href=\"https://elasticpath.dev/docs/commerce-manager/promotions-builder/creating-a-promotion-in-promotions-builder#adding-cart-custom-attributes\">Promotions Builder with Cart Custom Attributes</a></li>\n</ul>",
            "url": "https://elasticpath.dev/changelog/2025/12/02/2025/changelog",
            "title": "Advanced Operators for Cart Custom Attributes in Promotions",
            "summary": "MINOR Support for Additional Comparison Operators in Cart Custom Attributes",
            "date_modified": "2025-12-02T00:00:00.000Z",
            "tags": [
                "Promotions Builder",
                "Commerce Manager"
            ]
        },
        {
            "id": "https://elasticpath.dev/changelog/2025/11/21/2025/changelog",
            "content_html": "<p><strong>MINOR</strong> Catalog Rules Now Support Account Tags</p>\n<p>Catalog rules can now target accounts based on their tags, enabling flexible tag-based segmentation for B2B scenarios. Use the new <code>account_tag_ids</code> field to apply catalog rules to groups of accounts sharing common tags (e.g., \"enterprise\", \"premium\", \"beta-testers\").</p>\n<p>What's New?</p>\n<ul>\n<li>Target account groups by tags instead of managing individual account lists in rules.</li>\n<li>Simplify management of pricing tiers, regional catalogs, and beta programs through tag-based segmentation.</li>\n</ul>\n<p>For details see:</p>\n<ul>\n<li><a href=\"https://elasticpath.dev/docs/commerce-manager/product-experience-manager/catalogs/catalog-rules\">Configure Shopper Catalog Rules</a></li>\n<li><a href=\"https://elasticpath.dev/guides/How-To/Catalogs/price_segmentation\">Price Segmentation Guide</a></li>\n<li><a href=\"https://elasticpath.dev/docs/commerce-manager/account-management/account-tags\">Account Tags in Commerce Manager</a></li>\n<li><a href=\"https://elasticpath.dev/docs/api/accounts/account-tags\">Account Tags API</a></li>\n</ul>",
            "url": "https://elasticpath.dev/changelog/2025/11/21/2025/changelog",
            "title": "Catalog Rules Now Support Account Tag IDs",
            "summary": "MINOR Catalog Rules Now Support Account Tags",
            "date_modified": "2025-11-21T00:00:00.000Z",
            "tags": [
                "Product Experience Manager",
                "Catalogs"
            ]
        },
        {
            "id": "https://elasticpath.dev/changelog/2025/11/20/2025/changelog",
            "content_html": "<p><strong>MINOR</strong> More Flexibility with Account Tag Rule Operators\nWe've expanded the <strong>Account Tags</strong> feature in <strong>Promotions Builder</strong> by introducing two new rule operators to exclude specified account tags from promotion eligibility.  These additions support fine-tuning promotions for specific accounts groups.  For example, a merchant can make a promotion available to retail customers while omitting employee-tagged accounts to keep internal pricing separate.</p>\n<p>What's New?</p>\n<ul>\n<li>New rule operators for Account Tags: <strong>not all</strong>, <strong>none</strong>.</li>\n<li>Available in the <strong>Promotions Builder</strong> rule configuration UI under \"Account tag condition\".</li>\n</ul>\n<p>For details see:</p>\n<ul>\n<li><a href=\"https://elasticpath.dev/docs/commerce-manager/promotions-builder/creating-a-promotion-in-promotions-builder#creating-account-tag-condition\">Creating Account Tag Condition in Promotions Builder</a></li>\n<li><a href=\"https://elasticpath.dev/docs/api/promotions-builder/create-rule-promotion\">Promotions Builder API</a></li>\n</ul>\n<hr>\n<p><strong>MINOR</strong> Export Item Lists as CSV in Promotions Builder\nYou can now export item lists used in promotion conditions as CSV files directly from the <strong>Promotions Builder</strong> interface. This feature makes it easier to review, audit, and share the products, bundles, or other items included in your promotion rules.</p>\n<p>What's New?</p>\n<ul>\n<li><strong>Export CSV</strong> functionality for item lists in promotion conditions and actions.</li>\n</ul>\n<p>For details see:</p>\n<ul>\n<li><a href=\"https://elasticpath.dev/docs/commerce-manager/promotions-builder/creating-a-promotion-in-promotions-builder\">Creating a Promotion in Promotions Builder</a></li>\n</ul>",
            "url": "https://elasticpath.dev/changelog/2025/11/20/2025/changelog",
            "title": "Promotions Builder Updates: New Account Tag Operators and CSV Export for Item Lists",
            "summary": "MINOR More Flexibility with Account Tag Rule Operators",
            "date_modified": "2025-11-20T00:00:00.000Z",
            "tags": [
                "Account Management",
                "Commerce Manager",
                "Promotions Builder"
            ]
        },
        {
            "id": "https://elasticpath.dev/changelog/2025/11/19/2025/changelog",
            "content_html": "<p><strong>MINOR</strong> Cart Custom Attributes Limit Increased to 100 and Automatic Promotion Quota Added</p>\n<p>What's New?</p>\n<ul>\n<li><strong>Expanded attribute capacity</strong> - Carts can now support up to 100 custom attributes, up from the previous limit of 20, supporting additional business-specific information and sophisticated promotion conditions.</li>\n<li><strong>Automatic promotion quota</strong> - rule promotions now support a maximum of 50 active and future automatic rule promotions per store.</li>\n</ul>\n<p>Custom attributes remain persistent throughout the cart lifecycle and automatically carry over to order objects upon checkout, maintaining consistency across the purchase flow.</p>\n<p>For details see:</p>\n<ul>\n<li><a href=\"https://elasticpath.dev/docs/api/carts/create-a-cart#custom-attributes\">Create a Cart - Custom Attributes</a></li>\n<li><a href=\"https://elasticpath.dev/docs/commerce-manager/promotions-builder/creating-a-promotion-in-promotions-builder\">Creating a Promotion in Promotions Builder</a></li>\n<li><a href=\"https://elasticpath.dev/docs/api/promotions-builder/create-rule-promotion\">Promotions Builder API</a></li>\n</ul>\n<hr>\n<p><strong>MINOR</strong> Search Carts by Name for Client Admin Users</p>\n<p>Client Admin users can now search for carts associated with an Account or Customer using cart name filtering.</p>\n<p>What's New?</p>\n<ul>\n<li><strong>Cart name search</strong> - Filter Account- or Customer-associated carts using the <code>ilike</code> operator to search by cart name.</li>\n<li><strong>Combined filtering</strong> - Search using a combination of cart name and account ID.</li>\n</ul>\n<p><strong>Note:</strong> Carts without shopper associations are not currently searchable. Support for searching all carts will be added in a future release.</p>\n<p>For details see:</p>\n<ul>\n<li><a href=\"https://elasticpath.dev/docs/api/carts/get-carts\">Get all Carts</a></li>\n</ul>",
            "url": "https://elasticpath.dev/changelog/2025/11/19/2025/changelog",
            "title": "Cart Search by Name, Increased Custom Attributes Limit, and Automatic Promotion Quota",
            "summary": "MINOR Cart Custom Attributes Limit Increased to 100 and Automatic Promotion Quota Added",
            "date_modified": "2025-11-19T00:00:00.000Z",
            "tags": [
                "Carts & Orders",
                "Promotions Builder"
            ]
        },
        {
            "id": "https://elasticpath.dev/changelog/2025/11/17/2025/changelog",
            "content_html": "<p><strong>MINOR</strong> Improved Promotion Builder Editing Experience</p>\n<p>We've introduced several enhancements to make editing promotions in Commerce Manager smoother and more intuitive. These updates help users stay oriented, work more efficiently, and manage product selections with greater ease.</p>\n<p>What's New?</p>\n<ul>\n<li><strong>Focused Editing Experience</strong>: Promotion details now open in a dedicated workspace, reducing distractions and maintaining context.</li>\n<li><strong>Preserved List View Settings</strong>: When returning to the promotions list, previous filters and search terms remain intact, allowing users to resume work seamlessly.</li>\n<li><strong>Streamlined Product Selection</strong>: The product selection interface has been simplified for faster and more straightforward item selection.</li>\n<li><strong>Faster SKU Entry</strong>: Users can now paste a comma-separated list of SKUs directly from the main view, eliminating extra form fields and reducing friction.</li>\n<li><strong>Add Custom SKU</strong> - Enter a custom SKU directly into the text field by selecting Add.</li>\n<li><strong>Promotion Options Menu</strong>: Options to duplicate, delete, or view promotion properties have been moved to their own menu for better organization.</li>\n</ul>\n<p>These enhancements are designed to improve the workflow for merchandising teams managing large promotion catalogs, making it easier to create, edit, and organize promotional campaigns without losing context or repeating work.</p>\n<p>For details see:</p>\n<ul>\n<li><a href=\"https://elasticpath.dev/docs/commerce-manager/promotions-builder/creating-a-promotion-in-promotions-builder\">Creating a Promotion in Promotions Builder</a></li>\n<li><a href=\"https://elasticpath.dev/docs/promotions-builder/overview\">Promotions Builder Overview</a></li>\n</ul>",
            "url": "https://elasticpath.dev/changelog/2025/11/17/2025/changelog",
            "title": "Improved Promotion Builder Editing Experience",
            "summary": "MINOR Improved Promotion Builder Editing Experience",
            "date_modified": "2025-11-17T00:00:00.000Z",
            "tags": [
                "Promotions Builder",
                "Commerce Manager"
            ]
        },
        {
            "id": "https://elasticpath.dev/changelog/2025/11/13/2025/changelog",
            "content_html": "<p><strong>MINOR</strong> Increased limit for account addresses to 500</p>\n<p>We've increased the maximum limit for number of addresses to 500 per account.</p>\n<ul>\n<li><strong>Default limit</strong>: 25 addresses per account</li>\n<li><strong>Configurable</strong>: Up to 500 addresses (can be set by store admins)</li>\n<li><strong>Extended limit</strong>: If you need higher limits, please <a href=\"https://www.elasticpath.com/company/contact-us\" target=\"_blank\" rel=\"noopener noreferrer\">contact us</a>.</li>\n</ul>\n<p>This enhancement provides greater flexibility for managing addresses across large-scale accounts and enterprise use cases.</p>\n<p>For details see:</p>\n<ul>\n<li><a href=\"https://elasticpath.dev/docs/api/addresses/account-addresses\">Account Addresses API</a></li>\n</ul>",
            "url": "https://elasticpath.dev/changelog/2025/11/13/2025/changelog",
            "title": "Increased Limit for Account Addresses",
            "summary": "MINOR Increased limit for account addresses to 500",
            "date_modified": "2025-11-13T00:00:00.000Z",
            "tags": [
                "Account Management",
                "Addresses"
            ]
        },
        {
            "id": "https://elasticpath.dev/changelog/2025/11/03/2025/changelog",
            "content_html": "<p><strong>MINOR</strong> Search carts by account ID</p>\n<p>We've added filter support for searching carts by associated account IDs.</p>\n<p>For details see:</p>\n<ul>\n<li><a href=\"https://elasticpath.dev/docs/api/carts/get-carts\">Carts API</a></li>\n</ul>",
            "url": "https://elasticpath.dev/changelog/2025/11/03/2025/changelog",
            "title": "Search Carts by Account ID",
            "summary": "MINOR Search carts by account ID",
            "date_modified": "2025-11-03T00:00:00.000Z",
            "tags": [
                "Carts & Orders"
            ]
        },
        {
            "id": "https://elasticpath.dev/changelog/2025/10/23/2025/changelog",
            "content_html": "<p><strong>MAJOR</strong> AI-Ready MCP Server for Elastic Path Composable Commerce Now Available</p>\n<p>We've released the <strong>Elastic Path Composable Commerce MCP Server</strong>, enabling secure, real-time access to your Elastic Path APIs through the Model Context Protocol (MCP).</p>\n<p>What's New?</p>\n<ul>\n<li>Provides AI assistants with deep operational access across orders, products, catalogs, pricing, promotions, and more.</li>\n<li>Empowers commerce teams to automate insights, streamline catalog management, and optimize pricing through natural language prompts.</li>\n<li>Supports secure authentication and token management, with simple setup using your Elastic Path credentials.</li>\n</ul>\n<p>This <strong>beta</strong> release unlocks powerful new AI-driven commerce experiences while maintaining full control of your backend infrastructure.</p>\n<blockquote>\n<p>Available now on npm: <a href=\"https://www.npmjs.com/package/@elasticpath/elasticpath-mcp\" target=\"_blank\" rel=\"noopener noreferrer\"><code>@elasticpath/elasticpath-mcp</code></a></p>\n<p><a href=\"https://developer.elasticpath.com/guides/Getting-Started/mcp-servers\" target=\"_blank\" rel=\"noopener noreferrer\">Get started</a></p>\n</blockquote>",
            "url": "https://elasticpath.dev/changelog/2025/10/23/2025/changelog",
            "title": "Elastic Path Composable Commerce MCP Server Release",
            "summary": "MAJOR AI-Ready MCP Server for Elastic Path Composable Commerce Now Available",
            "date_modified": "2025-10-23T00:00:00.000Z",
            "tags": [
                "MCP",
                "AI"
            ]
        }
    ]
}