Migration Considerations

Before you begin, Check Feature Compatibility for using the standard cart APIs.

Following table lists supported interfaces and implementation class names.

Interface Name (in Cart APIs)Supported in Cart APIsSupported with Standard Cart APIsInterface Name (when Standard Cart APIs are enabled)Active Implementation Class Name
PricingInterfaceYYCpqPricingCpqPricingOrchestratorService
ProductValidationInterfaceYYCpqValidationCpqValidationService
TightestMatchInterfaceYYCpqTightestMatchCpqTightestMatchPLEService
TimePolicyInterfaceYYCpqTimePolicyCpqTimePolicyService
CpqAppHandlerHookYYCpqAppHandlerHook
PricingElementServiceImplementationH
PricingPlanServiceHook
CustomPricingElementServiceImplHook
YYCpqPricingHookCustom Hook Implementation Name
ContextRuleServiceYYCpqContextRuleCpqContextRuleService
DefaultPricingVariableCalcImplementaInterfaceYYCpqPricingVariableCalcCpqPricingVariableCalcService
CartResponseCartResponseService
PricingSelectorYN
CtxRulesPriceListsOpenYYCpqPricingEligibilityCpqPricingEligibilityService

To learn how to use cart documents, see Use Cart Documents.

To learn how to use Attribute-Based Pricing, see Set up Attribute-Based Pricing. For more information, see Attribute-Based Pricing

Context Rules with context mappings having Initialisation Type as Type In and Scope SObject are not supported in Standard DC and Cart APIs.

When a postCartItems API adds a product with configuration issues to the cart, the messages node in the Standard Cart API response shows both success and error messages. For example, if a required attribute lacks a default value and the product is still added, the messages node in response includes both the success and the error messages. Here's a sample messages node in the postCartItems API response:

The GetCartItems API still has the same behavior in Standard CPQ as in Classic CPQ for backward compatibility.

The actions node consists of two main protocols to invoke CPQ APIs, and there are separate nodes for each protocol: remote and rest.

In Classic CPQ, whether the API is invoked via REST or as a Remote call, it populates both remote and rest nodes.

In Standard CPQ, the API populates actions node based on the protocol.

  • If a REST call is made, the API populates the rest action node in the response.
  • If a Remote call is made, the API populates the remote action node in response.