Charge Attributes
Overview
Beginning in Oracle CPQ 24D, the Charge Attributes are combined with Pricing Attributes into a single module in the Pricing Portal. Refer to Pricing and Charge Attributes for releases Oracle CPQ 24D and later. The "Charge" type Pricing Entity identifies Charge Attributes inside the Pricing Attributes module. The Pricing Attributes module supports all previous Charge Attribute fields and functionality.
Oracle CPQ 23C introduced several new Pricing features to support the pricing of products with multiple charges. This capability dramatically reduces SKU proliferation and product complexity by allowing administrators to define a set of multiple charges that will be applied when selling a single product in CPQ quoting and configuration. For example, a product could be sold as a subscription with both a monthly recurring subscription fee and a one-time activation fee without adding any additional SKUs or parts.
CPQ provides several standard charge attributes and administrators can define custom charge attributes in CPQ Pricing Engine. Charge attributes define the charge schema that is available in Product Launch, Quoting, and the Calculate Price REST API.
CPQ administrators can access charge attributes by clicking on the Charge Attributes card in the Pricing Portal.
Charge Attribute Pages
Charge Attributes List Page - This page lists standard and custom charge attributes. Customers can add their own custom charge attributes or use standard charge attributes that are provided in pricing.
Item | Description |
---|---|
1 |
Navigate to Pricing Portal. |
2 |
Click Actions to add or reorder custom charge attributes, or to Manage Columns for the Charge Attributes list. Note: Standard charge attributes can’t be reordered. |
3 |
Enter search criteria to filter charge attribute results, which remain persistent while navigating within charge attributes. |
4 |
Sort custom charge attributes using Order, Name, Variable Name, Data Type, Type, or Status column headers. Note: Standard charge attributes are not sorted and will remain at the top of the charge attributes list. |
5 |
Click the appropriate Name link to edit or click the line ellipsis and select Edit an existing charge attribute. |
6 |
Click the charge attribute line ellipsis and Edit a charge or to Delete an inactive custom charge. Note: Standard charge attributes and active custom charge attribute can’t be deleted. |
Charge Attribute Page - When an administrator clicks on the Name of a charge attribute, Basic Details for the charge attribute are displayed.
Item | Description |
---|---|
1 |
Navigate to the Charge Attributes list page. |
2 |
Navigate to Next or Previous charge attribute in the charge attribute list or filtered charge attribute search results list. |
3 |
Click Edit to modify editable charge attribute fields. The fields that are editable are dependent on the charge attribute Type and Data Type. |
4 |
If applicable, the name and link for the appropriate Lookup. |
5 |
The Data Type: Boolean, Currency, Date, Decimal, Integer, String, or Text Area. |
6 |
The Default Value for specified for Boolean, Date, Decimal, Integer, or String data types. When a Lookup is selected, you can select a default value from values defined in Pricing Lookups. |
7 |
Status indicates if the Charge Attribute is active of inactive. |
8 |
Type indicates if the Charge Attribute is standard of custom. |
9 |
Selected Value: Key, Required, or Negotiable. |
10 |
Visibility identifies if the charge attribute is visible in other CPQ modules.
|
11 |
Click More Details to view the variable name. |
Standard Charge Attributes
CPQ provides standard charge attributes to allow administrators to quickly define their own charges for their products. View Standard Charge Attributes
Name | Variable Name | Description | Data Type | Lookup | Visibility |
---|---|---|---|---|---|
Calculation Information |
calculationInfo |
A JSON array of the Price Models used in calculating this charge's price. |
Text Area |
Runtime |
|
Charge Definition |
chargeDefinition |
The display label of the charge definition. This attribute is only available when Charge Definitions are enabled. |
Text |
Administration Runtime |
|
Charge Definition Code |
chargeDefinitionCode |
The code of the charge definition. This attribute is only available when Charge Definitions are enabled. |
Text | Runtime | |
Charge Definition Integration ID |
chargeDefinitionIntegrationId |
The charge definition code in the integrated order management system. This attribute is only available when Charge Definitions are enabled. |
Text | Runtime | |
Charge Type |
chargeType |
The classification of a charge associated with the price for a product or service. This attribute differentiates the purpose of charges with the same price type and price period. For example, the sale of a network device may have both a one-time purchase price (with charge type of 'Purchase Price') and a one-time installation price (with charge type of 'Installation Fee'). |
String |
Charge Types |
Administration Runtime |
Discount Amount |
discountAmount |
The extended custom discount amount per period for this charge. Typically this represents the unit discount x quantity. |
Currency |
Runtime |
|
Discount Type |
discountType |
The type of custom discount applied to this charge. Typically this may be an override price, a discount value or a discount percentage. |
String |
Discount Types |
Runtime |
Discount Value |
discountValue |
The numeric value for a custom discount associated with the discount type for this charge. For example, if the Discount Type is Override, this value with be the override price for this charge. |
Decimal |
Runtime |
|
Dynamic Pricing Type |
dynamicPricingType |
The type of dynamic pricing used to define this charge: static, tiered, volume, rate card, advanced. |
String |
Runtime |
|
Net Amount |
netAmount |
The extended net price or amount per period that will be paid for this charge. Typically this represents the unit price x quantity. |
Currency |
Runtime |
|
Net Price |
netPrice |
The unit price net of all discounts for this charge. The Net Price is the unit price that the customer will be invoiced. |
Currency |
Runtime |
|
Price Period |
pricePeriod |
The time period, frequency, or recurrence with which the price or charge is levied. |
String |
Price Periods |
Administration Runtime |
Price Type |
priceType |
The basis on which a price or charge is levied, whether one time, on a periodic basis or based on usage. |
String |
Price Types |
Administration Runtime |
Rate Card |
rateCard |
Display label for the Rate Card applied in calculating this charge's price. |
String |
Runtime | |
Rate Card in HTML |
rateCardinHTML |
The HTML-formatted rate card data. |
Text Area |
Runtime | |
Rate Card Structure |
rateCardStructure |
The rate card used to calculate this charge's price. |
Text Area |
Runtime | |
Rate Card Variable Name |
rateCardVariableName |
Variable Name for the Rate Card applied in calculating this charge's price. |
String |
Runtime | |
Unit Price |
unitPrice |
The unit price to be paid by the customer for this charge. |
Currency |
|
Runtime |
Usage UOM |
usageUOM |
The unit of measure of usage for usage charges, which may differ from the unit of measure used for the parent product. |
String |
Usage UOMs |
Administration Runtime |
Standard charge attributes cannot be reordered, deleted, or inactivated.
Administration
Perform the following steps to create a new Custom Charge Attribute:
- Navigate to the Admin page.
- Click Pricing Portal in the Products section.
- Click on the Charge Attributes card.
-
Select Add from the Actions drop-down. The Create Charge Attribute panel opens.
- Enter a name in the Name field.
-
Enter the Variable Name.
Variable names can only contain alpha-numeric characters and underscores. The entry can be changed before saving, but after saving the value is read-only. "_c" is automatically appended to the end of custom charge attributes.
- Select the Data Type: Boolean, Currency, Date, Decimal, Integer, String, or Text Area.
- Select a pricing lookup from the Lookup drop-down.
- This field is only available for string data types.
- Refer to Pricing Lookups for more information.
- (optional) Select or enter a Default Value.
- The default value cannot be specified for currency or text area data types.
- Only True or False values can be selected for Boolean data types.
- When a Lookup is selected, you can select a default value from values defined in Pricing Lookups.
- The Visibility field identifies if the charge attribute is visible in other CPQ modules. This field is automatically populated. Visibility options can be deleted, but this field cannot be empty. You can click inside the Visibility field to reselect modules.
- Administration: CPQ administrator UIs, for example, Pricing Portal, Product Launch
Administration must be visible to display an attribute in Price Model > Pricing Data. - Runtime: Buy-side UIs, for example, quoting & configuration buy-side.
- Administration: CPQ administrator UIs, for example, Pricing Portal, Product Launch
- Check Required to make this field mandatory.
- Check Negotiable to allow modification of this attribute at runtime.
- (optional) Enter a Description.
Note: The Key field cannot be modified and is only enabled for the Price Type, Charge Type, and Price Period standard charge attributes.
Complete the following steps to synchronize the Transaction Line Charge Array Set with the pricing charge schema, which is comprised of standard and extensible custom charge attributes. If the Transaction Line Charge Array Set doesn’t exist, it will be created when the Synchronize Charge Array Set action is invoked.
- Navigate to Admin > Process Definition.
- Select Documents from the applicable process Navigation drop-down menu, and then click List.
- Select Attributes from the Transaction Line Navigation drop-down menu, and then click List.
- Click Synchronize Charge Array Set at the bottom of the Attribute List page.
Notes:
- If the Transaction Line Charge Array Set doesn’t exist, it will be created when the Synchronize Charge Array Set action is invoked.
- Refer to Sub-Document Attribute Sets > Charge Array Set for more information about the Transaction Line Charge Array Set.
Notes
- By default, CPQ Pricing Engine uses a standard natural key for the Charge object including Price Type, Charge Type, and Price Period.
- Oracle Order Management requires that each Charge for an item has a unique combination of Price Type and Charge Type. If you are integrating Oracle CPQ with Oracle Order Management you will need to define a different Charge Type to distinguish Charges with the same Price Type but different Price Periods.