CPQ Configuration Settings Reference

​Salesforce Industries Communications, Media, and Energy includes these custom settings that control many configure, price, quote (CPQ) features and behaviors.

To work with CPQ configuration settings, go to the Vlocity CMT Administration tab, and under Custom Settings select CPQ Configuration Setup.

Active CPQ Configuration Settings

Setting Name

Description

Values

Versions

AddPromoValidate

Promotions: If set to true, runs compatibility (or validation) rules when promotions are added to the cart. If set to false, does not run compatibility rules promotions are added.

true/false

Default: false

CME 100.3.1+ minor release and later

AllowOperationsOnDiscProducts

Industries Cart: If set to true, child products with a cardinality of 0,0,0 can be configured or deleted in a MACD order that is being updated. If set to false, line items with child products having a cardinality of 0,0,0 can't be deleted or configured.

true/false

Default: false

CME 103.1.19 minor release and later

AlwaysInsertMessageElement

If set to true, the API inserts the message element in all JSON nodes. If set to false or null, the API does not insert the message element. This must be set to true when using the persistent cart in an OmniScript.

Used only with Cart-Based APIs.

true/false

Default: true

CME Winter '18 and later

AlwaysRegenerateV2AttributeFields

v2 attribute upgrades: If set to true, Line Items Attributes Conversion job regenerates all attributes. If set to false or NULL, the Line Items Attributes job only processes attributes not yet converted.

To use this setting, set SaveProductAttributeMetadataCPQ Configuration Settings Reference to true.

true/false

Default: true

CME Fall '18 and later

If set to true, a promotion can apply to a bundle with past or end dated child items.

true/false

Default: false

CME Winter '20

AttributeValueDisplaySortMode

Specifies sort order of attribute picklist values in API response based on the following values:

  • ID: Picklist values sort by ID

  • DISPLAYSEQUENCE: Picklist values sort by Display Sequence

  • VALUE: Picklist values sort alphabetically by Value

Used only with Cart-Based APIs.

Default: VALUE

CME 15.3 and later

CacheAPI.BasketAPIPoolSize

When a the Basket API is called, this setting determines the number of Pseudo Orders that are created. The value should be an integer greater than 1.

Integer

Default Value: 1000

Winter '21

CacheAPI.CacheManagement

Enables the Regenerate Cached API Records job, which will programmatically regenerate cached API responses when your product model or sales catalog has been modified.

To enable this setting, go to Setup → Develop → Custom Settings → Trigger Setup. Add a new trigger setup detail and select the Trigger On checkbox for CacheAPI.CacheManagement.

See Regenerate Cache Job.

on/off

Default: off

CME Winter '20 and later

CacheAPI.CheckBasketEligibility

Checks for basket eligibility in the Create Cart API. If set to TRUE, the API checks for cartContextKey eligibility against the context of the user passed in the input. If set to FALSE, the eligibility of the Basket is not checked.

true/false

Default: false

CacheAPI.CombinationLimit

Limits the number of results that can be cached in a catalog by one EcomDataProfileGenerator cache job. Caching combinations that exceed the limit are cached in multiple jobs.

Used only with Digital Commerce APIs.

Integer

Default: 2000

CME Fall '18 and later

CacheAPI.CreateCartBatchSize

When creating carts in bulk, the value of this setting determines whether the

If the number of baskets in the request is less than the value of this setting, the createCart API call is synchronous.

If the number of baskets in the request is greater than or equal to the value of this setting, the createCart API call is asynchronous.

For asynchronous createCartcreateCart calls, this setting indicates the number of baskets that will be processed per batch.

Used only with Digital Commerce APIs.

Integer

Default: 5

CME Fall '20 and later

CacheAPI.CreateCartFromContextKey

If set to true, the Create Cart from Basket uses the cartContextKey passed in the input to create the cart. If set to false or null, the JSON result from the GetOfferDetails API must be passed in the request body to create the cart.

Used only with Digital Commerce APIs.

true/false

Default: false

CME Summer '19 and later

CacheAPI.CustomGroupContextItems

Specifies a comma-separated list of user-defined custom context types.

Used only with Digital Commerce APIs.

String

Default: empty string (null)

Winter '19 and later

CacheAPI.ExternalSystemAuthHeader

Specifies the authentication header of the AWS (external) system to which the cache will be migrated from Salesforce via the CMT Administration Cacheable API Jobs page. See Populate Cache Batch Process.

String

Default: empty string (null)

CME Winter '20 and later

CacheAPI.ExternalSystemPartitionKey

Specifies to the system partition key of the AWS (external) system which the cache will be migrated from Salesforce via the CMT Administration Cacheable API Jobs page. See Populate Cache Batch Process.

String

Default: empty string (null)

CME Winter '20 and later

CacheAPI.ExternalSystemURL

Specifies the endpoint of the AWS (external) system to which the cache will be migrated from Salesforce via the CMT Administration Cacheable API Jobs page. See Populate Cache Batch Process.

String

Default: empty string (null)

CME Winter '20 and later

CacheAPI.GenericOffersAttribute

If set to true, the attribute category structure in getOffers API responses are changed to be consistent with the generic attribute category structure of other APIs such as getOfferDetails.

Used only with Digital Commerce APIs.

true/false

Default: false

CME Summer '19 and later

CacheAPI.GetOffersCacheRecLimit

Limits the number of results that can be cached in a catalog by one GetOffers or GetContainsOffers cache job.

Must be ≤ CacheAPI.CombinationLimit

Caching combinations that exceed the limit are cached in multiple jobs.

Used only with Digital Commerce APIs.

Integer

Default: 2000

CME Fall '18 and later

CacheAPI.GetOffersVerCacheRecLimit

Limits the number of offers processed with the GetOffers cache generation job to prevent system limitation errors for versioning enabled Digital Commerce jobs. This custom setting is not required for non-versioning enabled Digital Commerce APIs.

The Versioning enabled DC GetOffers job processes only 200 product records by default.

Integer

Default: 200

CME Winter '22

CacheAPI.GetRelOffersCacheRecComLimit

The number of records to process for each Get Related Offers batch job for each catalog. The default number of records for product child items is 2,000.

Integer

Default: 2000

CME Winter '20 and later

CacheAPI.GetRelOffersCacheRecLimit

Limits the number of results that can be cached in a catalog by one ContextEligibilityGenerator cache job.

Must be ≤ CacheAPI.CombinationLimit

Caching combinations that exceed the limit are cached in multiple jobs.

Used only with Digital Commerce APIs.

Integer

Default: 2000

CME Winter '19 and later

CacheAPI.IncludeParentContextPLEs

This parameter is supported for both anonymous and logged-in user scenarios.

When CacheAPI.IncludeParentContextPLEs = True:

For offer details of a product:

  • Returns all the adjustments and overrides in the getOfferDetails API for promotions, root, and child products.

  • The price result for the root product will include the base prices for the root product and all of the adjustments or overrides defined for the root product. The price result for child products will include the base prices for the child products and all of the adjustments or overrides defined for the child products.

For offer details of a promotion:

  • The price result for promotion products will include the base prices for the promotion products and all of the adjustments or overrides defined for the promotion products. The price result for child products of promotion products will include the base prices for the child products and all adjustments or overrides defined for the child products.

When CacheAPI.IncludeParentContextPLEs = False

For offer details of a product:

  • The price result for the root product will include the base prices for the root product. The price result for child products will include the base prices for the child products and all of the adjustments or overrides defined for that product under the root product.

For offer details of a promotion:

  • The price result for promotion products will include the base prices for the promotion products and the adjustments or overrides defined for that promotion product for that promotion. The price result response for the child products of promotion products will include base prices for the child products and the adjustments or overrides defined for that promotion and the adjustments or overrides defined for that promotion product.

Used only with Digital Commerce APIs.

true/false

Default: false

CME 104.0.2 minor release and later

CacheAPI.MaxCombinationLimit

Limits the total number of data profile results that can be cached in each catalog.

Used only with Digital Commerce APIs.

Integer

Default: 100000

CME Winter '19 and later

CacheAPI.MaxGetOffersCacheRecLimit

Limits the total number of offer results that can be cached in each catalog.

Must be ≤ CacheAPI.MaxCombinationLimit

Used only with Digital Commerce APIs.

Integer

Default: 100000

CME Winter '19 and later

CacheAPI.MaxGetRelOffersCacheRecLimit

Limits total number of context eligibility results that can be cached in each catalog.

Must be ≤ CacheAPI.MaxCombinationLimit

Used only with Digital Commerce APIs.

Integer

Default: 100000

CME Winter '19 and later

CacheAPI.OptimizedBasketResponse

The following values determine the response format during a remote call:

  • true: Basket API responses are serialized in a remote call.

  • false: Remote call responses have a mapped format.

This setting has no impact on REST responses.

Used only with Digital Commerce APIs.

true/false

Default: false

CME Summer '19 and later

CacheAPI.RegenerateBasket

Decides whether to invalidate or regenerate the Digital Commerce API basket cache as part of the regenerate process.

  • If set to regenerate, Digital Commerce invalidates and regenerates the baskets.

  • If set to invalidate, Digital Commerce only invalidates the baskets.

String

Values: regenerate, invalidate

Default: regenerate

CME Winter '22

CacheAPI.RegenerateBatchCacheProcessor

Enable this for Regenerate Cache APIs. Enabling this setting also ensures you are tracking catalog level changes as availability changes and offer level changes as simpleOffer changes.

  • simpleOffer: Changes made in the offer or bundle structure that only affect the properties of an offer, such as a change in description, attachments, cardinality changes, etc.

  • availability: Changes that impact the eligibility or effectivity of an offer in a catalog.

true/false

Default: false

CME Winter '22

CacheAPI.RegenerateCatalogBatches

Controls the populate cache batch jobs that run when the Regenerate Cached API Records job is run. The default value is ContextEligibilityGenerator,GetOffers,GetContainOffers. If you do not want to regenerate entries for the Get Contains Offers API, set the value to ContextEligibilityGenerator,GetOffers.

ContextEligibilityGenerator,GetOffers,GetContainOffers

Winter '20

CacheAPI.RegenerateEntriesPartition

Sets the maximum number of flex queue jobs that can be submitted by the system at one time during the regenerate batch job run.

Integer

Default 90

Fall '20

CacheAPI.RegenerateFutureDatedCache

If CacheAPI.RegenerateFutureDatedCache=true, running the Regenerate Cached API Records batch job pops up a window that allows you to set the date and time at which the cached records become effective. Setting this parameter to false does not give you the option to enter a date and time and makes the cache effective when the cache jobs are complete. See Regenerate Cache Job.

true/false

Default: false

Summer '21

CacheAPI.RemoveNonCacheableAttribInDCG

Enabling this setting will remove the non-cachable attributes in the response

true/false

Default: false

Summer '21

CacheAPI.SkinnyBasket

When CacheAPI.SkinnyBasket is set to true, AssetToBasketDetailed API Parameters and Calling Information just returns key-value pairs, which can improve performance.

When CacheAPI.SkinnyBasket is set to false, AssetToBasket provides the full basket response (backwards compatible).

true/false

Default: false

CME 105.0.3.2 and later

CacheAPI.SkinnyCtxDmsnCombinations

If CacheAPI.SkinnyCtxDmsnCombinations is set to true, context dimension combinations are generated based on context rules. If set to false, all possible context dimension combinations are generated.

true/false

Default: false

CME Spring '20 and later

CacheAPI.TimeToLiveInDays

Specifies the number of days an API cache response is effective after its start datetime.

Used only with Digital Commerce APIs.

Integer

Default: 30

CME Fall '18 and later

CacheAPI.Trimmode

If set to true, the Basket APIs return a basket that has field and attribute metadata removed from the Basket API response, which reduces JSON processing and network I/O. If set to false, the Basket APIs return the basket as in previous releases. This setting overrides the CacheAPI.SkinnyBasket configuration setting.

true/false

Default: false

Fall '20

CacheAPIFields

If set to true, the APIs cache responses. If set to false or null, the APIs do not cache responses. To use this setting, you must have a Vlocity Communications APIs Caching license.

Used only with Digital Commerce APIs.

true/false

Default: false

Not required for CME 103.1.14 and later

CacheAPIPartialConfigure

Set this value to true to split the Get Offer Details APIGet Offer Details API into two transactions.

For CME Summer '19 and later, this setting is not used if

See GetOfferDetails APIGet Offer Details API.

Used only with Digital Commerce APIs.

true/false

Default: false

CME Fall '18 and later

CacheAPIPartialConfigureProduct

If set to true, the configure offer and addToBasket APIsDetailed API Parameters and Calling Information split into two transactions, allowing two-step product configuration. If false or null, these APIs operate in a single transaction.

For CME Summer '19 and later, this setting is not used if

Used only with Digital Commerce APIs.

true/false

Default: false

CME Fall '18 and later

CachedQueryMode

Vlocity caching: If set to true, uses output from queries in the CacheQueryStore. If set to false, queries directly from the database. Default is false.

true/false

Default: false

CME 104.0.2 minor release and later

CacheEnabled

Supports platform caching.

To use context rules, including the Tightest Match service, CacheEnabled must be set to true.

See Enable the CPQ Cache.

true/false

Default: true

CME 14 and later

Cart Level Discount Approval Required

If set to true, cart-added discounts must be approved and are created with an ApprovalStatus field value of Not Submitted. If set to false, no approval is required and the ApprovalStatus field will be set to Approved.

To implement your own approval system, set Cart Level Discount Approval Required to true and configure the CpqCustomDiscountApprovalService class in your org.

See Approving Discounts and

true/false

Default: false

CME Winter '19 and later

CheckCardinalityWithContextAsCart This setting controls whether cardinality validation uses whole-cart quantities by product hierarchy path (true) or only the parent/root hierarchy (false, default). This is applicable only to Standard Cart APIs. The validation checks for maximum quantity of 1 and prevents adding duplicate instances of the same product.

true/false

Default: false

CME Summer ’26 and Later

CompileOfferCPRConfig

The setting is added in the form of a JSON string object. The object can have 2 fields compilePrices and compileProducts which specify number of CPRs for the Compile Pricing and Compile Product Hierarchy batch jobs respectively.

Default: empty string (null)

Default: false

CME 240.13 minor release and later

ContextRulesCacheMode

The following ContextRulesCacheMode values control the caching of data related to context rules:

  • cachemode: All the data and wrapper collections are cached using platform cache.

  • inmemmode: Data and wrapper collections are not cached and will instead remain in memory.

Default: inmemmode

CME Summer '19 and later

ContextRulesEnabled

Context Rules, including the Tightest Match service: If set to true, context rules are enabled for the org. If set to false, context rules are disabled.

true/false

Default: false

CME Summer '17

ControlProduct2FieldsDuringCreation

Vlocity EPC: Set this to true if you created a large number of custom fields in Product2 and have slow performance issues when you create a product.

If true, Product2 lookup fields populate only the Name field and do not populate entire fields during SOQL queries.

true/false

Default: false

CME 104.0.12 and later

CPQ Cart Preview Modal Use API

Industries Cart: If set to on, the getCartItemAPI retrieves the line item when the Line Item Modal opens. If set to off, the API is not called. The line item data from the cart line item list populates the modal.

on/off

Default: on

CME 14 and later

CPQ Toast Message Log Level

Industries Cart: Controls toast messages using the following values

  • ALL: In all situations

  • OFF: Do not display

  • SUCCESS: Success toasts only

  • ERROR: Error toasts only

  • INFO: Info toasts only

  • WARNING: Warning toasts only

For pricing adjustment context rules, set to ALL or ERROR.

Default: ALL

CME 14 and later

CpqCachePvtKey

Specifies the cache key to retrieve cache entries in Platform Cache.

The CPQ functionality gets data from the Platform Cache using a cache key. When the CPQ functionality accesses the platform cache, it encodes the cache key used to retrieve the data. The encoding logic can use a different key called a private key. Use this setting to configure a private key.

This setting is not listed by default in CPQ Configuration Setup. If you need to specify a key, click Add and enter in the first field and a value for the key.

If CpqCachePvtKey is not specified in CPQ Configuration Setup, the default value is BFG_REPLACED_PASSWORDBFG_REPLACED_PASSWORD.

String

CME Winter '22

CreateAdjForAbsZeroValue

Creates a pricing record for 0.0 absolute adjustment.

true/false

Default: false (does not create a pricing record for 0.0 absolute adjustment),

CME Spring '22

CustomRuleMessageFieldName

Advanced rules: Specifies the API field name on the product relationship object that is used to store a custom message for each product relationship.

Field name, such as Message__c

CME 12 and later

DefaultEntityFilterEditFieldset

Advanced rules: Specifies the field set name for the entity filter pages, which enables you to edit entity filters. Note: If you are upgrading from v15.2 or prior, ensure that this setting is present and includes the value Entity_Filter_Edit_Field_Set (the default).

String

CME 11 and later

DefaultHierarchy

Specifies the default product hierarchy level to return. To return all levels, do not use this custom setting. When this custom setting is removed, search works faster.

Used only with Cart-Based APIs.

Integer greater than 0, such as 20

CME 14 and later

DefaultPowerUpdateJobThreshold

Power Update: Specifies a threshold of line items above which Power Update spawns an Apex job.

Integer

Default: 200

CME 11 and later

DefaultPricingPlan

Pricing Plan Service: Specifies the code of the default pricing plan used for the org. Used only when PricingPlanService is the active implementation for the Pricing Interface. If using the out-of-the-box plan, enter DEFAULT_PRICING_PLAN (the default).

String

CME Winter '18 and later

DefaultSplitJobThreshold

Power Update: Sets the threshold of splits above which Power Update spawns an Apex job to split individual copies of a line item.

Integer

CME 11 and later

DeleteAppliedPromo

Promotions: Specifies whether products with promotions applied to it can be deleted from the cart. If enabled, you can delete products with promotions without first removing the promotion. If set to false and you try to delete products with promotions, an error message is displayed. To also remove products that are automatically added to the cart by a promotion, enable the DeletePromoAddedItems setting.

To use this setting, enable UoWMode.

true/false

CME Spring '22

DeletePromoAddedItems

Promotions: Specifies whether products which were automatically added when applying the promotion should be removed when deleting the promotion.

To use this setting, enable UoWMode.

true/false

CME Spring '22

DeleteServices

Defines how delete services behave for promotions. No sets shallow delete mode, which deletes only discounts, not products associated with promotions. Yes sets deep delete mode, which deletes discounts and products and services that are associated with promotions.

Yes/No

Default: Yes

CME Summer '17

DeltaPrice

Industries Cart: If set to true, pricing is run only on new items added to the cart. If set to false, pricing is run on all items in the cart when items are added or updated. Set DeltaPrice to true for product bundles with more than 50 line items.

This setting is not supported by Digital Commerce APIs. See Digital Commerce API Usage Considerations.

true/false

Default: false

CME 14.3 and later

DeltaValidate

Industries Cart: If set to true, rules are run only on new items added to the cart. If set to false, rules are run on all items in the cart when items are added or updated. Set DeltaValidate to true for product bundles with more than 50 line items.

This setting is not supported by Digital Commerce APIs. See Digital Commerce API Usage Considerations.

true/false

Default: false

CME 14.3 and later

EnableCartResponsePostProcessing

This configuration applies exclusively to the Delete Cart Discount, Replace Offer, and AssetToOrder APIs to align their response structure with classic Cart-based CPQ APIs. It restores support for custom CPQ handler hooks and ensures consistent response formatting across the API suite.

true/false

Default: false

CME Summer ‘26 and later

EnableCompactAttributeMetadataParsing

Enables whitespace-tolerant JSON parsing for the AttributeMetadata__c field on Product2 records. When enabled, the parser handles JSON strings where spaces have been stripped, preventing parse failures caused by whitespace-free JSON.

Clear the managed platform cache and rerun the batch job to ensure the compiled data is correctly populated.

true/false

Default: false

CME Summer ‘26 and later

EnableMultiServiceBulkAction

If the EnableMultiServiceBulkAction multi-service setting is set to true, the following buttons are displayed in the Group Management UI:

  • Apply To Group

  • Create and Submit Order(s)

  • Validate and Price

If set to false (the default), these buttons are not displayed.

true/false

Default: false

CME Fall '20 and later

EnableProductOnlyCaoRelink

When enabled, automatically relinks OverrideDefinitions to their CompiledAttributeOverride (CAO) records after a product-only delta deploy. If the post-process payload contains products but no OverrideDefinition, the system re-derives affected OverrideDefinitions filtered to a null CompiledAttributeOverrideId__c and rebuilds the CAO link via the fix CompiledAttributeOverride job. Enable this setting from the CpqConfigurationSetup.

true/false

Default: false

CME Summer ‘26 and later

EnableSupplementalOrderPricing

If set to true, pricing will be invoked based on the price flag in the API request.

If set to false (the default), pricing will not be invoked when creating a supplemental order.

Used only with Cart-Based APIs.

true/false

Default: false

CME Spring '20 and later

EnableUserNotifier

Enabling this setting allows users to receive Salesforce notifications whenever applicable.

true/false

Default: true

CME Winter '22

EnforceOfferMigrationOfferTypeMatch

This setting is used by the Offer Migration Plan feature (also known as Change of Plan). If true, design time and run time flows allow source and target products in Offer Migration Component Mappings to have a SpecificationType of only Offer.

true/false

Default: false

Summer '21

ExcludePromotionOverridePLE

If set to true, the response includes only the display text from the product price list entries and excludes the display text created in promotion price list entries.

true/false

Default: false

CME Spring '25 and later

FDOStatuses

This setting helps configure the filter criteria in queries or code related to merging line items with future dated orders (FDO).

The default value is: Status=Draft;OrderStatus__c=Ready To Submit,Queued

Do not modify this setting's default unless you need to configure the two order fields that are queried: Status and OrderStatus__c.

In asset-to-order MACD FDO flow, you create orders on a future date with the selected assets already added to the Order as OrderItems.

By default, the system looks for OrderItems in Orders that are in Status = Draft AND OrderStatus__c is either Ready to Submit or Queued.

To add a new OrderStatus__c value, override the filter this way: OrderStatus__c=Ready to Submit,Queued,In Progress

In this case, the values specified here override the default OrderStatus__c values.

To add a new value to Status, set the FDOStatuses setting value to: Status=Draft,Activated

In this case, only the values for Status are overridden. Values for OrderStatus__c remain as default values.

String

Multiple fields use a semi-colon separated list of expressions.

If there is only one field, the semi-colon is not needed. Multiple values for a field are separated by a comma.

CME Summer '19 and later

FilterRuleWithEligAvail

Checks the availability and eligibility of the productToBeAdded by rule. Determines if eligibility and availability are run on a product when the product is added to the cart.

true/false

 

FindReferencesRowCountLimit

Vlocity EPC: Limits the number of rows returned across products, promotions, quotes, orders, opportunities and assets using the Find References button in Vlocity Product Console. The maximum is 1000. If null, the default limit is 20 rows.

Integer

Default: 20

CME Fall '18 and later

GCITrimMode

This feature returns a trimmed or reduced API response — only the minimal essential fields — instead of the full data payload.

true/false

Default: false

CME Summer ‘26 and later

GetAllChildProductFields

If UOWMode is set to True, this custom setting will determine whether the childProducts in the response should return all of the lineitem fields or just a few of them.

true/false

CME 232.7 minor release and later

GuestHandlingEnabled

When set to true, GuestHandlingEnabled enables the secure guest user feature. By default, its value is false without explicitly specifying an entry (recommended). You only need to specify this setting if you need to enable the guest user feature.

See Guest User Security Restrictions.

true/false

Default: false

CME Summer '24 and later

IncludeAddOnsAttributes

Can be used to check attributes before adding the associated child product to the cart.

When IncludeAddOnsAttributes is set to true, the API returns attributes for a product and all its child products (add ons) in the product hierarchy.

true/false

Default: false

CME Winter '19 and later

LevelBasedApproach

If set to true, APIs return root and first-level children in product hierarchy. Next level are returned when user clicks expand icon on product. If set to false, APIs return full product hierarchy. To use this setting,

Used only with Cart-Based APIs.

true/false

Default: false

CME 15.2 and later

LevelBasedPageSize

Specifies the number of children to include for getCartsItems and addToCart APIs calls. To use this setting, you must set Configuring Cart Item Refresh Levels.

Used only with Cart-Based APIs.

Integer

Default: 10

CME 15.2 and later

LevelBasedPagination

If set to true, APIs limit children in response to LevelBasedPageSize setting value. If LevelBasedPageSize is null, the default is 10. If set to false, APIs return full product hierarchy. To use this setting,

Used only with Cart-Based APIs.

true/false

CME 15.2 and later

LockOrderAfterSubmitToOM

Specifies whether the order is locked for editing.

  • true: If the order or order item not in Draft status, it is locked for editing.

  • false: The order or order item can be edited. This is was behavior prior to CME Winter '20.

Used only with Cart-Based APIs.

true/false

Default: false

CME Winter '20 and later

LogOdinNotifications

Specifies one of the following values to control when Order Event Log Entry records are created:

  • DoNotInsert: Disable notification logging.

  • InADifferentTransaction: Insert notifications in OrderEventLogEntry__b in a different transaction.

  • InSameTransaction: Insert notifications in OrderEventLogEntry__b in the same transaction.

This setting controls only the logging of in-flight order notifications. The actual processing of notifications is independent of this setting.

Any transaction-level OdinService.orderEventLogMode values override the value of LogOdinNotifications for those transactions unless set to null.

Default: DoNotInsert

CME Winter '20 and later

IsFieldSetServiceCacheEnabled This setting allows you to enable or disable the platform cache usage for the FieldSetService class.

true/false

Default: true

CME Spring '26 and later

MaintainV1AttributeFieldOnCAO

This setting determines whether the V1 attribute field is populated or cleared on the compiled attribute override records when the V2 attribute model is enabled.

true/false

Default: true

CME Spring '25 and later

MarginCalculationType

Setting for Cost and Margin.

  • margin = (price-cost)/price

  • markup = (price-cost)/cost

Add this setting manually.

margin/markup

Default: markup

CME Summer '19 and later

MaxCPUTimePerTransaction

If MTSEnabled is set to true, this value sets the maximum allowed CPU time per Apex transaction before the transaction is split.

Used only with Digital Commerce APIs.

Integer

Default: 9500

CME Summer '19 and later

MaxHeapSizePerTransaction

If MTSEnabled is set to true, this value sets the maximum heap size per Apex transaction before the transaction is split.

Used only with Digital Commerce APIs.

Integer

Default: 5000000

CME Summer '19 and later

MTSEnabled

When MTSEnabled is set to true, the Multi-Transaction Service splits Apex transactions into multiple transactions to avoid exceeding Salesforce Governor limits.

Used only with Digital Commerce APIs.

true/false

Default: true

CME Summer '19 and later

MultiEditStrictValidationMode

By default, the MultiEdit API returns a success response even when validation, pricing, or cardinality checks fail internally, giving callers no reliable way to detect errors. When you enable MultiEditStrictValidationMode setting, the MultiEdit API inspects the saved cart after committing and returns an accurate error status with a detailed list of error messages instead of a false success. The cart save behavior does not change; only the response accuracy changes. This setting is disabled by default for backward compatibility. Enabling it also activates a posthook extension point so you can append a custom message to the error list.

To enable it, go to CPQ Configuration Setup in Lightning Experience. You need an Industries CPQ license and permission to configure Standard Cart APIs.

true/false

Default: false

CME Winter '27 and later

Multiple Promotion Nodes Resolution

Promotions: Use this setting in custom applications to select line items and apply promotions to the line item. If set to true, node IDs must be supplied for the promotion. If set to true or null, promotions are applied in the sequence defined in the promotion.

true/false (or null)

Default: false

CME Summer '17

MultiServiceMasterQuoteRecordTypes

Enables Multisite multiple-quote flow for additional record types. For example, quotes with this record type are considered the MasterQuote in the flow.

Developer name of the Quote record types. Multiple record types can be supplied with comma-separated values.

Default value: Null

CME Winter '22

MultiServiceMasterOrderRecordTypes

Enables Multisite multiple-order flow for additional record types. For example, an order with this record type is considered the MasterOrder in the flow.

Developer-name of the Order record types. Multiple record types can be supplied with comma-separated values.

Default value: Null

CME Winter '22

MultiServiceSingleOrderRecordTypes

Specifies a comma-separated list of Order record type Developer Names to make the custom record types eligible to be used in a multi-service single-cart flow.

For example: SalesOrder,BusinessOrder

String

Default: EnterpriseOrder

CME Fall '20 and later

MultiServiceSingleQuoteRecordTypes

Specifies a comma-separated list of Enterprise Quote record type Developer Names to make the custom record types eligible to be used in a multi-service single-quote flow.

For example: EnterpriseQuote,BusinessQuote

String

Default: EnterpriseQuote

CME Fall '20 and later

NumberOfDMLPerTransaction

If MTSEnabled is set to true, this value sets the maximum allowed data manipulation language (DML) statements per Apex transaction before the transaction is split.

Used only with Digital Commerce APIs.

Integer

Default: 125

CME Summer '19 and later

NumberOfQueriesPerTransaction

If MTSEnabled is set to true and the current SOQL count exceeds the value of this setting, the transaction is split.

Used only with Digital Commerce APIs.

Integer

Default: 60

CME Summer '19 and later

NeedContextForAttribConfig

Advanced rules and Industries Cart-Based APIs: If set to true, executes queries and code related to context checking while running Advanced Rules of type Attributes Configuration in the cart. If set to false, these queries, code and rules are not run, which may improve performance.

true/false

Default: false

CME minor releases 103.1.20+ and 104.0.2 (Unavailable in 104 and 104.0.1)

ObjectCopierPrice

Quote-to-order: If set to false, does not rerun the pricing for the order.

true/false

Default: true

CME 103.1.27+ and 104.0.3+ minor releases

ObjectCopierValidate

If set to false, turns off validation when running

Quote-to-order: If set to false, does not rerun the validation of the order.

true/false

Default: true

CME 103.1.27+ and 104.0.3+ minor releases

OptimisedPromoCacheFlow

Activates optimized caching for Promotions to enhance scalability and interoperability. Ensures seamless integration between Standard DC and Standard CPQ for promotions.

Available under Vlocity CMT Administration tab in Custom Settings, select CPQ Configuration Setup.

true/false

Default: false

CME Spring ‘25 and later

OrderItemIgnoredColumns

Specifies a comma-separated list of OrderItem columns to be ignored in the configure and AddToBasket APIs. For example, specify vlocity_cmt__AssetReferenceId__c so that asset reference IDs are ignored when creating order items from the offer details.

Used only with Digital Commerce APIs.

String

Default: null

CME Fall '18 and later

OriginalOrderCancellationStatusChanges

When set to off, canceling the original order will set the:

  • Order status to Superseded

  • Order fulfillment status to Superseded

  • Supplemental order status to Canceled

  • Supplemental order fulfillment status to Activated

When set to on, users can cancel the original order while it is in flight, which will set the:

  • Order status to Canceled

  • Order fulfillment status to Superseded

  • Supplemental order status to Completed

  • Supplemental order fulfillment status to Activated

This setting is only applicable to the cancellation of original orders. It is not considered for amended or supplemental orders.

on/off

Default: on

CME Winter '20 and later

PreventNegativeAdjustment

Enable this setting for order accuracy and prevent the final price of a product from becoming negative. If any price adjustment make the value negative, the system sets the final price to zero instead of a negative value. Find the PreventNegativeAdjustment custom setting and change its value to True. This setting applies to all types of pricing adjustments such as manual, discount, and promotional.

true/false

Default: false

CME Winter '23 and later

PopulateAllActionVariants

Industries Cart-Based APIs in Winter '18 only: If set to true, populates both VFRemote and REST actions in response JSON, to ensure backward compatibility. If set to false or null, populates only VFRemote or REST sections in response actions, matching the request protocol, which increases performance.

true/false

Default: false

CME Winter '18 only

PriceBookRefreshBatchSize

Vlocity EPC: Limits the size of attributes and products processed in the Refresh Pricebook batch job to remain within the Salesforce governor limits.

Integer

Default: 200

CME Summer '18 and later

PricingElementServiceLogging

Enables pricing element logging for debugging. Logging can consume high amounts of CPU. To prevent a heap size error, always disable this option for production environments.

true/false

CME Summer '18 and later

PricingPlanServiceLogging

Enables pricing plan logging for debugging. Logging can consume high amounts of CPU. To prevent a heap size error, always disable this option for production environments.

true/false

CME Summer '18 and later

ProductAttributesBatchProcessorSize

Specifies the size of the product attributes processor batch job. Depending on the number of attributes in a product, you can configure this value to avoid exceeding Salesforce governor limits.

Integer

Default: 500

CME 106.0.5 and later

ProductHierarchyBatchProcessorSize

Specifies the size of the product hierarchy processor batch job. Depending on the product's hierarchy, you can configure this value to avoid exceeding Salesforce governor limits.

Integer

Default: 20

CME 106.0.5 and later

PricingVariableRoundingOverride

Pricing Variable Rounding: Allows users to override the default rounding behavior for pricing variables in CPQ. By configuring this setting, users can control whether to round the value and specify the decimal precision.

pricing_var_code_1=X pricing_var_code_2=y Where: X = Don't round the value y = Integer value specifying the decimal precision (e.g., y=2 for two decimal places)

CME Winter ‘25 and later

ProcessAllRulesApplicableForCart

In Standard APIs, to load all line items during Advanced Rule execution, set ProcessAllRulesApplicableForCart to true. Enable this setting for all APIs to ensure Advanced Rules execute against the full context of other cart line items.

true/false

CME Winter '26 and later

RelaxPromotionCardinalityRestrictions

Enabling this feature allows relaxing promotion related cardinality violations, treating severe errors as warnings. When set to True, if there's a promotion related cardinality violations, the product is added but the promotion won't apply. Instead, a warning message is included in the API response. If set to False, neither the product nor the promotion will be added, and a strict violation exception will occur.

true/false.

Default: false

CME 248.13 and later

ResetUserValueForPCP

This setting ensures that PCP rules with include/exclude actions contain only intended values in userValue. It enforces a sanity check to uphold data integrity.

true/false

Default: false

CME Summer ‘24 and later

RetainRecurringPriceDisconnectOrCancel

Determines whether the recurring charges are nullified upon disconnect and cancel operations in an Order/Quote/Opportunity cart.

If set to true, recurring prices for OrderItems, QuoteLineItems, and OpportunityLineItems in the CPQ cart are retained after Disconnect or Cancel actions. Otherwise, the default behavior occurs, setting the recurring price to zero

true/false.

Default: false

CME Winter '22

Disables the running of product configuration procedures in the post-execution of CPQ APIs.

This is an internal setting for developer use only. Do not change this setting unless requested by Salesforce for specific scenarios.

true/false.

Default: false

CME 232.5.2 and later

RollupActionCodeField

Pricing: Specifies the field name of the cart's custom line item field that stores the Change action when a price is rolled up from a child product to its parent during an Asset-to-Order transition. If null (the default), no Change action occurs.

String

Default: null

CME Winter '19 and later

SaveProductAttribMetadataCache

Vlocity EPC: Enables caching of v2 product attribute metadata in the CPQPartition of the Platform Cache. If set to true, product attribute metadata is cached. If set to false or null, product attribute metadata is not cached.

true/false

Default: false

CME Winter '20 and later

SaveProductAttributeMetadata

Vlocity EPC: Enables v2 product attribute metadata. If set to true or null, v2 attribute metadata is stored in AttributeDefaultValues__c and AttributeMetadata__c in shared catalog. If set to false, v2 attribute metadata is not stored on products in shared catalog.

true/false

Default: true

CME Fall '18 and later

ShouldConsiderDeletedItems

Advanced Rules: If set to true, rules evaluate deleted line items in the cart when applying product relationship rules such as auto-add, auto-remove, recommends, requires, and excludes. The Validation service will assume the auto-added child product remains in the cart, so the auto-add rule won't re-add it upon execution. If set to false or null, rules disregard line items that are deleted in the cart. The deleted item will then be removed from the Validation service's input, causing the Auto-add rule to re-add the child product when it executes.

true/false

Default: false

CME Summer '18 and later

ShouldConsiderOnlyActiveContextRules If set to true, only active context rules are considered for execution.

true/false

Default: false

CME Spring '25 and later

SimplePLERuleCacheMode

Context Rules, Tightest Match: If set to true, price list entries with context rules are cached in the CPQPartition org cache for performance. If set to false, price list entry eligibility is checked using any context rules. Do not use if context rules use functions.

true/false

Default: false

CME 103.1.20+ and 104.0.2 minor releases (Unavailable in 104 and 104.0.1)

SingleFdoMode

Vlocity FDO: If set to true, extra queries or code related to merging line items with future dated orders will NOT execute because only a single future dated order is created per asset. This may improve performance. If set to false, such queries or code will execute.

true/false

Default: false

CME 103.1.20+ and 104.0.2 minor releases (Unavailable in 104 and 104.0.1)

StrictSplitModeEnabled

When splitting line items, determines whether to ensure the total quantity is equal to the original number.

true/false

CME 11 and later

SuppressLineItemsForDeleteItem This setting checks if the line item details are returned in the cart API response during delete-item operations. Set it to true to bypass the lineItems node from DeleteItem API responses to reduce the payload size, where full breakdown is not required. Set it to false which is the default setting to preserve backward compatibility and ensure line items continue to be returned. This suppression applies exclusively to delete-item operations; leave all other cart operations, such as add-to-cart, unaffected as they will automatically continue to return line items as usual.

true/false

Default: false

CME Summer '26 and later

Toggle Next Message Flag

Industries Cart: If ON, dialog boxes display the Go to Next message link. If OFF, the Go to Next message does not display.

on/off

Default: on

CME 14 and later

UOWMode

If set to true, enables Unit of Work performance enhancements that save data manipulation language (DML) and Salesforce Object Query Language (SOQL) statements when making Cart-Based API calls. If UOWMode is set to false, these performance enhancements are not enabled. Starting with CME Summer '22, UoW Mode = false is discontinued and not supported.

  • Contact your Vlocity account representative before modifying the value of this setting.

  • Custom validation and pricing implementations may require modifications.

  • Digital Commerce APIs are independent of UoW. UoW has no impact on Digital Commerce.

  • If you enable UOWMode on Winter '22 and later releases, use ​update​ triggers instead of ​Insert​​ triggers to update SObject fields.

When UOWMode is enabled, the following features are supported:

  • No Response Mode: Returns only a success or failure message from the API instead of a full response. This saves time and improves performance. This feature supports Multi-add.

  • Multi-add, which supports:

    • Root item multi - add: You can add multiple offers or Bundles in a single API call by passing the different root Pricebookentry Ids as comma-separated values to itemId.

    • Child item multi – add: You can add multiple child items under a common parent in a single API call by passing the different child’s Pricebookentry Ids as comma-separated values to itemId.

  • Multi-delete, which supports:

    • Root item multi – delete: You can delete multiple offers or bundles in a single API call by passing the different root Line Item Ids as comma-separated values to itemId.

    • Child item multi - add: You can delete multiple child items under a common parent in a single API call by passing the different child’s Line Item Ids as comma-separated values to itemId.

true/false

Starting with CME Spring '21, the default is True.

Default is false for releases prior to CME Spring '21.

Starting with a fresh installation of CME Winter '22, UoW Mode = false is discontinued and not supported.

This setting will no longer be available in CME Summer '22.

Missing custom setting is interpreted as True.

Introduced as a beta setting with CME Spring '20, GA with CME Fall '20 and later

UseAssetReferenceIdForParentAndRoot

If set to true, enables performance enhancements that save data manipulation language (DML) statements in Add-to-Cart and other transactions.

Before setting UseAssetReferenceIdForParentAndRoot to true, add a new field to Field Mapper for the Order Product → Asset objects:

  • Select Order Product as the source object and Asset as the destination object.

  • Map OrderItem RootItemId__c to Asset RootItemId__c.

  • Map OrderItem ParentItemId__c to Asset ParentItemId__c.

  • Contact Salesforce Support before modifying the value of this setting.
  • Setting UseAssetReferenceIdForParentAndRoot to true and then back to false can cause data corruption.
  • As of Summer ’22, Digital Commerce APIs support a UseAssetReferenceIdForParentAndRoot setting of true.

true/false

Starting with CME Spring '21, the default is True for fresh installations.

Default is false for releases prior to CME Spring '21.

Introduced as a beta setting with CME Winter '20, GA with CME Fall '20 and later

UseDefaultBillingAndServiceAccountIds

Industries Cart: If set to true, the billing and service account IDs assigned to quotes or orders are inherited by their quote line items or order items.

true/false

Default: false

CME Summer '23 and later

UseParentScopeCardinalityChkInPromo

If set to false (default):

  • A promotion cardinality is checked against the quantity of each line item instance before updating.
  • The resulting cardinality definition is checked against all promotional line items of the same path in the cart scope.

If set to true:

  • A promotion cardinality is checked against the total quantity of all promotional line item instances of the same path.
  • The resulting cardinality definition is checked against all promotional line items of the same path in the cart scope.

When this setting is set to true, the Cardinality Check Scope promotion item setting isn't supported and is overridden. The scope of root product cardinality checks remains the same.

true/false

Default: false

CME 242.19 minor release and later

UseWeights

Context Rules and Tightest Match: If set to true, weights from context dimensions are considered when determining the tightest match price list entry. If set to false, weights are ignored. Weights are always ignored if SimplePLERuleCacheModeCPQ Configuration Settings Reference is true.

true/false

Default: false

CME 103.1.20+ and 104.0.2+ minor releases (Unavailable in 104 and 104.0.1)

UsingPromotions

Promotions and Industries Cart APIs: If set to true, executes queries and code processing related to promotion operations in the cart (not in the Promotions list). If set to false, does not execute such queries and code, which may improve performance.

true/false

Default: true

CME 103.1.20+ and 104.0.2 minor releases (Unavailable in CME 104 and 104.0.1)

UsingWeights

Context Rules and Tightest Match: If set to true, weights from context dimensions are considered when determining the tightest match price list entry. If set to false, weights are ignored. Weights are always ignored if SimplePLERuleCacheModeCPQ Configuration Settings Reference is true.

true/false

Default: false

CME Summer '19 and later

ValidateAndUpgradeV2Attributes

v2 Attribute Upgrades: If set to true, APIs upgrade attributes in the cart before submitting. If set to false or null, the cart functions as usual. Only use while a large upgrade job is still running. To use this setting, set SaveProductAttributeMetadataCPQ Configuration Settings Reference to true.

true/false

Default: false

CME Fall '18 and later

The new automated background diagnostic job, Log CPQ Config Data, helps us analyze and align your CPQ setup with the upcoming features effortlessly. This job periodically logs Industries CPQ settings and feature toggles managed within the Custom Settings section of CMT Administration. To ensure total security and system stability, the job does not log any customer records or pricing data, runs during off-peak hours to minimize footprint, and requires no administrative action despite appearing in your Apex Jobs monitor.

Note
Note Avoid to keep any private data in CPQ configurations.

Deprecated CPQ Configuration Settings

The Opportunity, Order, and Quote Managers are deprecated. Use Vlocity Cart.

Deprecated Setting Name

Purpose

Values

Versions

Application.Opportunity.ShowSummary

Application.Order.ShowSummary

Application.Quote.ShowSummary

DEPRECATED: If set to true, the Order Manager displays the header summary in the legacy Order/Quote/Oppty Manager pages. If set to false, no header summary will display.

true/false

 

Attribute Check Mode

DEPRECATED: Controls the AddToCart button in the legacy Order/Quote/Oppty Manager pages. When set to true, if any product is missing a required attribute value and the product quantity is greater than zero, the Add to Cart button is disabled. When set to false, the Add to Cart button is present. However, the Create Quote, Create Order, or Create Asset buttons are disabled.

true/false

Default: true

CME 11.43 and later

CacheAPI.CheckBasketEligibility

Determine whether the Digital Commerce API checks the cartContextKey parameter for the eligibility of the user's basket:

  • true: Check for the eligibility of the basket.

  • false: The API does not check for the eligibility of the basket.

Used only with Digital Commerce APIs.

With CME Fall '20 and later releases, use the basket lightweight validation feature instead.

true/false

Default: false

CME Summer '19 and later.

Deprecated with CME Fall '20 .

Cart Customizable Attribute Level

DEPRECATED: Applicable to Vlocity Cart in Summer '17. If set to ATTRIBUTE, Vlocity uses the legacy attribute metadata structure. If set to PRODUCT ATTRIBUTE or null, Vlocity Cart uses new attribute metadata structure. Not needed for new installs.

Attribute/Product Attribute or null

Summer '17

CPPreProcOpportunityDRBundle

CPPreProcOrderDRBundle

CPPreProcQuoteDRBundle

DEPRECATED: Used in calculation procedures to specify the name of the Data Mapper used in the CalcProcPreProcessor for attribute-based pricing using PricingRulesImplementation. This functionality is replaced by attribute-based pricing available on Vlocity Process Library.

String

 

CPPreProcUseDisplayText

DEPRECATED: Used in calculation procedures to specify whether to use the display value or actual value of an attribute in attribute-based pricing using PricingRulesImplementation. This functionality is replaced by attribute-based pricing available on Vlocity Process Library.

true/false

 

CpqPerfMode

DEPRECATED: If set to true, validate and refresh price icons appear next to the preview in in the legacy manager pages. AddtoCart will not price or validate in Perf Mode. If set to false, the icons will not display.

true/false

CME 13 and later

CPQSubmit

DEPRECATED: When the order is submitted, invokes the work flow-based implementation. This functionality is replaced by CPQ/SubmitOrder OmniScript.

See CPQSubmitFlowImplementation.

Flow

CME 10 and later

CPQSubmitOrder

DEPRECATED: When the order is submitted, invokes the order management-based implementation. This functionality is replaced by CPQ/SubmitOrder OmniScript.

See CPQSubmitFlowImplementation.

Flow

CME 12 and later

DefaultAccountFieldset

DEPRECATED: Specifies the API name of the field set to show fields in the custom account lookup dialog box from the review cart in the legacy Manager pages.

API name

 

DefaultRenumberThreshold

DEPRECATED: Sets the threshold above which the cart items are renumbered so there is no gap in the line numbers in the legacy Manager pages.

Integer

CME 11 and later

ImplicitPricing

DEPRECATED: Determines if the pricing service runs every time a change to the cart is made in the legacy Order/Quote/Oppty Manager pages. If set to true, pricing occurs only if one or more of the fields have changed. If set to false, pricing does not occur when fields change.

true/false

CME 12–14 only

PaginationEnabled

DEPRECATED: If set to true, getProducts API returns only a set of products to be shown on the first page in the legacy Order/Quote/Oppty Manager pages. Next set of products can be traversed by clicking on Next or Previous link. If set to false, getProducts API returns the complete list of products that are qualified.

true/false

 

PaginationSize

DEPRECATED: Specifies the number of product records getProducts API should return in the legacy Order/Quote/Oppty Manager pages. Used with PaginationEnabled.

Integer

Default: 100

 

Product Configuration Mode

DEPRECATED: Determines if product bundles are expanded or collapsed when added to the cart in the legacy Order/Quote/Oppty Manager pages. If the Product Configuration Mode setting is missing or has no value, the parent product is expanded and all child products are collapsed.

Expand/Collapse

CME 11.4 and later

Run Trigger And WorkFlow

DEPRECATED

 

CME 14.1 and later

UseSessionCache

DEPRECATED

false

CME Spring '17 and later