To use a different flow for CPQ based on the flow settings, you must create a custom button for the Quote/Proposal object. The custom buttons is named Configure Product with a custom label you define in the formula.

  1. Go to Setup > Create > Objects and search for Quote/Proposal object.
  2. In the Custom Fields & Relationships related list, click New.
  3. From Step 1. Choose the field type, choose Formula as Data Type and click Next.
  4. From Step 2. Choose the output type, Type Configure (Flow) in the Field Label. Choose Text as Formula Return Type.
  5. In Step 3. Enter formula, you must paste one the following URL under the Simple Formula tab.

    URLDescription

    Regular

    This is the regular URL available for Configure Products button.

    IF ( LEN( Apttus_QPConfig__PriceListId__c ) > 0 , HYPERLINK("/apex/Apttus_QPConfig__ProposalConfiguration?id="&Id&"&flow=ngFlow" , IMAGE("/resource/Apttus_QPConfig__Button_Configure", "Configure Products"),"_self"), NULL)
    CODE
    Optimized

    You can use the optimized URL to launch Catalog & Cart quickly compared to the above-mentioned URL. The reduction in time to launch Catalog and Cart compared using the optimized URL may vary and in some Orgs, the benefits may be minimal. The optimized URL primarily requires the following parameters:

    • Business Object ID
    • Flow

    All other parameters are supported. You can update the existing Configure Products formula with the optimized launch URL. If the org has existing customization, you must test and verify the optimized URL after replacing the existing URLs. The following mentioned URL is an example of an optimized URL for the Configure Products button.

    IF ( LEN( Apttus_QPConfig__PriceListId__c ) > 0 , HYPERLINK("/apex/Apttus_Config2__Cart?businessObjectId="&Id&"&flow=ngFlow", IMAGE("/resource/Apttus_QPConfig__Button_Configure", "Configure Products"),"_self"), NULL)
    CODE

    Ensure that you enter the name of your Flow setting in the flow parameter in the above formula. In our example, it is ngCPQ.

  6. Click Next
  7. Select appropriate Field Level Security and click Next.
  8. Choose the page layouts on which you want to display this field.
  9. Click Save.

You can use to following parameters in the formula to achieve different tasks.

ParameterDescription
productOrderByClauseUse this parameter to sequence the products within a Category. Refer to Sequencing Products within a Category for more details.
asyncFinalize

Set the value of this parameter to True to finalize any cart asynchronously. When the Sales rep clicks Finalize, the cart closes and the Sales rep is redirected to the Quote Details page. The finalization process is completed in the background. The Sales Rep must refresh to see the changed product configuration status.

If the parameter value is False, then the cart is finalized without closing.

isCartTotalingDisabled

Set the value of this parameter to True to selectively skip totaling of pricing of products on the Cart, at a transaction level.  When you add products on the cart, the totals section is not updated.

When you see the value to True, CPQ does not execute Pricing Callback in ADJUSTMENT mode.

useAdvancedApproval

Set the value of this parameter to False to selectively skip the approval of cart, at a transaction level. CPQ invokes the approval process only if this flag is set to True.

If any workflow processes are setup to trigger approvals based on criteria, they will occur when the criteria are matched. The Approval Stage inside the Quote/Proposal record is set to Approval Required. When the Approval Stage changes, the Submit for Approval button becomes available and you can submit the Quote for approval to management if any approval processes have been configured.

If this parameter is set to False or if it is absent, CPQ skips the approval process even when the criteria are matched.


To support quote approvals, you must use the isCartApprovalDisabled parameter.

useAdvancedApprovalisCartApprovalDisabledApproval TypeApproval Check
TrueTrueQuote ApprovalNo
TrueFalse or absentCart ApprovalYes
False or absentTrueNoneNo
False or absentFalseNoneNo

When the useAdvancedApproval parameter is enabled, it enables cart approvals automatically unless cart approval is explicitly disabled. When cart approval is disabled, CPQ reverts to quote approvals.

useDealOptimizer

Set the value of this parameter to False to selectively skip deal guidance, at a transaction level. CPQ shows the deal guidance on the Cart page only if this flag is set to True.

If you have created rules that define the various criteria of a good deal, the deal rating is available to the Sales Representatives at the time of negotiation.

If this parameter is set to False or if it is absent, CPQ skips the deal guidance and does not show on the Cart page.

deferPricingUntilCart

Set the value of this parameter to True to set Defer Pricing on, at a transaction level. 

When Defer Pricing is on, CPQ performs pricing of products only after you click Go to Pricing. When Defer Pricing is off, CPQ performs pricing as and when you add or delete products.

useAdvancedCurrencySet the value of this parameter to True to enable dated currency conversion on the Cart, at a transaction level.
styleSheetURLDefine the URL to the custom style sheet as the value of this parameter to override the default style sheet in CPQ.