Check Feature Compatibility

Following table lists features which are compatible with standard cart APIs. If you're using features that are not supported, we recommend that you do not enable the standard cart APIs.

Feature / CapabilityCompatibility with Standard Cart API
Asset-Based OrderingSupported
Manual Pricing Adjustments Changes in the CartSupported
Promotions in the CartSupported
Price Adjustments and OverridesSupported
Attribute-Based PricingSupported
Multi-Site Quote and Order CaptureSupported
Context Rules and Advanced Rules FrameworksSupported
Create Qualification Rule SetsSupported
Advanced Rules (Entity Filters, Evaluations)Supported
Discounts in Industries CPQSupported
Change of Plans in Industries CPQSupported
Usage Pricing for Industries CPQSupported
Functions for Context RulesSupported. See Working Example
Product RelationshipsSupported. See Working Example
Salesforce Pricing with CMESupported
Transformation of Multiplay OffersSupported
Multi-Edit Cart ItemsSupported
Incremental CachingSupported

Review the following considerations before using the standard cart APIs.

  • Entity filters on the orders, assets, orderlineitems, Product, PriceBookentry, and ProductChildItem objects are supported. All advanced rules are supported.

  • Entity filters and advanced rules may not work as expected if the formula field is modified in the transaction. To rerun the advanced rules once the formula field is updated, execute getCartsItems API call with validate = true.

  • In the addToCart API, the includeAttachment input parameter is not supported.

  • For better performance when you use this API to add a child bundle with a parent as a virtual line item, pass rootLineItemId in the items object.

    Following is an example payload.

  • The nameResult node is not be present in response (like attributeCategories, productAttributes) for all the standard cart APIs. The data nodes are directly present.
  • The structure of response for all the standard cart APIs, when called using Apex Remote Service (CpqAppHandler), is as follows:
  • Set price to false in getCartsItems if you don't need to run a pricing engine for the API call. This can improve performance.
  • For priceCart API, setting limitScopeToPassedItem no longer required to be separately passed, just pass items in the items parameters.
  • The replaceOffers API does not support complex transformations. For example, Multi-play offers.
  • Using Field Settings to add custom fields to cart is currently not supported. If any custom field is needed in API response, then it must be passed with fields parameter of request body.
  • Following API parameters are not supported.
    • noResponseNeeded
    • maintainAssetPrice
  • There are two invocations that can be used upon calling AssetToOrder API. Upon calling OmniFDOWrapper, the classic flow is invoked. The standard flow is invoked upon calling REST API.

  • The following CPQConfiguration settings are not currently supported for AssetToOrder. While we offer the functionality, there is no specific configuration available to control the API behavior for these settings:

    • UsingPromotions
    • DeltaPrice
    • IsCachingEnabledForAssetToOrder