---
schema_version: "1"
id: 2606654760d3655c210d6c50a4ad7881840bf9bff1efee80428ae2eefdf5b7fe
title: Create Apex Classes for Attribute-Based Pricing
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/ind/264-0-0/comms_create_apex_classes_for_attribute_based_pricing.md
canonical_url: https://help.salesforce.com/s/articleView?id=ind.comms_create_apex_classes_for_attribute_based_pricing.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: 459622997b482214495bf6a4182b1516959f8125bc0d2e8597ab6eb59d543a9f
description: 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.
products:
  - Communications
  - Media
  - Energy and Utilities
release: "264"
---
# Create Apex Classes for Attribute-Based Pricing

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.

To implement attribute-based pricing in Summer '18, add the following Apex classes to your org. Due to code dependencies, you must create these classes in the order shown below.

For information on how to create Apex classes, see [Create an Apex Class](https://trailhead.salesforce.com/en/projects/quickstart-apex/steps/quickstart-apex-1) in the Salesforce help.

1. `PricingPlanHelper.cls`
    
    This Apex helper class is invoked by the CustomPricingPlanStepImpl.cls that analyzes the matrix and invokes the calculation procedure.
2. `CustomPricingPlanStepImpl.cls`
    
    This VlocityOpenInterface implementation Apex class that exposes the GetMatrixPrice method and invokes the PricingPlanHelper class.
3. `CustomPricingPlanStepImplTest.cls`:
    
    This is an Apex test class. For more information on Apex test classes, see [Introduction to Apex Code Test Methods.](https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_testing.htm)