{"id":348482,"date":"2026-09-03T12:39:48","date_gmt":"2026-09-03T12:39:48","guid":{"rendered":"https:\/\/experlogix.com\/?p=348482"},"modified":"2026-10-20T17:33:25","modified_gmt":"2026-10-20T17:33:25","slug":"solution-selling-cpq-mixed-revenue-quoting","status":"publish","type":"post","link":"https:\/\/experlogix.com\/fr\/solution-selling-cpq-mixed-revenue-quoting\/","title":{"rendered":"Selling Solutions, Not SKUs: Solution Selling CPQ for Hardware, Labor, Projects and Recurring Revenue"},"content":{"rendered":"<p>[et_pb_section fb_built=&#8221;1&#8243; _builder_version=&#8221;4.27.9&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221; theme_builder_area=&#8221;post_content&#8221;][et_pb_row _builder_version=&#8221;4.27.9&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221; theme_builder_area=&#8221;post_content&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.27.9&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221; theme_builder_area=&#8221;post_content&#8221;][et_pb_code _builder_version=&#8221;4.27.9&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221; theme_builder_area=&#8221;post_content&#8221;]<\/p>\n<style><!-- [et_pb_line_break_holder] -->.xpl-article{container-type:inline-size;--xpl-navy:#0C214C;--xpl-rust:#D94923;--xpl-soft:#F8FBFF;--xpl-ice:#F3F8FD;--xpl-border:#DCE6F2;color:#0C214C;font-size:1rem;line-height:1.68;}<!-- [et_pb_line_break_holder] -->.xpl-article *,.xpl-article *::before,.xpl-article *::after{box-sizing:border-box;}<!-- [et_pb_line_break_holder] -->.xpl-article p{font-size:1rem;line-height:1.68;color:#0C214C;margin:0 0 1.05rem;}<!-- [et_pb_line_break_holder] -->.xpl-article a{color:#0C214C;font-weight:600;text-decoration:underline;text-decoration-color:#9EB9DD;text-decoration-thickness:1px;text-underline-offset:3px;}<!-- [et_pb_line_break_holder] -->.xpl-article a:hover{text-decoration-color:#0C214C;}<!-- [et_pb_line_break_holder] -->.xpl-article a:focus-visible{outline:3px solid #D94923;outline-offset:3px;border-radius:3px;}<!-- [et_pb_line_break_holder] -->.xpl-article h2{color:#0C214C;font-size:1.72rem;line-height:1.24;margin:0 0 1rem;padding:0;border:0!important;text-decoration:none!important;box-shadow:none!important;}<!-- [et_pb_line_break_holder] -->.xpl-article h3{color:#0C214C;font-size:1.2rem;line-height:1.34;margin:0 0 .55rem;padding:0;border:0;text-decoration:none;}<!-- [et_pb_line_break_holder] -->.xpl-article ul,.xpl-article ol{margin:.8rem 0 1.2rem;padding-left:1.25rem;}<!-- [et_pb_line_break_holder] -->.xpl-article li{color:#0C214C;margin:0 0 .5rem;}<!-- [et_pb_line_break_holder] -->.xpl-article li::marker{color:#5879A7;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-intro{margin:0 0 1.5rem;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-intro p:first-child{font-size:1.08rem;line-height:1.65;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-section{margin:2.35rem 0;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-section> :last-child{margin-bottom:0;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-section--soft{background:#F3F8FD;border-radius:14px;padding:1.45rem 1.55rem;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-section--soft h2{margin-top:0;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-section--bottom{background:#F7FAFE;border-radius:14px;padding:1.5rem 1.6rem;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-section--bottom h2{margin-top:0;}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/* Compact TL;DR: soft background, no orange rail, one marker system. *\/<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-tldr{background:#F3F8FD;border:1px solid #DCE6F2;border-radius:12px;padding:1rem;margin:1.45rem 0 2rem;box-shadow:none;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-tldr summary{cursor:pointer;list-style:none;font-size:1rem;line-height:1.25;font-weight:700;color:#0C214C;display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:0;padding:0;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-tldr summary::-webkit-details-marker{display:none;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-tldr summary::after{content:\"+\";color:#0C214C;font-size:1.15rem;line-height:1;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-tldr[open] summary::after{content:\"\u2212\";}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-tldr[open] summary{margin-bottom:.7rem;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-tldr__body{padding:0;margin:0;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-tldr ul{list-style:none!important;padding:0!important;margin:0!important;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-tldr li{list-style:none!important;position:relative;padding:0 0 0 1rem!important;margin:0 0 .48rem!important;font-size:.9rem!important;line-height:1.48!important;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-tldr li::marker{content:\"\";}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-tldr li::before{content:\"\";position:absolute;left:0;top:.66em;width:.38rem;height:.38rem;background:#7EA2D3;border-radius:50%;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-tldr li:last-child{margin-bottom:0!important;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-tldr li p,.xpl-article .xpl-tldr li a,.xpl-article .xpl-tldr li strong{font-size:.9rem!important;line-height:1.48!important;}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/* Editorial grids: varied soft surfaces, no orange rails, no hard shadows. *\/<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-card-grid,.xpl-article .xpl-step-grid{list-style:none!important;padding:0!important;margin:1.15rem 0 1.35rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-card-grid>li,.xpl-article .xpl-step-grid>li{list-style:none!important;margin:0!important;background:#F3F8FD;border:1px solid #DCE6F2;border-radius:12px;padding:1rem 1.08rem;box-shadow:none!important;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-card-grid>li:nth-child(even){background:#FAFCFF;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-section--soft .xpl-card-grid>li,.xpl-article .xpl-section--soft .xpl-step-grid>li,.xpl-article .xpl-section--bottom .xpl-card-grid>li{background:#fff;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-section--soft .xpl-card-grid>li:nth-child(even),.xpl-article .xpl-section--bottom .xpl-card-grid>li:nth-child(even){background:#F9FBFE;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-card-grid>li::marker,.xpl-article .xpl-step-grid>li::marker{content:\"\";}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-card-grid--stack{grid-template-columns:1fr;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-card-grid>li:last-child:nth-child(odd):not(:first-child){grid-column:1\/-1;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-step-grid{counter-reset:xplstep;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-step-grid>li{counter-increment:xplstep;position:relative;padding-left:3.2rem;min-height:4.1rem;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-step-grid>li::before{content:counter(xplstep);position:absolute;left:1rem;top:1rem;width:1.65rem;height:1.65rem;border-radius:7px;background:#0C214C;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.84rem;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-list-box{list-style:none!important;padding:1rem 1.1rem!important;margin:1rem 0 1.3rem;background:#F3F8FD;border:1px solid #DCE6F2;border-radius:12px;box-shadow:none!important;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-list-box>li{list-style:none!important;position:relative;margin:0!important;padding:.58rem 0 .58rem 1rem;border-bottom:1px solid #DCE6F2;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-list-box>li:last-child{border-bottom:0;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-list-box>li::before{content:\"\";position:absolute;left:0;top:1.15rem;width:5px;height:5px;border-radius:50%;background:#5879A7;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-list-box>li::marker{content:\"\";}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->.xpl-article .xpl-subgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.15rem 0 1.25rem;align-items:stretch;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-subcard{background:#F3F8FD;border:1px solid #DCE6F2;border-radius:12px;padding:1.08rem 1.15rem;box-shadow:none!important;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-subcard:nth-child(even){background:#fff;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-section--soft .xpl-subcard{background:#fff;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-section--soft .xpl-subcard:nth-child(even){background:#F9FBFE;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-subcard:last-child:nth-child(odd):not(:first-child){grid-column:1\/-1;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-subcard h3{margin:0 0 .55rem!important;padding:0!important;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-subcard> :last-child{margin-bottom:0;}<!-- [et_pb_line_break_holder] -->\/* Keep parent editorial cards in two columns, but never split a grid inside a card. *\/<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-subgrid > .xpl-subcard .xpl-card-grid,<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-subgrid > .xpl-subcard .xpl-step-grid{<!-- [et_pb_line_break_holder] -->  grid-template-columns:minmax(0,1fr);<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-subgrid > .xpl-subcard .xpl-card-grid > li,<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-subgrid > .xpl-subcard .xpl-step-grid > li{<!-- [et_pb_line_break_holder] -->  grid-column:auto;<!-- [et_pb_line_break_holder] -->  min-width:0;<!-- [et_pb_line_break_holder] -->  overflow-wrap:break-word;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->.xpl-article .xpl-subsection{background:#F3F8FD;border:1px solid #DCE6F2;border-radius:12px;padding:1.05rem 1.15rem;margin:1.15rem 0;box-shadow:none!important;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-subsection h3{margin-top:0!important;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-callout{background:#F8FBFF;border:1px solid #DCE6F2;border-radius:12px;padding:1rem 1.15rem;margin:1.15rem 0;box-shadow:none!important;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-callout> :last-child{margin-bottom:0;}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/* A02 approved decision-map motion scene. *\/<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-motion-scene{max-width:760px;margin:0 auto;background:#fff;border:1px solid #DCE6F2;border-radius:16px;padding:1.1rem;overflow:hidden;box-shadow:none!important;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-motion-kicker{display:block;font-size:.76rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;margin-bottom:.25rem;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-motion-title{display:block;font-size:1.12rem;font-weight:700;line-height:1.3;margin-bottom:.75rem;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-motion-start{display:flex;align-items:center;justify-content:center;min-height:46px;padding:.6rem 1rem;border-radius:10px;background:#0C214C;color:#fff!important;-webkit-text-fill-color:#fff!important;font-weight:700;margin-bottom:.8rem;animation:xplStartPulse 7s ease-in-out infinite;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-motion-track{display:grid;gap:.65rem;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-motion-path{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.7rem;padding:.7rem .85rem;border:1px solid #DCE6F2;border-radius:10px;background:#F3F8FD;opacity:.38;transform:translateY(4px);animation:xplPathReveal 7s ease-in-out infinite;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-motion-path:nth-child(2){animation-delay:1.1s;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-motion-path:nth-child(3){animation-delay:2.2s;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-motion-path--accent{border-color:#C9DAEF;background:#F8FBFF;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-motion-num{display:inline-flex;align-items:center;justify-content:center;width:1.85rem;height:1.85rem;border-radius:8px;background:#0C214C;color:#fff!important;-webkit-text-fill-color:#fff!important;font-weight:700;font-size:.86rem;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-motion-path--accent .xpl-motion-num{background:#5879A7;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-motion-note{font-size:.9rem;line-height:1.45;margin:.65rem 0 0;}<!-- [et_pb_line_break_holder] -->@keyframes xplPathReveal{0%,12%,100%{opacity:.38;transform:translateY(4px)}22%,58%{opacity:1;transform:translateY(0)}72%{opacity:.55;transform:translateY(0)}}<!-- [et_pb_line_break_holder] -->@keyframes xplStartPulse{0%,100%{transform:scale(1)}12%{transform:scale(1.01)}24%{transform:scale(1)}}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/* Illustration and motion placements. *\/<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-illustration{width:100%;max-width:760px;margin:2rem auto;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-illustration img{display:block;width:100%;height:auto;border-radius:14px;border:1px solid #DCE6F2;box-shadow:none!important;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-animation-wrap{width:100%;max-width:800px;margin:2rem auto;overflow:hidden;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-animation-wrap>div{width:100%!important;max-width:760px!important;margin-left:auto!important;margin-right:auto!important;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-animation-wrap svg{max-width:100%;height:auto;}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/* FAQ: calm contained section, white questions, no orange rails. *\/<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-faq-section{margin:2.45rem 0 1.8rem;background:#F3F8FD;border-radius:14px;padding:1.35rem 1.4rem;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-faq-section h2{margin-bottom:.8rem;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-faq-list{display:grid;grid-template-columns:1fr;gap:.65rem;margin-top:0;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-faq-item{border:1px solid #DCE6F2;border-radius:10px;background:#fff;padding:0;overflow:hidden;box-shadow:none!important;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-faq-item:nth-child(even){background:#FAFCFF;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-faq-item summary{cursor:pointer;list-style:none;display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:.92rem 1rem;font-weight:700;font-size:1rem;line-height:1.4;color:#0C214C;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-faq-item summary::-webkit-details-marker{display:none;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-faq-item summary::after{content:\"+\";flex:0 0 auto;color:#5879A7;font-size:1.15rem;line-height:1.2;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-faq-item[open] summary::after{content:\"\u2212\";}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-faq-answer{padding:0 1rem .95rem;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-faq-answer> :last-child{margin-bottom:0;}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/* Bottom CTA: pale blue\/white, no orange underline, no shadows. *\/<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-cta{position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(135deg,#FFFFFF 0%,#F3F8FD 100%);border:1px solid #DCE6F2;border-radius:16px;padding:1.65rem 1.75rem;margin:2.5rem 0 0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.2rem 1.8rem;align-items:center;text-align:left;box-shadow:none!important;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-cta::after{content:\"\";position:absolute;width:210px;height:210px;border-radius:50%;right:-110px;bottom:-135px;background:rgba(126,162,211,.10);z-index:0;pointer-events:none;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-cta>*{position:relative;z-index:1;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-cta-heading{display:block!important;color:#0C214C!important;-webkit-text-fill-color:#0C214C!important;font-size:1.48rem!important;line-height:1.25!important;font-weight:700!important;margin:0 0 .48rem!important;text-align:left!important;border:0!important;text-decoration:none!important;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-cta p{color:#0C214C!important;-webkit-text-fill-color:#0C214C!important;margin:0!important;max-width:720px!important;text-align:left!important;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-cta a.xpl-btn,.xpl-article .xpl-cta a.xpl-btn:link,.xpl-article .xpl-cta a.xpl-btn:visited{display:inline-flex;align-items:center;justify-content:center;background:#0C214C!important;color:#fff!important;-webkit-text-fill-color:#fff!important;text-decoration:none!important;font-weight:700;font-size:1rem;line-height:1.4;padding:.35rem 1.8rem!important;border-radius:50px!important;border:2px solid #0C214C!important;box-shadow:none!important;transform:none!important;white-space:nowrap;transition:background-color .2s ease,border-color .2s ease;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-cta a.xpl-btn:hover,.xpl-article .xpl-cta a.xpl-btn:focus,.xpl-article .xpl-cta a.xpl-btn:active{background:#18386F!important;border-color:#18386F!important;color:#fff!important;-webkit-text-fill-color:#fff!important;box-shadow:none!important;transform:none!important;}<!-- [et_pb_line_break_holder] -->.xpl-article .xpl-cta a.xpl-btn:focus-visible{outline:3px solid #7EA2D3;outline-offset:3px;}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->@media(max-width:800px){<!-- [et_pb_line_break_holder] --> .xpl-article .xpl-card-grid,.xpl-article .xpl-step-grid,.xpl-article .xpl-subgrid{grid-template-columns:1fr;}<!-- [et_pb_line_break_holder] --> .xpl-article .xpl-card-grid>li:last-child:nth-child(odd):not(:first-child),.xpl-article .xpl-subcard:last-child:nth-child(odd):not(:first-child){grid-column:auto;}<!-- [et_pb_line_break_holder] --> .xpl-article .xpl-cta{grid-template-columns:1fr;align-items:start;}<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->@media(max-width:600px){<!-- [et_pb_line_break_holder] --> .xpl-article h2{font-size:1.45rem;}<!-- [et_pb_line_break_holder] --> .xpl-article h3{font-size:1.12rem;}<!-- [et_pb_line_break_holder] --> .xpl-article .xpl-section--soft,.xpl-article .xpl-section--bottom{padding:1.15rem;}<!-- [et_pb_line_break_holder] --> .xpl-article .xpl-faq-section{padding:1.1rem;}<!-- [et_pb_line_break_holder] --> .xpl-article .xpl-cta{padding:1.35rem 1.2rem;}<!-- [et_pb_line_break_holder] --> .xpl-article .xpl-illustration,.xpl-article .xpl-animation-wrap{max-width:100%;margin:1.55rem auto;}<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->@media(prefers-reduced-motion:reduce){.xpl-article *{transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important;}}<!-- [et_pb_line_break_holder] --><\/style>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<article class=\"xpl-article xpl-article--cpq xpl-redesign-v9\" data-article-id=\"A12\"><!-- [et_pb_line_break_holder] --><\/p>\n<div class=\"xpl-intro\"><pee>Picture the quote for a production line upgrade. It includes the equipment and the commissioning labor. It also includes a multi-phase rollout, operator training days and a service agreement that bills monthly for five years. Each of those pieces is priced differently, and the customer still expects one clear number. This article explains where solution selling CPQ requirements diverge from how Salesforce CPQ (configure, price, quote) models a deal. It also shows how to decide whether your current setup can handle the next three years of mixed-revenue quoting.<\/pee><\/div>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<details class=\"xpl-tldr\" open>\n<summary>TL;DR<\/summary>\n<div class=\"xpl-tldr__body\">\n<ul><!-- [et_pb_line_break_holder] --><\/p>\n<li>Salesforce CPQ is end of sale, not end of life. Salesforce stopped selling it to new customers in March 2025. Existing customers can still use it, renew it, add users and receive support. No end-of-life date has been announced.<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li>For solution sellers, the practical issue is modeling, not product status. One quote may mix hardware and services, labor pricing, project-based quoting, recurring revenue and usage charges. That mix stresses a bundle structure built around subscription line items.<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li>The usual symptoms are workarounds, not outages. Services get priced in spreadsheets and pasted back, and labor gets estimated offline. Margin only becomes visible after the quote is assembled. Quote Calculator Plugin (QCP) code ends up carrying logic that business rules should own.<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li>You have three paths:\n<ul><!-- [et_pb_line_break_holder] --><\/p>\n<li>Stay on Salesforce CPQ.<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li>Reimplement on Revenue Cloud Advanced (RCA).<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li>Keep Salesforce CRM as the system of record and replace only the quoting layer with a configurator built for complex, mixed-revenue solution bundles.<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/ul>\n<p><!-- [et_pb_line_break_holder] --><\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li>Bottom line: map your revenue streams against one real solution quote before you choose a platform. If more than half the quote&#8217;s value is assembled outside the CPQ, you are paying for the modeling gap, not the license.<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/ul>\n<\/div>\n<\/details>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<figure class=\"xpl-illustration\"><img alt=\"\" decoding=\"async\" loading=\"lazy\" src=\"https:\/\/experlogix.com\/wp-content\/uploads\/solution-selling-cpq-mixed-revenue-quoting-illustration-1.webp\"\/><\/figure>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<section class=\"xpl-section\">\n<h2>What Solution Selling Actually Demands From CPQ<\/h2>\n<pee>In solution selling, the unit of sale is an outcome, not a SKU. That changes what a CPQ has to calculate. A customer buying a production line, a fleet upgrade or a managed facility is buying more than equipment. The deal also includes commissioning, training days, a project schedule and a service contract that bills monthly for five years.<\/pee><pee>That single quote has to resolve several different pricing models at once:<\/pee>\n<ul class=\"xpl-card-grid\"><!-- [et_pb_line_break_holder] --><\/p>\n<li>One-time hardware pricing, often configured and cost-rolled from components<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li>Labor pricing by role, rate card, region and estimated hours<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li>Project-based quoting with phases, milestones and deliverables that carry their own margins<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li>Recurring revenue lines with start dates, terms, escalators and renewal behavior<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li>Usage or consumption charges that are forecast rather than fixed<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/ul>\n<pee>The mechanics of putting <a href=\"https:\/\/experlogix.com\/quote-products-services-subscriptions-one-deal\/\">products, services and subscriptions in one deal<\/a> are a topic of their own. What sets solution selling apart is the labor, the project structure and the rules that connect them to the equipment.<\/pee><pee>Each stream has a different margin profile and a different downstream consumer:<\/pee>\n<ul class=\"xpl-card-grid\"><!-- [et_pb_line_break_holder] --><\/p>\n<li>Finance needs the recurring portion separated for revenue recognition.<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li>Operations needs the labor and project scope to plan capacity.<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li>Manufacturing needs the configured hardware as a bill of materials (BOM) it can actually build.<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li>Sales needs one number the customer understands.<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/ul>\n<div class=\"xpl-subsection\">\n<h3>Where the modeling breaks first<\/h3>\n<pee>The configurator is rarely the first thing to break. The first failures happen in the connective tissue. For example, a rule might say: if you selected this equipment class and this service tier, commissioning requires these labor hours at this rate in this region. When that rule lives in a rep&#8217;s head or a sales engineer&#8217;s spreadsheet, the quote is only as good as the person assembling it.<\/pee><\/div>\n<\/section>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<div class=\"xpl-animation-wrap\">\n<style><!-- [et_pb_line_break_holder] -->.xss{--navy:#0C214C;--blue:#0350D8;--sky:#8BB9FC;--ice:#F3F8FD;--orange:#F46134;--blush:rgba(244,183,166,0.17);--yellow:#F7D119;<!-- [et_pb_line_break_holder] -->  font-family:\"Object Sans\",system-ui,sans-serif;color:var(--navy);background:var(--ice);<!-- [et_pb_line_break_holder] -->  width:100%;max-width:420px;height:372px;margin:0 auto;border-radius:16px;box-sizing:border-box;<!-- [et_pb_line_break_holder] -->  padding:16px 18px 14px;position:relative;overflow:hidden;border:1px solid var(--sky)}<!-- [et_pb_line_break_holder] -->.xss *{box-sizing:border-box}<!-- [et_pb_line_break_holder] -->.xss-title{font-size:15px;font-weight:700;letter-spacing:-.01em;margin:0 0 12px}<!-- [et_pb_line_break_holder] -->.xss-title b{color:var(--blue)}<!-- [et_pb_line_break_holder] -->.xss-stage{position:relative;height:262px;display:flex;gap:16px;align-items:flex-end;justify-content:center}<!-- [et_pb_line_break_holder] -->.xss-tray{position:relative;width:250px;height:250px;border:2px dashed var(--sky);border-radius:12px;background:var(--blush);transition:border-color .5s}<!-- [et_pb_line_break_holder] -->.xss.done .xss-tray{border:2px solid var(--navy)}<!-- [et_pb_line_break_holder] -->.xss-b{position:absolute;left:10px;right:10px;height:38px;border-radius:8px;display:flex;align-items:center;gap:8px;padding:0 10px;<!-- [et_pb_line_break_holder] -->  font-size:12px;font-weight:700;opacity:0;transition:transform .7s cubic-bezier(.34,1.45,.6,1),opacity .35s}<!-- [et_pb_line_break_holder] -->.xss-b.l{transform:translate(-260px,-150px) rotate(-10deg)}<!-- [et_pb_line_break_holder] -->.xss-b.r{transform:translate(260px,-150px) rotate(10deg)}<!-- [et_pb_line_break_holder] -->.xss-b.in{opacity:1;transform:none}<!-- [et_pb_line_break_holder] -->.xss-b:nth-child(1){bottom:10px;background:var(--blue);color:var(--ice)}<!-- [et_pb_line_break_holder] -->.xss-b:nth-child(2){bottom:56px;background:var(--sky);color:var(--navy)}<!-- [et_pb_line_break_holder] -->.xss-b:nth-child(3){bottom:102px;background:var(--yellow);color:var(--navy)}<!-- [et_pb_line_break_holder] -->.xss-b:nth-child(4){bottom:148px;background:var(--navy);color:var(--ice)}<!-- [et_pb_line_break_holder] -->.xss-b:nth-child(5){bottom:194px;background:var(--orange);color:var(--navy);border:2px dashed var(--navy)}<!-- [et_pb_line_break_holder] -->.xss-ic{margin-left:auto;display:flex;gap:4px;align-items:center}<!-- [et_pb_line_break_holder] -->.xss-sq{width:9px;height:9px;border-radius:2px;background:var(--ice)}<!-- [et_pb_line_break_holder] -->.xss-clk{width:16px;height:16px;border:2px solid var(--navy);border-radius:50%;position:relative}<!-- [et_pb_line_break_holder] -->.xss-clk:after{content:\"\";position:absolute;left:5px;top:1px;width:2px;height:6px;background:var(--navy);transform-origin:1px 6px;animation:xss-spin 2s linear infinite}<!-- [et_pb_line_break_holder] -->.xss-ph{width:12px;height:8px;border-radius:2px;background:var(--navy);opacity:.25}<!-- [et_pb_line_break_holder] -->.xss-b.in .xss-ph{animation:xss-ph 2.5s infinite}<!-- [et_pb_line_break_holder] -->.xss-ph:nth-child(2){animation-delay:.3s!important}.xss-ph:nth-child(3){animation-delay:.6s!important}<!-- [et_pb_line_break_holder] -->.xss-ph:nth-child(4){animation-delay:.9s!important}.xss-ph:nth-child(5){animation-delay:1.2s!important}<!-- [et_pb_line_break_holder] -->.xss-dot{width:7px;height:7px;border-radius:50%;background:var(--yellow);opacity:.35}<!-- [et_pb_line_break_holder] -->.xss-b.in .xss-dot{animation:xss-ph 2s infinite}<!-- [et_pb_line_break_holder] -->.xss-dot:nth-child(2){animation-delay:.25s!important}.xss-dot:nth-child(3){animation-delay:.5s!important}<!-- [et_pb_line_break_holder] -->.xss-dot:nth-child(4){animation-delay:.75s!important}.xss-dot:nth-child(5){animation-delay:1s!important}<!-- [et_pb_line_break_holder] -->.xss-wave{width:44px;height:14px}<!-- [et_pb_line_break_holder] -->.xss-gauge{position:relative;width:22px;height:250px;border:2px solid var(--navy);border-radius:11px;background:var(--ice);overflow:hidden}<!-- [et_pb_line_break_holder] -->.xss-fill{position:absolute;left:0;right:0;bottom:0;height:0;background:var(--blue);transition:height .6s ease}<!-- [et_pb_line_break_holder] -->.xss-tgt{position:absolute;left:-2px;right:-2px;bottom:72%;border-top:2px dashed var(--navy)}<!-- [et_pb_line_break_holder] -->.xss-gl{font-size:11px;font-weight:700;writing-mode:vertical-rl;transform:rotate(180deg)}<!-- [et_pb_line_break_holder] -->.xss-gw{position:relative;display:flex;align-items:flex-end;gap:6px}<!-- [et_pb_line_break_holder] -->.xss-total{position:absolute;left:50%;bottom:14px;transform:translate(-50%,16px) scale(.9);opacity:0;<!-- [et_pb_line_break_holder] -->  background:var(--navy);color:var(--ice);font-size:13px;font-weight:700;padding:7px 16px;border-radius:999px;transition:all .5s cubic-bezier(.34,1.45,.6,1)}<!-- [et_pb_line_break_holder] -->.xss-total b{color:var(--yellow)}<!-- [et_pb_line_break_holder] -->.xss.done .xss-total{opacity:1;transform:translate(-50%,0) scale(1)}<!-- [et_pb_line_break_holder] -->@keyframes xss-spin{to{transform:rotate(360deg)}}<!-- [et_pb_line_break_holder] -->@keyframes xss-ph{0%,100%{opacity:.25}40%{opacity:1}}<!-- [et_pb_line_break_holder] -->@media (prefers-reduced-motion:reduce){.xss *{animation:none!important;transition:none!important}}<!-- [et_pb_line_break_holder] --><\/style>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<div aria-label=\"Hardware, labor, project phases, recurring service and usage charges stack into one governed quote while margin stays visible, ending in one number for the customer.\" class=\"xss\" role=\"img\"><!-- [et_pb_line_break_holder] --><\/p>\n<div class=\"xss-title\">Five revenue streams. <b>One quote.<\/b><\/div>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<div class=\"xss-stage\"><!-- [et_pb_line_break_holder] --><\/p>\n<div class=\"xss-tray\"><!-- [et_pb_line_break_holder] --><\/p>\n<div class=\"xss-b l\">Hardware<span class=\"xss-ic\"><i class=\"xss-sq\"><\/i><i class=\"xss-sq\"><\/i><i class=\"xss-sq\"><\/i><\/span><\/div>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<div class=\"xss-b r\">Labor<span class=\"xss-ic\"><i class=\"xss-clk\"><\/i><\/span><\/div>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<div class=\"xss-b l\">Project<span class=\"xss-ic\"><i class=\"xss-ph\"><\/i><i class=\"xss-ph\"><\/i><i class=\"xss-ph\"><\/i><i class=\"xss-ph\"><\/i><i class=\"xss-ph\"><\/i><\/span><\/div>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<div class=\"xss-b r\">Recurring<span class=\"xss-ic\"><i class=\"xss-dot\"><\/i><i class=\"xss-dot\"><\/i><i class=\"xss-dot\"><\/i><i class=\"xss-dot\"><\/i><i class=\"xss-dot\"><\/i><\/span><\/div>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<div class=\"xss-b l\">Usage<span class=\"xss-ic\"><svg aria-hidden=\"true\" class=\"xss-wave\" viewbox=\"0 0 44 14\"><path d=\"M1 10 Q7 2 12 8 T23 7 T33 5 T43 3\" fill=\"none\" stroke=\"#0C214C\" stroke-dasharray=\"3 3\" stroke-width=\"2\"><\/path><\/svg><\/span><\/div>\n<p><!-- [et_pb_line_break_holder] --><\/div>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<div class=\"xss-gw\"><!-- [et_pb_line_break_holder] --><\/p>\n<div class=\"xss-gauge\">\n<div class=\"xss-fill\"><\/div>\n<div class=\"xss-tgt\"><\/div>\n<\/div>\n<p><!-- [et_pb_line_break_holder] --><span class=\"xss-gl\">Margin<\/span><!-- [et_pb_line_break_holder] --><\/div>\n<p><!-- [et_pb_line_break_holder] --><\/div>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<div class=\"xss-total\">One <b>number<\/b><\/div>\n<p><!-- [et_pb_line_break_holder] --><\/div>\n<p><!-- [et_pb_line_break_holder] --><script><!-- [et_pb_line_break_holder] -->(function(){<!-- [et_pb_line_break_holder] -->  var root=document.currentScript.previousElementSibling;<!-- [et_pb_line_break_holder] -->  while(root&&!root.classList.contains('xss'))root=root.previousElementSibling;<!-- [et_pb_line_break_holder] -->  if(!root)return;<!-- [et_pb_line_break_holder] -->  var blocks=root.querySelectorAll('.xss-b'),fill=root.querySelector('.xss-fill');<!-- [et_pb_line_break_holder] -->  var levels=[18,34,52,66,82];<!-- [et_pb_line_break_holder] -->  var reduce=window.matchMedia&&window.matchMedia('(prefers-reduced-motion: reduce)').matches;<!-- [et_pb_line_break_holder] -->  function finalState(){blocks.forEach(function(b){b.classList.add('in')});fill.style.height='82%';root.classList.add('done');}<!-- [et_pb_line_break_holder] -->  if(reduce){finalState();return;}<!-- [et_pb_line_break_holder] -->  var timers=[];<!-- [et_pb_line_break_holder] -->  function clear(){timers.forEach(clearTimeout);timers=[];}<!-- [et_pb_line_break_holder] -->  function run(){<!-- [et_pb_line_break_holder] -->    clear();<!-- [et_pb_line_break_holder] -->    root.classList.remove('done');fill.style.height='0';<!-- [et_pb_line_break_holder] -->    blocks.forEach(function(b){b.classList.remove('in')});<!-- [et_pb_line_break_holder] -->    blocks.forEach(function(b,i){<!-- [et_pb_line_break_holder] -->      timers.push(setTimeout(function(){b.classList.add('in');fill.style.height=levels[i]+'%';},500+i*850));<!-- [et_pb_line_break_holder] -->    });<!-- [et_pb_line_break_holder] -->    timers.push(setTimeout(function(){root.classList.add('done');},500+5*850+300));<!-- [et_pb_line_break_holder] -->    timers.push(setTimeout(run,500+5*850+300+3200));<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] -->  if('IntersectionObserver' in window){<!-- [et_pb_line_break_holder] -->    var started=false;<!-- [et_pb_line_break_holder] -->    new IntersectionObserver(function(e){<!-- [et_pb_line_break_holder] -->      if(e[0].isIntersecting&&!started){started=true;run();}<!-- [et_pb_line_break_holder] -->      else if(!e[0].isIntersecting&&started){started=false;clear();finalState();}<!-- [et_pb_line_break_holder] -->    },{threshold:.3}).observe(root);<!-- [et_pb_line_break_holder] -->  }else run();<!-- [et_pb_line_break_holder] -->})();<!-- [et_pb_line_break_holder] --><\/script><!-- [et_pb_line_break_holder] --><\/div>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<section class=\"xpl-section\">\n<h2>How Salesforce CPQ Models a Mixed Deal, and Where That Design Strains<\/h2>\n<pee>Salesforce CPQ handles moderate-complexity quoting well, and it is reasonable to keep using it for that. Its bundle and subscription model is mature, and its approval framework is familiar. It does the job for catalogs with manageable option counts and predictable service attachments.<\/pee><pee>The strain shows up along specific, identifiable design lines.<\/pee>\n<div class=\"xpl-subgrid\">\n<div class=\"xpl-subcard\">\n<h3>Bundle structure built for subscription-first thinking<\/h3>\n<pee>Salesforce CPQ&#8217;s product and option model is strongest when the deal is a configurable subscription with add-ons. Mixed revenue forces that model to stretch:<\/pee>\n<ul class=\"xpl-card-grid\"><!-- [et_pb_line_break_holder] --><\/p>\n<li>Labor becomes a product whose quantity really means hours.<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li>A project phase becomes a bundle that really means a schedule.<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li>Nested bundles multiply option records, and large configurations get heavier to calculate as the catalog and rule count grow.<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/ul>\n<\/div>\n<div class=\"xpl-subcard\">\n<h3>Rule maintenance and custom logic accumulate<\/h3>\n<pee>Product rules and price rules cover a lot. But solution pricing often needs conditional math that does not fit declaratively. Examples include rate-card lookups, effort estimates driven by configuration attributes and margin floors that vary by revenue stream. That logic tends to migrate into the Quote Calculator Plugin.<\/pee><pee>QCP works, but it is code inside a managed package. It needs developers and regression testing at every release. It also becomes a migration liability later.<\/pee><\/div>\n<div class=\"xpl-subcard\">\n<h3>Margin visibility arrives late<\/h3>\n<pee>Hardware often comes from the configurator, services from a spreadsheet and recurring lines from manual entry. When that happens, blended margin is something you calculate after the quote exists. You cannot steer it while you build the quote. <a href=\"https:\/\/experlogix.com\/salesforce-cpq-threshold-based-approvals-discount-guardrails\/\">Discount guardrails and threshold-based approvals<\/a> can only govern what the system can see.<\/pee><\/div>\n<div class=\"xpl-subcard\">\n<h3>The downstream handoff<\/h3>\n<pee>A solution quote has to become something operational: an order, a project plan and a service contract. In manufacturing, it also has to become an <a href=\"https:\/\/experlogix.com\/salesforce-cpq-manufacturers-nested-bundles-bom\/\">ERP-ready BOM<\/a> (enterprise resource planning). When the quote&#8217;s structure does not carry that detail, someone rebuilds it after close. That rebuild is where <a href=\"https:\/\/experlogix.com\/salesforce-cpq-quote-to-contract-drift\/\">quote-to-contract drift<\/a> starts.<\/pee><\/div>\n<\/div>\n<\/section>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<section class=\"xpl-section xpl-section--soft\">\n<h2>Three Honest Paths for Salesforce CPQ Customers<\/h2>\n<pee>Nothing forces existing <a href=\"https:\/\/experlogix.com\/salesforce-cpq\/\">Salesforce CPQ<\/a> customers to migrate, so treat this as a portfolio decision rather than a deadline. Below is a short view of each path through a solution-selling lens. The <a href=\"https:\/\/experlogix.com\/salesforce-cpq-vs-revenue-cloud\/\">full comparison of the three paths<\/a> covers each one in more depth.<\/pee>\n<div class=\"xpl-subgrid\">\n<div class=\"xpl-subcard\">\n<h3>Stay on Salesforce CPQ<\/h3>\n<pee>Staying is defensible when your solution bundles are stable, your services attach predictably and your QCP footprint is small. You keep a known system, a trained admin team and your existing approval workflows.<\/pee><pee>The trade-off is that Salesforce CPQ no longer receives meaningful new feature development. Any capability gap you have today, you will most likely still have in two years. Budget honestly for the workarounds and revisit the decision every year.<\/pee><\/div>\n<div class=\"xpl-subcard\">\n<h3>Reimplement on Revenue Cloud Advanced<\/h3>\n<pee>Salesforce&#8217;s strategic investment has moved to Revenue Cloud Advanced, now part of Agentforce Revenue Management. It is the forward path inside the Salesforce ecosystem. It has a broader revenue lifecycle scope, including billing and revenue management, plus an attribute-based catalog and a different data model.<\/pee><pee>The important caveat is scope. Moving from Salesforce CPQ to RCA is a reimplementation, not an upgrade. Catalog, rules, approvals, templates and integrations are redesigned rather than ported. RCA is the right investment for organizations whose priority is a unified revenue platform and whose configuration needs are moderate.<\/pee><\/div>\n<div class=\"xpl-subcard\">\n<h3>Keep Salesforce CRM and replace only the quoting layer<\/h3>\n<pee>The hard part of your business may be the configuration and the mixed-revenue math rather than billing. If so, you can keep Salesforce CRM as your system of record and change only where configure, price, quote happens. This limits how much of your system the project touches. Accounts, opportunities, forecasting and reporting stay where they are. The project focuses on product modeling, pricing rules and document output.<\/pee><\/div>\n<\/div>\n<\/section>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<figure class=\"xpl-illustration\"><img alt=\"\" decoding=\"async\" loading=\"lazy\" src=\"https:\/\/experlogix.com\/wp-content\/uploads\/solution-selling-cpq-mixed-revenue-quoting-illustration-2.webp\"\/><\/figure>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<section class=\"xpl-section\">\n<h2>How Experlogix CPQ Approaches Mixed-Revenue Solution Quoting<\/h2>\n<pee>Experlogix CPQ integrates with Salesforce CRM and runs inside the Salesforce workflow. Reps configure, price and quote in the opportunity and account context they already know.<\/pee><pee>Keeping Salesforce CRM as the authoritative system of record avoids copying records into a separate platform and syncing them back. That copy-and-sync pattern brings stale records, sync failures, duplicates, reporting built on copies and extra middleware to maintain.<\/pee><pee>For solution selling specifically, the relevant depth is in the modeling layer:<\/pee>\n<ul class=\"xpl-card-grid\"><!-- [et_pb_line_break_holder] --><\/p>\n<li>A logic-driven rules engine for complex, configurable products, with dependencies and constraints that keep configurations valid<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li>Guided selling that steers users toward valid, complete solutions instead of leaving attachment decisions to memory<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li>A low-code rule builder, so business users and admins can add products, adjust pricing rules and change logic without depending on developers<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li>Multi-level BOM generation, routing validation and ERP handoff, so a configured hardware solution becomes something production can act on<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li>Automated approval workflows tied to margin and discount thresholds, so margin control applies to the assembled quote<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li>Quote and proposal document generation tied to the configured quote<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/ul>\n<pee>On the services side of a solution quote, Experlogix CPQ is built for engagements that are scoped from several inputs:<\/pee>\n<ul class=\"xpl-card-grid\"><!-- [et_pb_line_break_holder] --><\/p>\n<li>Labor categories<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li>Skill-based rates<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li>Deliverable definitions<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li>Timeline dependencies<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/ul>\n<pee>Instead of rebuilding each scope from old statements of work, CPQ can generate a work breakdown structure (WBS) from libraries of service templates organized by engagement type. Each template contains pre-validated work packages with estimated effort ranges. Consultants see whether a quote hits target margins while they are configuring it. Quotes below target margins trigger approval workflows.<\/pee><pee>The same mechanics apply when equipment manufacturers move toward servitization. Hybrid product-and-service deals bring multiple pricing models, labor scoping, fragmented margins and longer contract lifecycles.<\/pee><pee>Be clear about fit. A deep configurator is not the constraint you need to solve in these cases:<\/pee>\n<ul class=\"xpl-card-grid\"><!-- [et_pb_line_break_holder] --><\/p>\n<li>Your catalog is simple.<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li>Your sales motion is self-service SaaS.<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li>Your organization has already committed to a Revenue Cloud Advanced reimplementation for billing and revenue lifecycle reasons.<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/ul>\n<\/section>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<section class=\"xpl-section xpl-section--bottom\">\n<h2>The Bottom Line on Solution Selling CPQ After Salesforce CPQ End of Sale<\/h2>\n<pee>Salesforce CPQ remains usable, renewable and supported, and end of sale does not require you to move. The question that matters for solution sellers is narrower. Can your quoting layer model hardware and services, labor pricing, project-based quoting, recurring revenue and usage charges inside one governed structure? Or does it assemble part of the deal and leave the rest to spreadsheets?<\/pee><pee>Judge the answer with three criteria:<\/pee>\n<ul class=\"xpl-card-grid\"><!-- [et_pb_line_break_holder] --><\/p>\n<li><strong>Completeness:<\/strong> What percentage of total quote value does the system calculate, rather than someone entering it manually?<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li><strong>Governability:<\/strong> Can approvals, discount guardrails and margin thresholds see every revenue stream on the quote?<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li><strong>Ownership:<\/strong> Can your admins change a rate card, add a service tier or adjust a solution bundle without a developer or a consultant invoice?<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/ul>\n<pee>Teams that close this gap get something concrete in return:<\/pee>\n<ul class=\"xpl-card-grid\"><!-- [et_pb_line_break_holder] --><\/p>\n<li>A quote that also works as an operational document<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li>Margin that is visible while the deal is being built, not after<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li>Admins who can respond to pricing changes directly<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/ul>\n<pee>You might get there by staying on Salesforce CPQ, reimplementing on Revenue Cloud Advanced or replacing only the quoting layer while keeping Salesforce CRM. Either way, the evaluation method is the same.<\/pee><pee>Start with one artifact. Take your hardest real solution quote from the last quarter, the one with equipment, labor, a project schedule and a recurring component. Map every line to where its number actually came from, and mark each one as system-calculated, spreadsheet-derived or expert judgment. That single page will tell you more about your CPQ strategy than any feature comparison.<\/pee><\/section>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<section class=\"xpl-faq-section\">\n<h2>FAQ<\/h2>\n<div class=\"xpl-faq-list\">\n<details class=\"xpl-faq-item\" open=\"\">\n<summary>What is solution selling in CPQ?<\/summary>\n<div class=\"xpl-faq-answer\"><pee>Solution selling in CPQ means quoting an outcome rather than a single SKU. One quote combines configured hardware, labor, project phases, recurring service agreements and sometimes usage charges. The CPQ has to price each stream correctly, apply the rules that connect equipment choices to the service scope and still produce one number the customer understands.<\/pee><\/div>\n<\/details>\n<details class=\"xpl-faq-item\">\n<summary>How should CPQ price labor and professional services?<\/summary>\n<div class=\"xpl-faq-answer\"><pee>Labor should be priced by rules, not by spreadsheets. Rules can price by role or labor category, skill-based rate, rate card, region and estimated effort. Ideally the effort is driven by what was configured. For example, a given equipment class and service tier should automatically imply a set of commissioning hours at the right rate. Experlogix CPQ supports services quoting built from labor categories, skill-based rates and deliverable definitions. It also calculates margin in real time as the quote is configured.<\/pee><\/div>\n<\/details>\n<details class=\"xpl-faq-item\">\n<summary>Can CPQ quote project phases and milestones?<\/summary>\n<div class=\"xpl-faq-answer\"><pee>Yes, when the CPQ can carry project structure rather than treating a phase as a generic bundle. Phases, milestones and deliverables should each carry their own effort and margin, so the quote can become a project plan after close. Experlogix CPQ can generate a work breakdown structure from service templates. For example, a system integration project might be generated with five phases: Discovery, Design, Build, Test and Deploy. Each phase includes deliverable-based work packages that the consultant can adjust.<\/pee><\/div>\n<\/details>\n<details class=\"xpl-faq-item\">\n<summary>How do you measure whether your CPQ supports solution selling?<\/summary>\n<div class=\"xpl-faq-answer\"><pee>Use three criteria:<\/pee>\n<ul><!-- [et_pb_line_break_holder] --><\/p>\n<li><strong>Completeness:<\/strong> the share of total quote value the system calculates rather than someone entering it manually<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li><strong>Governability:<\/strong> whether approvals, discount guardrails and margin thresholds can see every revenue stream<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<li><strong>Ownership:<\/strong> whether admins can change rate cards, service tiers and solution bundles without developers or consultants<\/li>\n<p><!-- [et_pb_line_break_holder] --><\/ul>\n<pee>A practical test is to map your hardest recent solution quote line by line. Mark each line as system-calculated, spreadsheet-derived or expert judgment.<\/pee><\/div>\n<\/details>\n<\/div>\n<\/section>\n<p><!-- [et_pb_line_break_holder] --><\/p>\n<div class=\"xpl-cta\">\n<div class=\"xpl-cta-copy\"><span class=\"xpl-cta-heading\">Quote the Whole Solution, Not Just the Hardware<\/span><pee>Quote the Whole Solution, Not Just the Hardware<\/pee><\/div>\n<div class=\"xpl-cta-action\"><a class=\"xpl-btn\" href=\"https:\/\/experlogix.com\/demo\/\">Get a Demo<\/a><\/div>\n<\/div>\n<p><!-- [et_pb_line_break_holder] --><\/article>\n<p>[\/et_pb_code][\/et_pb_column][\/et_pb_row][\/et_pb_section]<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Picture the quote for a production line upgrade. It includes the equipment and the commissioning labor. It also includes a multi-phase rollout, operator training days and a service agreement that bills monthly for five years. Each of those pieces is priced differently, and the customer still expects one clear number. This article explains where solution selling CPQ requirements diverge from how Salesforce CPQ (configure, price, quote) models a deal. It also shows how to decide whether your current setup can handle the next three years of mixed-revenue quoting.<\/p>","protected":false},"author":1,"featured_media":348437,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_et_pb_use_builder":"on","_et_pb_old_content":"","_et_gb_content_width":"","footnotes":""},"categories":[235],"tags":[],"xpl_cpq_related_topic":[187,184,195,200],"xpl_da_related_topic":[],"class_list":["post-348482","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-quoting-tools","xpl_cpq_related_topic-bom","xpl_cpq_related_topic-pricing","xpl_cpq_related_topic-professional-services","xpl_cpq_related_topic-salesforce"],"acf":[],"_links":{"self":[{"href":"https:\/\/experlogix.com\/fr\/wp-json\/wp\/v2\/posts\/348482","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/experlogix.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/experlogix.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/experlogix.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/experlogix.com\/fr\/wp-json\/wp\/v2\/comments?post=348482"}],"version-history":[{"count":5,"href":"https:\/\/experlogix.com\/fr\/wp-json\/wp\/v2\/posts\/348482\/revisions"}],"predecessor-version":[{"id":348578,"href":"https:\/\/experlogix.com\/fr\/wp-json\/wp\/v2\/posts\/348482\/revisions\/348578"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/experlogix.com\/fr\/wp-json\/wp\/v2\/media\/348437"}],"wp:attachment":[{"href":"https:\/\/experlogix.com\/fr\/wp-json\/wp\/v2\/media?parent=348482"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/experlogix.com\/fr\/wp-json\/wp\/v2\/categories?post=348482"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/experlogix.com\/fr\/wp-json\/wp\/v2\/tags?post=348482"},{"taxonomy":"xpl_cpq_related_topic","embeddable":true,"href":"https:\/\/experlogix.com\/fr\/wp-json\/wp\/v2\/xpl_cpq_related_topic?post=348482"},{"taxonomy":"xpl_da_related_topic","embeddable":true,"href":"https:\/\/experlogix.com\/fr\/wp-json\/wp\/v2\/xpl_da_related_topic?post=348482"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}