Product Versioning in Salesforce Communications Cloud is a powerful feature that enables organizations to manage the evolution of telecom products over time. Given the dynamic nature of the telecom industry, where offerings frequently change due to market demands, pricing strategies, and regulatory shifts, versioning becomes crucial for accuracy, flexibility, and compliance.
What is Product Versioning?
Product Versioning allows you to manage multiple versions of a product / offer within your product catalog. Rather than creating entirely new records, businesses can update existing offers and release newer versions while retaining historical versions for reference or active use.
You can:
- Create and manage versions of products, Vlocity picklists, and object types to efficiently track and control changes over time.
- Create a draft version from any existing version.
- Release a specific draft version with effective dates and version numbers.
- Ensure previously released versions remain uneditable and undeletable.
Key Concepts
- Version Control
– Enables creation of new product versions with distinct attributes like pricing and eligibility
– Simplifies catalog structure by managing variations under one entity - Effective Dates
– Determines when a version becomes active
– Avoids overlaps between released versions and ensures continuous availability - Backward Compatibility
– Existing customers remain on older versions unless explicitly migrated
– Maintains billing integrity and historical data accuracy - Simplified Catalog Management
– Reduces the need for product duplication
– Facilitates cleaner lifecycle and change management - Auditability and Governance
– Tracks and retains a full history of changes
– Assists in compliance and auditing - Use Cases
– Evolving Product Offerings / Feature modifications for new customers
– Auditability and Regulatory Compliance – Product versioning provides a complete history of changes to products, enabling better governance and traceability
– Controlled Testing and Rollbacks – New product versions can be tested in isolation before going live. If necessary, older versions can remain in use or be reinstated, without affecting the entire product catalog
– Flexibility for Multiple Markets and Segments – Different customer segments or geographic markets often require tailored product configurations. Versioning supports this flexibility by enabling controlled variations without duplicating entire product records
– Price updates without affecting existing subscribers
– Launch of time-bound promotions
Lifecycle and Version History
- Products move through states such as Draft, Released, and Amendment Pending.
- In-Test and In-Review states are reserved for future use.
- Version History lets users view and compare versions for added, modified, or deleted components.· PDF reports can be exported for stakeholder review and approval.
Versioning Relationships with EPC Entities
Entities linked to products behave differently based on their relationship type:
- Version Dependent: Cloned per version (e.g., Attribute Assignments, Price Book Entries). The record is cloned and related to each corresponding version of the product.
- Version Agnostic: Shared across versions (e.g., Product Attachments, Configuration Procedures). The same record is used for different versions of the same product. For example, if you modify a Product Configuration Procedure, those changes are reflected in all versions of the product that refers to that record.
- Hybrid: Combination of both (e.g., Promotion Items).
You can find Salesforce documentation that provides detailed mapping of these entity relationships here.
Important Considerations
- Once enabled in production, Product Versioning cannot be disabled.
- Requires using the Product Designer instead of the traditional Product Console.
- Released versions cannot be deleted.
- Versioning dates must not overlap; overlapping released version dates throw errors.
- Selling dates must encompass versioning dates.
- Lifecycle Status must be set to “Released” before enabling versioning. Otherwise, released products won’t appear in the Cart post-activation.
- Versioning is supported for commercial products only. Technical products do not have versions since there is significantly less churn / change required to technical products over time.
- If you’re using Digital Commerce APIs, you can enable versioning in Spring ’22 or later.
Deployment and Migration
Migration of versioned products involves both cloned and reused entities:
- Cloned Entities: Migrated like new products.
- Reused Entities: Automatically pulled across all associated versions.
Key steps for migration include:
- Running prerequisite jobs like Populate Product Hierarchy Group Key Path and Reference Time.
- Preparing and uploading GlobalKeysToVersionDates.csv.
- Running validation and import jobs.
Use GlobalKey and GlobalGroupKey for correct export/import operations.
When to Use Product Versioning vs. Alternatives
Use Versioning | Consider Alternatives |
Major structural product changes | Minor attribute or pricing updates |
Need historical change traceability | Simpler, agile catalog management |
Regulatory or compliance requirements | Fast-paced changes with low risk |
Conclusion
Product Versioning in Salesforce Communications Cloud empowers organizations to adapt swiftly while maintaining stability and compliance. It streamlines product lifecycle management, supports evolving business needs, and ensures consistency across quoting, ordering, and billing.
For a step-by-step guide to implementing Product Versioning, refer to Salesforce Help and Product Versioning Overview.
Learn More About Partnering With Us!
Salesforce Lead Architect
Pratik Rudrakshe is a leading Salesforce Lead Architect with 17 Salesforce certifications. He has introduced 4 managed packages on the Appexchange and implemented a customer-facing journey in insurance using Vlocity Insurance, OmniOut, LWC, and the Newport Design System (NDS). Certified in Salesforce Industries/Vlocity CPQ and proficient in Vlocity and Salesforce LWC, Pratik also holds a Copado certification, highlighting his CI/CD process skills. His specialties include Salesforce Industry/Vlocity CPQ (Communications & Insurance), EPC, ESM, Contract Management, Vlocity LWC, Salesforce Lightning (LWC & Aura), Experience/Community Cloud, Salesforce Health Cloud, NPSP (Nonprofits Cloud), Integrations, CICD, Triggers, Apex, Visualforce, CPQ, Order Management, CTI Integration, JavaScript, CSS, and jQuery.