---
schema_version: "1"
id: 5cfe83dd5665d9c029462cde6c9abbcc975d1ca39bf793c14e020bed3ca5707c
title: Attribute-Based Pricing Using Pricing Plans
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/ind/264-0-0/comms_attribute_based_pricing_using_pricing_plans.md
canonical_url: https://help.salesforce.com/s/articleView?id=ind.comms_attribute_based_pricing_using_pricing_plans.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: 6b8485ce0a1ff1d24cafaef545a5135664123318cf1788721724a8660dd13863
description: You can implement attribute-based pricing using pricing plans, calculation procedures, and standard calculation matrices. Attribute-based pricing enables you to create a single product entity and attributes, and use a matrix to price each combination of attributes. This approach reduces the number of products in your catalog and gives you an easy way to review and administer your pricing model.
products:
  - Communications
  - Media
  - Energy and Utilities
release: "264"
---
# Attribute-Based Pricing Using Pricing Plans

You can implement attribute-based pricing using pricing plans, calculation procedures, and standard calculation matrices. Attribute-based pricing enables you to create a single product entity and attributes, and use a matrix to price each combination of attributes. This approach reduces the number of products in your catalog and gives you an easy way to review and administer your pricing model.

![Note](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-ind-comms_media_energy_managed-264-0-0-production-enus/ff4079f6-a384-475c-b863-578bbbb0ef9b/images/icon_note.png)

Note

Vlocity Communications supports only standard calculation matrices. It doesn’t currently support grouped calculation matrices, row-versioned calculation matrices, or wildcards in calculation matrices. For a description of each, see [Calculation Matrices](https://help.salesforce.com/s/articleView?id=xcloud.os_calculation_matrices.htm&language=en_US).

You create a step in the default pricing plan. Then, use that step to call a calculation procedure and a standard calculation matrix that stores the product attributes and pricing information. At runtime, the PricingPlanService implementation passes the cart line items, including product information and their attributes and fields, to the calculation service and retrieves the correct price. The price returned overrides the base price in the shared catalog. Additional adjustments and calculations can be applied before the price is displayed in Industries Cart.

![Pricing Plan Service](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-ind-comms_media_energy_managed-264-0-0-production-enus/ff4079f6-a384-475c-b863-578bbbb0ef9b/resources-product/images/pricing_plan_procedures.jpg)

These types of attribute-based pricing are supported:

- Standard
    
    Standard attribute-based pricing provides the ability to price a product using attributes.
- Source/Target
    
    Source/Target attribute-based pricing enables you to price a product based on the attributes of another product. You can also provide a path to a child product in a bundle to change the price of a product based on its specific context.
    
    ![Note](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-ind-comms_media_energy_managed-264-0-0-production-enus/ff4079f6-a384-475c-b863-578bbbb0ef9b/images/icon_note.png)
    
    Note
    
    Because a calculation matrix requires input data to be unique across all the rows in the matrix, you can't use source-target attribute-based pricing to change more than one child product in a bundle.
- Range
    
    Range attribute-based pricing enables you to define ranges for each attribute and field in the matrix, and to determine a price for the product when values fall within those ranges.

![Range ABP](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-ind-comms_media_energy_managed-264-0-0-production-enus/ff4079f6-a384-475c-b863-578bbbb0ef9b/resources-product/images/types_of_attribute_based_pricing.jpg)

- **[Download the Attribute/Volume Based Pricing DataPack](https://help.salesforce.com/s/articleView?id=ind.comms_download_the_attribute_volume_based_pricing_datapack.htm&release=264.0.0&type=5)**  
    The Fall '18 release includes an attribute schema change. Customers who implemented attribute-based pricing in an earlier release must install the latest version to obtain the latest Apex classes that support the new attribute schema. The updated classes are backward-compatible, so they can be used in deployments that have not migrated yet to the new schema as well as in deployments that have completed the migration.
- **[Confirm the Post-Install Setup for Attribute-Based Pricing](https://help.salesforce.com/s/articleView?id=ind.comms_confirm_the_post_install_setup_for_attribute_based_pricing.htm&release=264.0.0&type=5)**  
    Learn how to set up attribute-based pricing in the Summer '18 and Fall '18 releases of ​Salesforce Industries Communications, Media, and Energy.
- **[Create Apex Classes for Attribute-Based Pricing](https://help.salesforce.com/s/articleView?id=ind.comms_create_apex_classes_for_attribute_based_pricing.htm&release=264.0.0&type=5)**  
    The Fall '18 release includes an attribute schema change. Customers who implemented attribute-based pricing in an earlier release must install the latest version of the Attribute/Volume Based Pricing DataPack in order to obtain the latest Apex classes that support the new attribute schema. The updated classes are backward-compatible, so they can be used in deployments that have not migrated yet to the new schema as well as in deployments that have completed the migration.
- **[Pricing Matrices for Attribute-Based Pricing](https://help.salesforce.com/s/articleView?id=ind.comms_pricing_matrices_for_attribute_based_pricing.htm&release=264.0.0&type=5)**  
    To speed your deployment, Salesforce provides pre-configured calculation procedures and matrices for attribute-based pricing.
- **[Calculation Procedures for Attribute-Based Pricing](https://help.salesforce.com/s/articleView?id=ind.comms_calculation_procedures_for_attribute_based_pricing.htm&release=264.0.0&type=5)**  
    To speed your deployment, ​Salesforce Industries Communications, Media, and Energy provides preconfigured calculation procedures and matrices for attribute-based pricing.
- **[Set Up a Custom Pricing Step for Attribute-Based Pricing](https://help.salesforce.com/s/articleView?id=ind.comms_set_up_a_custom_pricing_step_for_attribute_based_pricing.htm&release=264.0.0&type=5)**  
    After you implement the Apex classes, calculation procedures, and matrices included in the Attribute/Volume Based Pricing DataPack, create a new step in the **Default Pricing Plan**.
- **[Attribute-Based Pricing with Usage Pricing and Cost and Margin](https://help.salesforce.com/s/articleView?id=ind.comms_attribute_based_pricing_with_usage_pricing_and_cost_and_margin.htm&release=264.0.0&type=5)**  
    A calculation matrix for attribute-based pricing can be expanded to handle usage pricing, cost and margin, or both. You must also update the PricingPlanHelper Apex class and the Pricing Plan.
- **[Set Up Attribute-Based Pricing with Time Plan and Time Policy](https://help.salesforce.com/s/articleView?id=ind.comms_set_up_attribute_based_pricing_with_time_plan_and_time_policy.htm&release=264.0.0&type=5)**  
    Time Plan Attribute-Based Pricing supports output columns for Time Plan and Time Policy. In accordance with Time Plan and Time Policy, you can create adjustment records with Source = 'ABP'.
- **[Test for Attribute-Based Pricing at Runtime](https://help.salesforce.com/s/articleView?id=ind.comms_test_for_attribute_based_pricing_at_runtime.htm&release=264.0.0&type=5)**  
    To test attribute-based pricing, create an order and add a product to the cart that is listed in your calculation matrix. Set the attributes (or fields, if you have implemented range attribute-based pricing) as needed to trigger the attribute-based pricing.
- **[Configure Fallback Pricing for Attribute-Based Pricing](https://help.salesforce.com/s/articleView?id=ind.comms_cme_configure_fallback_pricing_for_attribute_based_pricing.htm&release=264.0.0&type=5)**  
    Use Business Rules Engine (BRE) to set the pricing matrix for Attribute-Based Pricing and it applies a fallback price if no matching value is found.