Salesforce stopped selling Salesforce CPQ to new customers in March 2025. Nothing has been switched off: Salesforce’s own end-of-sale page says existing customers can keep using it, add users and renew, and no end-of-life date has been announced. What stopped is feature work. For a RevOps team whose quoting logic lives in years of SBQQ__ price rules, that turns a someday project into a decision with a deadline you set yourself. This page is the rebuild that keeps Salesforce as the system of record and replaces the managed package around it. It rests on one design rule: every stage of the deal has exactly one tool allowed to write it. Salesforce holds the records, the quote engine owns price and subscription state, the document layer owns the signature, and the commission engine only reads.
The quote engine slot is a fork, not a pair. You buy Nue or DealHub, never both. The default is Nue; the rule for DealHub is under Common variations.
How the pieces fit
Salesforce is the record, not the engine. Account, Opportunity, Product2 and Pricebook2 stay where they are, and every downstream system keeps reading them. What leaves is the CPQ managed package: its quote, quote-line, subscription and contracted-price objects, plus Salesforce Billing, which is built on that package and leaves with it. The migration succeeds or fails on how many other systems were quietly reading those SBQQ__ objects.
Nue is the quote and lifecycle engine. Nue is a managed package that runs inside Salesforce on standard objects (Quote, Order, Opportunity, Product and Price Book), so there is no second CRM to sync and no nightly lag. The rep configures and prices the deal in Nue; approvals route inside it (Nue bought the approvals vendor Approvals Pro in March 2025). After signature, Nue’s Lifecycle Manager carries the subscription through amendments, co-terms, upgrades and renewals with proration, meters usage, commits and credits, and invoices through Billing and Collections or hands invoices to NetSuite or Stripe. The reason it is the default here: it keeps the catalog and the subscription in Salesforce’s data model, which is the thing a Salesforce CPQ team is trying not to lose.
PandaDoc is the order form and the signature. Once the quote is approved, the rep generates the order form in PandaDoc from the Opportunity: pricing table filled from the Opportunity’s products, terms from the content library, payment collection at signature for card-paying deals. PandaDoc’s Salesforce package closes the loop: with the Change Opportunity Status Trigger enabled and document status mapped to stage, a Completed document moves the Opportunity to Closed Won and sets the close date to today. That makes PandaDoc the one tool that writes Closed Won, and Closed Won is the event everything downstream listens for.
CaptivateIQ turns the booking into a commission. CaptivateIQ syncs Opportunity, stage and ownership data from Salesforce on a schedule or in real time, and computes payouts from the booked values. It writes nothing back to the deal. It belongs in this stack because it is the downstream system most likely to be reading SBQQ__ fields today, and the one where a broken field costs the most trust: a rep’s paycheck.
The handoffs, in order:
- Opportunity reaches the proposal stage → rep builds the quote in Nue against the Salesforce price book → discounts above threshold route to the approver inside Nue.
- Quote approved → quote lines land on the Opportunity’s products → rep generates the PandaDoc order form from the Opportunity.
- Buyer signs, PandaDoc status becomes Completed → Change Opportunity Status Trigger sets Stage to Closed Won and close date to today.
- Closed Won → Nue activates the order and creates the subscription → first invoice issues in Nue Billing or syncs to NetSuite.
- Closed Won and booked amounts → CaptivateIQ sync → commission calculated for the period. A later amendment or cancellation in Nue changes the booked values, and CaptivateIQ’s next sync recalculates or claws back.
Why this combination
The load-bearing reason is that the migration only touches one layer. Your price book, Opportunity history, reports and the stage definitions finance closes the quarter on all stay in Salesforce. The objects that change are the quote, the subscription and the invoice, and they move into one engine instead of being split between CPQ and Salesforce Billing. The document layer and the commission engine read standard Opportunity data, so they survive the next engine change too. Salesforce’s own successor, Revenue Cloud Advanced, is also a rebuild: it is a different product with a different data model, and Salesforce’s page describes CPQ-to-Revenue-Cloud moves as migrations, typically 3 to 6 months. Staying with the vendor does not avoid the project; it only picks the vendor running it.
Cost reality
Salesforce Sales Cloud is assumed licensed; the incremental cost is the engine, the document layer and commissions. None of the three engines publish a price except Salesforce’s. Figures checked 2026-09-21.
- Nue: no published price. Vendr’s median annual contract is $67,167, in a $14,700–$382,500 range; the spread follows catalog and billing scope, not seat count.
- DealHub (if it takes the engine slot): Vendr median $44,297, range $14,839–$118,130; buyer-reported per-seat pricing lands at $60–100 per user per month.
- PandaDoc: Business is $49 per seat per month billed annually, and the Salesforce integration is a paid add-on on that plan. Vendr’s median contract is $14,868.
- CaptivateIQ: per-seat, where every payee is a seat, plus a one-time setup fee. Vendr median $36,120, range $12,021–$100,181.
- The in-house comparison: Revenue Cloud Growth lists at $150 and Revenue Cloud Advanced at $200 per user per month, billed annually, on top of Sales Cloud. Forty quoting users on Advanced is $96,000 a year at list before implementation.
Three configurations for a 40-rep, 150-payee SaaS company, estimates from Vendr medians and list price:
- Default (Nue, PandaDoc Business for 40 seats at $23,520 plus the Salesforce add-on, CaptivateIQ): about $127,000–$135,000/year.
- DealHub path (DealHub with its own DealRoom and signature, no PandaDoc, CaptivateIQ): about $80,000/year.
- Nue with its native DocuSign order forms instead of PandaDoc, for teams already on DocuSign: about $103,000/year plus existing DocuSign spend.
The hidden cost is the migration itself. Salesforce puts CPQ-to-Revenue-Cloud migrations at 3 to 6 months; vendor and partner reports put DealHub live in 4 to 8 weeks; Nue’s four-week figure is its own. Our estimate for a mid-market org with active subscriptions: 8 to 16 weeks of a RevOps admin plus a partner, and one full commission cycle run in parallel before cutover.
Match rules
This stack is the right pick when:
- Salesforce is the CRM and will stay the CRM for the next 24 months
- You sell SaaS with a subscription base plus usage, credits or commits, and amendments mid-term are routine
- Roughly 20 to 100 people touch a quote, and discount approvals are the bottleneck
- Salesforce CPQ customization has become the reason pricing changes take a quarter to ship
This stack is wrong when:
- You sell one or two SKUs at list price. A PandaDoc quote from the Opportunity does the job; a quote engine is overhead. See what CPQ is for.
- The configuration problem is physical products with constraint rules. That is Conga, Tacton or Revenue Cloud Advanced territory.
- The CRM is HubSpot or Dynamics, or a CRM change is on the table. Nue is Salesforce-only by design.
- Procurement requires one vendor on one paper for the whole revenue platform. Buy Revenue Cloud Advanced and budget the migration.
Common variations
Swap Nue for DealHub when a CRM re-platform is plausible within 24 months, when the buyer-facing deal room matters (DealHub publishes a DealRoom the buyer works inside), or when the goal is to get quoting logic out of the Salesforce release cycle, since DealHub pricing rules live in a configured playbook rather than in Salesforce. DealHub carries its own signature and CLM layer, so drop PandaDoc on this path. The cost is data-model distance: DealHub’s billing arrived with its November 2025 Subskribe acquisition and has no published merge timeline.
Swap PandaDoc for Nue’s native DocuSign flow when the order form is a contract rather than a proposal and the company already pays for DocuSign. Nue maps quote fields straight into DocuSign templates, which removes the quote-to-Opportunity-products step. Keep PandaDoc when reps already build proposals from its content library or you collect first payment at signature.
Swap CaptivateIQ for QuotaPath under about 50 payees with two or three plan variants, or for Xactly when comp spans thousands of payees and multiple entities. The handoff does not change: all three read Closed Won from Salesforce.
What this stack does NOT replace
- The general ledger and the close. Nue issues invoices; revenue recognition schedules and the books still live in NetSuite or your ERP.
- Tax calculation. Sales tax and VAT come from Avalara or the ERP’s tax engine, connected to the billing layer.
- Contract lifecycle management for negotiated paper. PandaDoc signs order forms; a redlined MSA with obligations to track belongs in a CLM such as Ironclad.
- Pricing strategy. No engine fixes a price book nobody has agreed on. Decide the catalog and discount policy first, then use the deal desk pricing review to hold reps to it.
- Forecasting. Closed Won is the input; the forecast is a different stack. See the revenue forecasting stack.
Watch-outs
- Commission plans read fields that stop updating. A CaptivateIQ worksheet built on
SBQQ__QuoteLine__cnet totals orSBQQ__Subscription__crecords keeps calculating after cutover, on stale values, without an error. Guard: before cutover, list every CaptivateIQ data source that points at anSBQQ__object, repoint each to the Opportunity or Nue field, and run one full pay period in parallel against the old calculation. Any difference is a migration bug, not a comp dispute. - Two tools writing Closed Won. If reps can still move the stage by hand and PandaDoc’s trigger also fires, bookings dates drift from signature dates and commissions land in the wrong period. Guard: validation rule on Opportunity that only the integration user can set Closed Won once a PandaDoc document exists.
- Quote lines that never reach the Opportunity. PandaDoc builds the order form from the Opportunity’s products; if approved quote lines do not land there, the signed document and the subscription disagree. Guard: in the Nue sandbox, approve a quote with a discount, a ramp and a usage line, generate the PandaDoc form, and compare line by line before any rep sees it.
- Live subscriptions still sit in the old objects. Every in-flight contract has amendment and renewal history in CPQ. Guard: pick a cutover date after which no amendment is made in CPQ, migrate active subscriptions as the unit of work, and let renewals be the first transaction each account makes in the new engine.
- Implementation timelines are vendor-reported. The four-week and 4-to-8-week figures come from vendors and partners, not from a named cohort. Guard: scope phase one in the SOW (one product line, one currency, one billing entity) with a date and a payment milestone attached.