Known Limitations for Standard Cart APIs

Standard Cart APIs retain the same API names, inputs, and response formats as Cart APIs (Classic) unless a topic calls out a difference. This topic lists behaviors that still differ from Classic, and Cart APIs that continue to run on the Classic Apex path.

Before you enable Standard Cart APIs, review Check Feature Compatibility and the API list in Standard Cart APIs.

You can enable only the APIs listed in Standard Cart APIs. Other Cart APIs continue to run using Apex libraries.

The following operations have Classic usage examples and are not on the Standard Cart APIs list. Treat them as Classic unless a later release adds them to that list.

OperationRemote methodClassic usage example
Validate CartrunCartValidationValidate Cart Action
Clone Line ItemscloneItemsClone Line Items in Cart
Cancel Order / Submit CancelcancelCart / submitCancelOrderCancel Order, Submit a Cancel Order Request
Get Product Details / Get Products by IDgetCartsProductDetails / getCartsProductsByIdGet Details of Product, Get Products by ID
Get Catalog InformationgetCatalogsGet Catalog Information
Get Price Lists for CartgetCartsPriceListsGet Price Lists for Cart
Update Item AttributesputCartsItemsAttributesUpdate Item Attributes
Get / Add PromotionsgetCartsPromotions / postCartsPromotionsGet Cart Promotions, Add Promotion to Cart
Get Price WaterfallgetCartsItemPricesGet Price Waterfall for Price
Delete AdjustmentdeleteAdjustmentDelete Adjustment
Get All AssetsgetAllAssetsGet Assets for Account

For validation and pricing on the Standard path, use Run Pricing for Items to Cart. Dedicated runCartValidation remains a Classic Cart API.

AreaClassic Cart APIsStandard Cart APIs
Transformation of multi-play offersSupportedChange of Plans is compatible for single-asset operations, but replaceOffers does not support complex multi-play transformations
Bulk Change and Bulk UpdateSupportedNot compatible. Bulk Change, Bulk Update, and bulk disconnect fail when Standard Cart APIs are enabled
ProductSelector interfaceSupportedNot supported. Use the sortBy parameter on getCartsProducts
Field Settings / CPQV2 field settingsSupported for cart responsesSupported for getCarts and GetCartsItems only. For other Standard Cart APIs, pass custom fields in the fields parameter
noResponseNeededSupported. cloneItems supports noResponseNeeded from the Winter’27 releaseSupported for Add, Update, and Delete Standard Cart APIs from 258. Multi-item add defaults to noResponseNeeded=true unless you pass false
maintainAssetPriceSupportedSupported from 258
includeAttachmentSupportedIgnored on addToCart. Product attachments are not returned or displayed in LWC Cart (FlexCard-based or Enhanced)
Custom Expression mode in RuleSetsSupportedNot supported
Context mappings with Initialization Type Type In and Scope SObjectSupportedNot supported
nameResult node (attributeCategories, productAttributes)PresentNot present. Data nodes are returned directly
actions nodePopulates both remote and restPopulates only the protocol you invoked
Cart document / line items in custom codeFull line-item sObject listCpqCartDocument contains only items affected by the current operation. GetCartsItems is the full-cart read
Duplicate pricebook entry IDs in one add-to-cart callCollapsed into a single cart line itemEach items array entry creates a distinct line item, even when itemId is the same
Date fields in fieldsToUpdateLocale-based Date.parse() (for example, dd/mm/yyyy for day-first locales)ISO only (yyyy-MM-dd). Org and user locale are ignored
Currency and pricing field typesInteger values are often acceptedDouble is required (for example, 0 must be 0.0)
AssetToOrder invocationOmniFDOWrapper uses the Classic flowREST /v2/carts uses the Standard flow
AssetToOrder CPQ settingsUsingPromotions, DeltaPrice, and IsCachingEnabledForAssetToOrder applyFunctionality exists, but those settings do not control Standard AssetToOrder
PCP rule executionRuns twice on add-to-cart: before validation and pricing, then in the post-execute hook after pricingRuns once, before validation and pricing. See PCP Execution Order

Because not all APIs have migrated to the Standard Cart framework, custom implementations must accommodate both Classic and Standard Cart flows and switch dynamically based on context. See Use CpqCartDocument.