CPQ vs RC
Section 06 Salesforce CPQ Revenue Cloud

Approvals, Guided Selling & Analytics

A deep-dive comparison of approval orchestration, guided product selection, and revenue analytics capabilities across Salesforce CPQ (with Advanced Approvals) and Salesforce Revenue Cloud. Covers data model, automation patterns, configuration effort, and the full migration path.

6.1

Use Case, User Journey & Personas

When This Section Applies

Deal Scenarios

  • Quote with discount exceeding rep authority (deal desk approval)
  • Strategic account pricing requiring VP sign-off
  • Non-standard contract terms requiring legal review
  • Partner/PRM deal registration requiring internal approval

Analytics & Selling

  • Guided product selection for complex multi-cloud bundles
  • Quote conversion funnel & win/loss analytics
  • Discount analysis by product family or territory
  • Revenue forecast accuracy and pipeline health

Internal Personas

💼
Sales Rep
Submitter — creates quote, triggers approval, awaits decision before sending to customer
👔
Sales Manager
First-level approver — reviews discount levels, approves/rejects with reason via email or mobile
🏦
Deal Desk
Escalation approver — validates pricing strategy, margin floor, commercial terms
🧮
Pricing Manager
Defines approval thresholds, manages price books, sets auto-approve conditions
📊
Sales Ops / Analyst
Consumes analytics dashboards — quota attainment, discount trends, approval cycle time
⚙️
CPQ / RC Admin
Configures approval rules, guided selling processes, Decision Tables, and analytics datasets

External Personas

Partner (PRM)

Partner submits deal registration or quote via Salesforce PRM (Experience Cloud). CPQ Advanced Approvals evaluates partner discount rules and routes to channel manager + deal desk for approval. Partner receives email notification on decision.

Partner (Revenue Cloud)

Partner submits via Experience Cloud. Revenue Cloud Flow-based approvals trigger on ApprovalRequest creation. Approval chain routes through channel manager flow steps. Platform Events broadcast status updates to the partner portal in real time.

Journey A — Approval Flow

Both platforms follow this logical sequence; implementation mechanism differs (see 6.4)

Rep saves quote with deep discount
Trigger event
CPQ: Approval Rules evaluated on save
CPQ path
RC: Flow triggers on Quote save; evaluates Decision Table thresholds
RC path
Multi-step approval chain (sequential or parallel)
Routing
Approved / Rejected with reason
Decision
Rep notified; quote unlocked or locked
Resolution

Journey B — Guided Selling Flow

Rep opens configurator / product selector
Entry point
CPQ: Guided Selling process prompts appear (SBQQ__Process__c)
CPQ path
RC: Decision Table evaluates input answers; OmniScript flow (if licensed)
RC path
Answers filter eligible products / bundles
Filtering
Recommended bundle pre-selected; rep adds to quote
Output

Journey C — Analytics Flow

Sales Ops opens CRM Analytics / Revenue Intelligence
Login
CPQ: Custom CRM Analytics dataset on SBQQ__Quote__c + line objects
CPQ data
RC: Revenue Cloud Intelligence pre-built app; native Quote + Asset objects
RC data
Quote conversion funnel; discount variance analysis
Analysis
Action: adjust targets, alert reps, update discount policy
Action
💡
Key Takeaway — 6.1

The personas and logical journeys are identical across both platforms; the difference is in the implementation mechanism. CPQ relies on its proprietary approval engine and guided selling objects, while Revenue Cloud leverages platform-native Flow orchestration, Decision Tables, and optionally OmniStudio — resulting in more flexibility but requiring more declarative design effort upfront.

6.2

Licensing Requirements

Salesforce CPQ Licensing

  • CPQ Base — includes basic approval rules (limited; no advanced chain management), Product Rules and guided selling (SBQQ__Process__c included)
  • CPQ+ — required for Advanced Approvals: parallel/sequential chains, delegated approvals, smart approvals, auto-approve conditions, approval history dashboard
  • CRM Analytics / Tableau CRM — separate add-on required for revenue analytics; no pre-built CPQ-specific app (must build custom datasets and dashboards)
  • Tableau — alternative BI layer; requires ETL/connector to Salesforce objects

Revenue Cloud Licensing

  • Revenue Cloud Base — includes Flow-based approval orchestration (no separate SKU), Decision Tables for guided selling and pricing, native approval request tracking
  • Revenue Intelligence — separate add-on; includes pre-built Revenue Cloud dashboards, AI-powered forecasting, deal health scoring
  • Einstein Recommendations — requires Einstein Platform license; powers next-best-action guided recommendations
  • OmniStudio — included in some Revenue Cloud bundles; enables OmniScript-based guided selling wizards

Feature Availability by License SKU

Feature CPQ Base CPQ+ RC Base Revenue Intelligence Einstein / OmniStudio
Basic approval rules Limited Full Flow-based ~ Included ~ Included
Advanced parallel/sequential approvals Via Flow ~ Included ~ Included
Delegated approvals Via Flow ~ Included ~ Included
Guided selling (basic) Decision Tables ~ Included ~ Included
OmniScript guided selling wizard ~ Bundle-dependent ~ Included
Revenue analytics dashboards (CRM Analytics add-on) (CRM Analytics add-on) (add-on) Pre-built ~ Included
Einstein AI recommendations ~ Partial
Approval email with approve/reject links Via Flow/Email Action ~ Included ~ Included
💡
Key Takeaway — 6.2

CPQ's advanced approval capability requires upgrading from base CPQ to CPQ+, while Revenue Cloud includes Flow-based approval orchestration in the base license. However, meaningful revenue analytics requires an add-on in both products (CRM Analytics for CPQ; Revenue Intelligence for RC). Revenue Cloud's Decision Table-based guided selling is included in base, whereas CPQ's guided selling objects are part of the base package but have limited flexibility compared to OmniStudio (which may require an additional license).

6.3

Data Model

CPQ-Specific CPQ Advanced Approval Objects

SBQQ__ApprovalRule__c CPQ-Specific
Defines when an approval is needed. Evaluated on quote save. Contains conditions, step ordering, and re-entry logic.
  • SBQQ__Quote__c Lookup to Quote — scopes rule to a quote record
  • SBQQ__ApprovalStep__r Child steps evaluated in order or in parallel
  • SBQQ__Operator__c AND/OR logic for condition evaluation
  • SBQQ__RejectBehavior__c Controls quote lock behavior on rejection
  • SBQQ__Active__c Boolean — rule is live or dormant
SBQQ__ApprovalCondition__c CPQ-Specific
An individual condition on an approval rule (e.g., Discount > 20%). Multiple conditions ANDed/ORed per rule.
  • SBQQ__Rule__c Parent lookup to SBQQ__ApprovalRule__c
  • SBQQ__TestedVariable__c Lookup to SBQQ__ApprovalVariable__c — the formula to evaluate
  • SBQQ__Operator__c Comparison operator: =, !=, >, <, >=, <=, contains
  • SBQQ__FilterValue__c Threshold value (e.g., "20" for 20% discount)
SBQQ__ApprovalStep__c CPQ-Specific
A single step in the approval chain. Steps can be sequential (ordered by step number) or parallel (same step number). Each step points to an approver or approver group.
  • SBQQ__Rule__c Parent lookup to SBQQ__ApprovalRule__c
  • SBQQ__Number__c Sequence number — same number = parallel, ascending = sequential
  • SBQQ__ApproverGroup__c Lookup to group of approvers (any-one or all required)
  • SBQQ__Approver__c Direct user lookup for single approver
  • SBQQ__ApproverField__c Dynamic approver from a formula field on the quote (manager hierarchy)
  • SBQQ__Email__c Email template to send on step activation
SBQQ__ApprovalVariable__c CPQ-Specific
A formula variable used in approval conditions. Can reference quote fields, rollup summaries of line items, or custom Apex calculations.
SBQQ__ApproverGroup__c CPQ-Specific
A named group of approvers. Configured as "any one approves" or "all must approve" (consensus). Members defined via SBQQ__ApproverGroupMember__c junction object.

CPQ-Specific CPQ Guided Selling Objects

SBQQ__Process__cCPQ-Specific
Guided selling process definition. Associates a set of inputs/questions with a product family or quote trigger. Active flag controls whether process runs.
SBQQ__ProcessInput__cCPQ-Specific
An individual prompt or question within the guided selling process. Defines the field type (picklist, text, checkbox), label, and the product field it maps to for filtering.
SBQQ__ProcessInputCondition__cCPQ-Specific
Conditional display logic for a process input. Controls when a question is shown based on prior answers — enabling branching questionnaire flows.
SBQQ__LookupQuery__cCPQ-Specific
Dynamic SOQL-like query for populating guided selling dropdown options from product or custom object data. Supports field-mapped filters derived from prior question answers.

RC-Standard / Platform-Standard Revenue Cloud Approval & Guided Selling Objects

ApprovalRequestPlatform-Standard
Platform object enhanced by Revenue Cloud. Represents a single approval request on any record (Quote, Order, Contract). Tracks status (Pending/Approved/Rejected), approver, and related record. RC adds fields for reason, lock behavior, and process step correlation.
  • RelatedRecordId Polymorphic — points to the Quote, Order, or Contract under review
  • Status Pending, Approved, Rejected, Recalled
  • ApproverId User assigned to approve this request
  • Comments Approver's free-text reason / decision notes
ProcessInstancePlatform-Standard
Standard Salesforce approval process instance. Used when leveraging standard platform approvals (not Flow-based). RC can reference these for hybrid approaches.
DecisionTableRC-Standard
The core guided selling and rules engine object in Revenue Cloud. A named lookup table evaluated by passing input variables and returning output values. Used for product eligibility, pricing overrides, approval thresholds, and recommendation logic.
  • Name Unique API name referenced in Flow / Pricing Procedure
  • InputColumns Column metadata defining input field mappings
  • OutputColumns Return value columns (discount %, product code, approval flag)
  • IsActive Boolean — table is live or draft
DecisionMatrixRowRC-Standard
An individual row in a Decision Table. Defines input value combinations and corresponding output values. Rows are evaluated top-to-bottom; first match wins (or all matches, depending on evaluation strategy).
DecisionTableDatasetRC-Standard
Links a Decision Table to a data source (Salesforce objects, CSV uploads). Allows dynamic row population from external data or object queries, enabling tables that self-update as pricing or eligibility data changes.
RecommendationStrategyRC-Standard / Einstein
Defines the logic for Einstein Next Best Action recommendations. Used in Revenue Cloud for guided product suggestions. Combines SOQL branches, filters, and AI model outputs into a ranked recommendation list surfaced in the UI.
💡
Key Takeaway — 6.3

CPQ's approval data model is opinionated and self-contained — all approval logic lives in SBQQ__ApprovalRule__c through SBQQ__ApprovalStep__c with direct quote integration. Revenue Cloud uses the platform-standard ApprovalRequest object orchestrated by Flow, giving architects more flexibility but requiring explicit orchestration design. For guided selling, CPQ's SBQQ__Process__c hierarchy is tightly scoped to the CPQ configurator, whereas Revenue Cloud's DecisionTable objects are general-purpose and can drive approvals, pricing, and recommendations from a single configuration construct.

6.4

Automations

CPQ Advanced Approvals — Automation Behaviors

  • Automatic rule evaluation on quote save — approval rules are checked every time the quote is saved; no manual trigger required
  • Parallel and sequential chain management — steps with the same SBQQ__Number__c fire in parallel; ascending step numbers enforce sequential routing
  • Auto-approve conditions — rules can be configured so quotes below a discount threshold automatically approve without routing (removes friction for low-risk deals)
  • Smart approvals — if the same approver appears in multiple sequential steps, CPQ skips redundant approvals (avoids double-approval for the same user)
  • Delegated approvals — approvers can designate a delegate user; approvals auto-route to the delegate during absence windows
  • Email notifications — configurable templates sent per step with deep-link "Approve" and "Reject" action URLs; approvers can act from email without logging in
  • Rejected quote lock — on rejection, quote is locked for editing; reason is captured in SBQQ__ApprovalStatus__c and rejection reason field
  • Approval recall — submitter can recall a pending approval chain if the quote needs changes before a decision is reached

Revenue Cloud — Automation Behaviors

  • Flow-based approval orchestration — Record-Triggered or Scheduled Flows invoke approval logic; fully declarative with unlimited branching capability
  • ApprovalRequest object tracking — each approval step creates an ApprovalRequest record; full audit trail queryable via SOQL/reports
  • Decision Table-driven thresholds — approval trigger conditions are evaluated by querying a DecisionTable at runtime; thresholds updated in the table without Flow changes
  • Einstein Next Best ActionRecommendationStrategy surfaces guided product recommendations in the quote UI; surfaced via Flow Screen components or LWC
  • OmniStudio guided selling — if licensed, OmniScript provides a step-by-step questionnaire wizard that pre-populates quote lines via DataRaptor transforms
  • Platform Events for broadcastApprovalStatusChange__e platform events notify downstream systems (portal, Slack, external) when approval status changes
  • Recall and reassignment via Flow — submitters can trigger a recall Flow that cancels open ApprovalRequest records and resets quote status
  • Mobile approval actions — Salesforce mobile app supports Flow Screen for approval with native push notifications

Automation Capability Matrix

Automation Capability CPQ (CPQ+) Revenue Cloud Notes
Auto-evaluate on record save Native, automatic Record-Triggered Flow RC requires explicit Flow; CPQ is implicit
Parallel approval steps Same step number Parallel paths in Flow Both support parallel; RC via Flow Fault Paths
Sequential approval chain Ascending step # Chained Flow elements RC is more flexible but more complex to build
Auto-approve below threshold Built-in Decision Table + Flow condition RC: condition evaluates DT output before creating ApprovalRequest
Smart approvals (skip duplicates) Automatic ~ Custom Flow logic RC requires custom check for duplicate approver skip
Delegated approvals Built-in delegation UI Flow re-assignment CPQ has native UI; RC requires Flow + custom component
Email approve/reject links Native template Flow email action + custom handler RC requires custom URL-based Flow invocable action
Platform Event broadcast Not native Native in Flow CPQ requires custom Apex trigger to publish events
Einstein recommendations in approval Next Best Action RC can suggest alternative pricing or product before submitting for approval
💡
Key Takeaway — 6.4

CPQ Advanced Approvals provides a richer out-of-the-box automation experience — auto-evaluation, smart approvals, and native email action URLs come pre-wired. Revenue Cloud's Flow-based approach is architecturally superior in flexibility and transparency (every step is inspectable as a Flow element), but requires deliberate design work to achieve feature parity on capabilities like smart approvals and email-based action links. For organizations prioritizing speed-to-value on approvals, CPQ+ still leads. For organizations prioritizing maintainability and extensibility, RC's Flow approach wins long-term.

6.5

Configuration — Architect Setup Effort

Effort ratings reflect typical architect-days for a greenfield implementation with moderate complexity. Scale linearly for enterprise orgs with multi-level approval hierarchies or large product catalogs.

Configuration Task CPQ Effort RC Effort Notes
Basic approval rules setup (single-level) Medium Medium CPQ: define rule, condition, step. RC: create Flow with ApprovalRequest creation. Both ~2–3 days.
Advanced parallel / sequential approval chain High Medium-High CPQ: step numbering + group management; complex rules for multi-product conditions. RC: Flow parallel branches; more visual but requires careful fault path handling.
Delegated approvals configuration Medium Medium CPQ: native delegation setup per user. RC: Flow re-assignment logic + user delegation custom object or external schedule.
Guided selling process setup Medium Medium CPQ: configure SBQQ__Process__c + inputs + conditions (~3 days). RC: Decision Table rows + input/output column mapping (~3–4 days). RC DT reusable across pricing and guided selling.
Analytics dashboard setup Very High High CPQ: custom CRM Analytics recipes ingesting SBQQ__ objects; no pre-built template; 2–4 weeks. RC: Revenue Intelligence pre-built app; customization adds 1–2 weeks.
Einstein recommendations configuration N/A High RC: define RecommendationStrategy, train or configure AI filters, surface via LWC/Flow Screen. Einstein platform expertise required.
Approval email template setup Low Low Both platforms use standard email template builders. CPQ templates reference SBQQ__ merge fields; RC uses standard Flow email variables.
Approval UI customization (custom components) Medium Medium CPQ: override standard approval page with LWC. RC: embed approval status component in Quote Lightning record page. Both require LWC and LDS knowledge.
Decision Table dataset refresh automation N/A Medium RC-specific: scheduled Flow or Data Cloud pipeline to refresh DecisionTableDataset rows from source objects or external data.
OmniScript guided selling wizard N/A High RC (if OmniStudio licensed): design OmniScript steps, DataRaptor transforms, and Integration Procedure for quote line pre-population. Specialized OmniStudio skill required.
💡
Key Takeaway — 6.5

Most configuration tasks are comparable in effort between CPQ and Revenue Cloud. The significant outlier is analytics: CPQ requires heavy custom dataset engineering in CRM Analytics (Very High effort), while Revenue Cloud's Revenue Intelligence app provides a usable baseline out of the box (High, but faster). RC also opens capabilities not available in CPQ at all (Einstein recommendations, OmniScript wizards, Decision Table dataset refresh) — but these carry their own complexity and licensing requirements.

6.6

Customization — Common Additions

CPQ Customizations

APPROVAL CUSTOMIZATIONS

  • Custom Apex approval condition logic — when SBQQ__ApprovalCondition__c filter expressions cannot capture complex business logic (e.g., multi-currency margin calculations, external API calls to check credit limits), Apex-invoked approval variables replace declarative conditions
  • Custom approval UI via LWC — override the standard CPQ approval action buttons with a custom LWC that shows approval history, pending steps, and a reason input in a modal before submission
  • Custom notification delivery — extend default email notifications with Slack messages or Teams webhooks via Apex callout triggered from the approval step activation workflow
  • Integration with external approval systems — use Apex or MuleSoft to push approval requests to ServiceNow, Jira, or SAP GRC; bi-directional sync updates SBQQ__ApprovalStep__c status from the external system response

GUIDED SELLING CUSTOMIZATIONS

  • Custom question rendering — replace default SBQQ__ProcessInput__c text fields with a custom LWC component that renders rich input types (range sliders, multi-select picklists, product image carousels) not natively supported
  • Real-time eligibility checks — augment SBQQ__LookupQuery__c with Apex that calls an external eligibility API (e.g., telco network inventory, insurance underwriting engine) before surfacing available products

ANALYTICS CUSTOMIZATIONS

  • Custom CRM Analytics datasets — build dataflow/recipe pipelines joining SBQQ__Quote__c, SBQQ__QuoteLine__c, SBQQ__Subscription__c, and custom approval objects into a star-schema analytical dataset
  • Tableau integration — replicate CPQ objects to Snowflake or Redshift via Salesforce Connector; build Tableau workbooks for executive revenue reporting with custom discount waterfall charts

Revenue Cloud Customizations

APPROVAL CUSTOMIZATIONS

  • Custom approval notification flows — extend Flow-based approvals to send structured approval packets (quote PDF, pricing breakdown, margin analysis) as email attachments or Slack Block Kit messages before the approver takes action
  • Complex Decision Table logic with custom formulas — augment Decision Table output columns with formula fields on the Quote that pre-compute values consumed by the DT as inputs, enabling multi-variable threshold calculations without Apex
  • Integration with external approval systems — use Platform Events to publish ApprovalRequest creation events to an external ESB; MuleSoft integration pattern routes requests to ServiceNow and returns decisions via REST callback to a Flow-invocable Apex method

GUIDED SELLING CUSTOMIZATIONS

  • Custom recommendation engine integration — replace or augment RecommendationStrategy with a callout to an external ML model (AWS SageMaker, Vertex AI) that returns ranked product bundles based on customer usage telemetry
  • AI-augmented guided selling via Einstein — configure Next Best Action to surface not just product recommendations but contextual talking points and objection-handling scripts based on Opportunity stage and competitor signals

ANALYTICS CUSTOMIZATIONS

  • Revenue Intelligence custom KPI dashboards — clone and extend pre-built Revenue Intelligence dashboards to add custom KPIs: approval cycle time by product line, discount variance vs. approved floor price, guided selling abandonment rate
  • Data Cloud integration — unify Revenue Cloud quote and asset data with external data sources (ERP shipments, support cases, usage data) in Data Cloud; build Insights that trigger guided selling recommendations or approval escalations based on unified customer health score
💡
Key Takeaway — 6.6

CPQ customizations typically concentrate in Apex (approval conditions, external API calls, notification extensions) because the declarative engine has fixed extension points. Revenue Cloud customizations lean more on Flow composition, Platform Events, and Data Cloud — aligning with a lower-code, event-driven integration philosophy. Both platforms require LWC skill for UI customization. Revenue Cloud's extensibility through Platform Events and Data Cloud creates a more future-proof integration pattern, particularly for organizations building toward a unified revenue operations platform.

Migration Guide

CPQ → Revenue Cloud: Overall Migration Guide

When to Stay on CPQ

🔒 Highly customized CPQ orgs with significant Apex investment — custom Quote Calculator Plugins (QCP), custom approval condition Apex, and extensive SBQQ__ trigger logic represent years of embedded business logic that is difficult to port to a declarative-first RC architecture without regression risk
🔒 Complex Quote Calculator Plugin (QCP) implementations — QCP provides arbitrary JavaScript-based pricing logic that executes within the CPQ calculation engine. Revenue Cloud's Pricing Procedures are powerful but require re-engineering each QCP function as a Pricing Step, which is a significant architectural translation effort
🔒 Orgs where CPQ Billing (blng__ objects) is already heavily configured — if the org has an established invoice engine, tax integration, and revenue recognition schedule on the CPQ Billing package, migrating to RC Billing requires a full re-implementation of billing rules, rating engines, and payment gateway integrations
🔒 Budget and timeline constraints are tight — CPQ to Revenue Cloud migrations typically require 6–18 months of parallel engineering effort. If the org cannot sustain a parallel run period or fund a dedicated migration workstream, delay until the roadmap can absorb it
🔒 Use case is primarily quote-centric with no subscription lifecycle needs — if the revenue process ends at quote acceptance and there is no amend/renew/cancel subscription management requirement, CPQ remains the right-sized tool without over-investing in RC's lifecycle capabilities
🔒 Org is mid-way through a large CPQ implementation — pausing a CPQ program to pivot to RC mid-stream doubles cost and risk; complete the CPQ implementation, stabilize, then plan a strategic migration in a future release cycle

When to Migrate to Revenue Cloud

Need for true asset-based ordering (ABO) — RC's Asset and Asset Line Item model natively supports amend/renew/cancel operations on active subscriptions without custom SBQQ__Subscription__c management logic
Requirement for native billing and revenue recognition without add-ons — Revenue Cloud integrates billing and rev rec as first-class capabilities, eliminating the CPQ + Billing package dependency chain and its version alignment complexity
Subscription lifecycle management at scale — amend/renew/cancel operations on thousands of active subscriptions benefit from RC's native Asset Action framework, which provides atomic lifecycle operations without custom Apex orchestration
Headless / API-first architecture requirements — Revenue Cloud exposes a Connect REST API surface for quote, order, and asset operations, enabling headless storefront and commerce integrations not achievable with CPQ's UI-bound configuration model
Need for a unified product catalog with complex attributes — RC's Product Catalog model with Categories, Classification Attributes, and Attribute-based pricing natively handles configurable products without the SBQQ__ProductOption__c + Feature hack patterns required in CPQ
Multi-cloud revenue lifecycle spanning Sales, Service, and Commerce — Revenue Cloud's shared data model with Service Cloud (asset view), Commerce Cloud (storefront orders), and Sales Cloud (opportunity/quote) provides a unified revenue lens across all customer touchpoints

Migration Complexity Matrix

CPQ Feature / Object Revenue Cloud Equivalent Migration Complexity Key Migration Risks
Product / Bundle setup
SBQQ__Product__c + ProductOption
Product Categories + Classification Attributes + Product Selling Models Medium Bundle hierarchy maps reasonably to RC Categories; attribute-based products require re-modeling; automated migration tooling available but requires validation
Price Rules + Quote Calculator Plugin
SBQQ__PriceRule__c + QCP JS
Pricing Procedures + Pricing Steps (Decision Table or Apex) High QCP JavaScript cannot be directly ported; each QCP function must be analyzed and reimplemented as a Pricing Procedure step; high regression testing surface area
Quote object
SBQQ__Quote__c
Quote (Standard Object, enhanced by RC) Medium Custom fields on SBQQ__Quote__c must be recreated on the standard Quote object; page layout and Lightning page rebuild required; historical data migration via bulk API
Advanced Approvals
SBQQ__ApprovalRule__c hierarchy
Flow-based Approval Orchestration + ApprovalRequest High No automated migration path; each approval rule must be rebuilt as a Flow; parallel/sequential logic, smart approvals, and email-action URLs all require custom design; extensive UAT required with business approvers
CPQ Billing package
blng__Invoice__c, blng__BillingRule__c
RC Billing (BillingPolicy, BillingSchedule, Invoice) Very High Complete package replacement; invoice history migration; ERP integration re-pointing; tax engine (Avalara/Vertex) reconfiguration; payment gateway adapter rebuild; revenue recognition schedule re-mapping. Highest risk area in any CPQ to RC migration.
Subscriptions
SBQQ__Subscription__c
Asset + Asset Line Items High Subscription records must be migrated to Asset Line Items with correct start/end dates and product associations; amend/renew history is non-trivial to reconstruct; active subscriptions require cutover coordination with billing cycle
Guided Selling Process
SBQQ__Process__c + ProcessInput__c
DecisionTable + DecisionMatrixRow (or OmniScript) Medium Guided selling logic is conceptually transferable; CPQ process inputs map to Decision Table input columns; conditional display logic requires Flow or OmniScript translation; low regression risk compared to pricing
Contract / Amendment
SBQQ__Contract__c + amendment process
Asset Actions (Amend, Renew, Cancel, Split) High CPQ amendment creates a new quote from the contracted subscriptions; RC Asset Actions modify assets directly. The data model and business process are fundamentally different; requires process re-design, not just data migration

Architectural Decision Points

💾 Data Migration Strategy

  • Evaluate Bulk API v2 for SBQQ__Quote__c and line item volume; consider SOAP API for complex parent-child hierarchies requiring atomicity
  • ETL tools (Informatica, MuleSoft, Talend) recommended for complex transformations (SBQQ__Subscription__c → AssetLineItem); native Data Loader insufficient for transformation logic
  • Establish a data validation framework: row counts, field-level checksums, and business rule assertions (e.g., all migrated assets have valid ProductSellingModel references)
  • Plan for a data freeze window during final cutover; coordinate with Finance and Legal on contract effective dates

🏠 Org Split vs. In-Place Migration

  • In-place migration (same org): installs Revenue Cloud managed packages alongside CPQ; allows gradual feature flag cutover; risk of package conflicts between SBQQ__ and RC namespaces
  • Org split (new sandbox → new production): clean slate; no namespace conflicts; higher data migration complexity; requires full integration re-build; preferred for orgs with significant technical debt
  • Hybrid: migrate new product lines to RC in the existing org while keeping legacy subscriptions on CPQ until natural renewal; requires a dual-path configuration and clear ownership boundaries

⏳ Parallel Run Period

  • Plan a minimum 90-day parallel run for billing-critical workloads; invoices generated by both systems must be reconciled nightly
  • Approval workflows should be validated with real deal scenarios before disabling CPQ approval rules; run shadow approvals in RC for 30 days before cutover
  • Analytics: maintain CPQ CRM Analytics datasets in read-only mode for 12 months post-migration to support historical trend analysis in Revenue Intelligence
  • Define a clear go/no-go checklist: zero invoice discrepancy, approval parity confirmation, integration smoke tests passing

🔗 Integration Re-pointing

  • ERP (SAP, NetSuite): order creation APIs must switch from SBQQ__Order__c triggers to RC Order object; validate field mapping for line item charge types
  • Payment gateway (Stripe, Adyen): CPQ Billing payment runs reference blng__Invoice__c; RC Billing uses its own Invoice API; requires adapter layer update
  • E-signature (DocuSign, Conga): quote document generation must be re-mapped from SBQQ__Quote__c merge fields to standard Quote object fields; template redesign required
  • Tax engine (Avalara/Vertex): tax calculation callouts are invoked at different points in the RC pricing engine; validate tax category mapping for all product types
⚠️
Migration Architecture Principle

No two CPQ migrations are identical. The complexity matrix above represents typical patterns, but actual effort depends on QCP complexity, custom approval Apex depth, integration surface area, and the volume of active subscriptions requiring asset migration. A migration readiness assessment — cataloging all SBQQ__ custom metadata, QCP functions, and integration touchpoints — is a prerequisite before committing to a timeline. Budget 20–30% contingency on all High and Very High items.

⚠ Training Material Only. This document was created solely for personal training and study purposes. It is not official Salesforce documentation. Content was generated with the assistance of generative AI and may contain inaccuracies, omissions, or outdated information. Always consult the latest official Salesforce documentation at help.salesforce.com and the Salesforce Developer Docs before making implementation decisions.
CPQ vs Revenue Cloud Deep Dive Series  ·  Personal Training Reference  ·  Generated with Generative AI