Sample Upfront Payment Amount Calculation
Beginning in Oracle CPQ 26A, the standard quote process supports upfront charges/payments as needed by business policies, selling channels, etc. Upfront charges can be implemented for CPQ transactions, when quoting for a subscription renewal, or amending a subscription bundle with option updates. Essentially, in all the scenarios where there's a pricing impact in ABO flows, customer may be asked to pay 'upfront' payment at the ordering time. The order can be placed directly through CPQ (direct sales), or through self-service (new or existing subscription amendment, renewal, termination).
The standard quote process provides default calculations for the total and rollup amounts, but default calculations are not provided for the Line Upfront Amount calculation, as it can vary drastically for different product types and businesses.
Customers define the line upfront amount calculation
Complete the following procedure to define a line upfront amount calculation. Sample scripts are provided to support two different business use cases.
-
Navigate to CPQ Admin > Prices > Pricing Attributes.
-
Create the following custom Pricing Attributes:
For detailed instructions refer to Prices > Pricing Portal > Pricing Attributes: Add a Custom Pricing Attribute.
-
Upfront Amount
-
Pricing Entity: Line
-
In/Out: Output
-
Data Type: Currency
-
Attribute Mapping > Source Attribute Name: Line Upfront Amount
-
-
Line Action Code
-
Pricing Entity: Line
-
In/Out: Input
-
Data Type: String
-
Attribute Mapping > Source Attribute Name: Line Delta Action Code
-
-
-
Navigate to CPQ Admin > Prices > Pricing Options.
For detailed instructions refer to Prices > Pricing Portal > Pricing Options.
-
Disable Apply only the first matching Price Model.
-
Enable Pricing Script: After Pricing Engine Execution.
-
Click the Pricing Script: After Pricing Engine Execution Edit link.
-
Click Reselect, select the applicable Pricing Document Attributes, then click Next.
-
Line Action Code (
lineActionCode_c) -
Upfront Amount (
upfrontAmount_c) -
Charge Definition Code (
chargeDefinitionCode) -
Charge Type (c
hargeType) -
Dynamic Pricing Type (
dynamicPricingType) -
Is Product Price (
isProductPrice) -
Price Period (
pricePeriod) -
Price Type (
priceType) -
Unit Price (
unitPrice)
-
-
Add a script to calculate the line upfront amount:
Sample Use Case 1: Upfront Amount is total of all One Time Charges for all quantities
Sample Use Case 2: Upfront Amount is One Time charge + First Period's recurring charge for all qty . Calculate Upfront charges for all lines except terminated lines. -
Click Save or Update.
-





