Cpq for B2b Ecommerce Illustration: a Quote Document Travelling Unchanged from an Erp System to an Adobe Commerce Storefront Checkout
Yaro Rogoza Avatar

CPQ for B2B eCommerce is the set of tools and integrations that let a business buyer configure a product, receive an accurate price, and get a quote they can order against, without a sales rep re-keying anything. For a manufacturer of built-to-order equipment, the configuration step is the hard part. For a distributor selling catalog SKUs at negotiated prices, there is nothing to configure, and the hard part is getting the quote your rep built in the ERP in front of the buyer as something they can pay for.

A customer calls for pricing on 200 cases of safety gloves. Your rep checks the account in the ERP, agrees a price, and prepares the quote. The customer is ready to buy, and completing the order still takes another email, another call, or another round of manual entry. For a distributor with an established quoting process, that gap is usually what’s behind a search for eCommerce CPQ.

This article covers what CPQ means for each type of B2B seller, how Adobe Commerce’s native negotiable quotes work and where they fall short for ERP-centric sales teams, how an ERP-originated quote becomes a storefront checkout, what to settle before you build it, and what a US safety equipment distributor saw three months after switching on that flow.

What is CPQ in B2B eCommerce?

CPQ stands for configure, price, quote. CPQ for B2B eCommerce covers three jobs: letting the buyer choose a valid product or combination, calculating the right price for that buyer under their contract, and issuing a quote that converts to an order. Dedicated CPQ platforms such as Conga, Cincom, and Epicor CPQ were built for the first job and grew into the other two. If you run a distribution ERP, one of them has already pitched you.

Most B2B storefronts handle price and quote without a CPQ platform. Adobe Commerce, Shopware, and OroCommerce ship company accounts, contract pricing, and some form of quote request; Shopify has no native quoting even on Plus, so it relies on apps. The dividing question is whether your product needs the C, and, if it doesn’t, whether your pricing and approval rules are complex enough to need a dedicated engine anyway.

Seller typeConfigurePriceQuoteTypical need
Manufacturer, engineered or built-to-order productsComplex: option dependencies, compatibility rulesContract plus configuration-drivenYesDedicated CPQ engine, integrated to storefront and ERP
Manufacturer, standard catalog with variantsLight: size, finish, packContract and tier pricingYesStorefront configurable products plus quoting
Distributor, catalog SKUs with multi-step pricing approvalsNoneLayered: contract, rebate, margin floors, manager sign-offYesEvaluate whether the ERP enforces the approval chain; if not, CPQ may still earn its place
Distributor or wholesaler, catalog SKUs, ERP-enforced pricingNoneContract, tier, and negotiated per dealYes, and most revenue runs through itQuoting integrated with the ERP where reps already work

Most distributors we work with sit in the last row. Buyers don’t configure a case of nitrile gloves; they negotiate a price on 200 cases of it, and the ERP already knows what that customer is allowed to pay. The vendors ranking for “CPQ for B2B eCommerce” sell the first row’s problem. This article is about the last.

Where should a B2B quote live: ERP or storefront?

The quote should live in the ERP, because the ERP is where contract pricing is enforced, where the rep sees credit and stock, and where the invoice is generated. A quote created anywhere else has to be copied into the ERP before it ships.

Whichever system you choose, the requirement is the same: one system owns the quote and its commercial terms, and the others respect them. Problems start when a rep approves one price and checkout calculates another, or when a revised quote leaves an older version available to purchase. Those are integration decisions, and they need settling before launch (the checklist is further down).

The storefront’s own quoting tools assume the opposite ownership. Take Adobe Commerce as the strongest native example.

How Adobe Commerce negotiable quotes work

Adobe Commerce with the B2B extension includes negotiable quotes. According to Adobe’s B2B documentation (updated May 14, 2026), either a company buyer requests a quote from their cart or a sales rep drafts one in the Commerce admin. The two negotiate by email tracked inside Commerce. The rep applies discounts at line-item or quote level, the quote carries an expiry date, and the buyer checks out from the accepted quote. Adobe’s My Quotes documentation (June 15, 2026) adds that no further discounts can be applied to an accepted quote at checkout. Quote templates, documented June 2026, go a step further for recurring business: the seller sets order-count and quantity thresholds on the template, and once the buyer accepts it they can generate pre-approved linked quotes without renegotiating each one.

The design is solid and we implement it. Its constraint is location. The negotiation happens in the eCommerce admin. Your inside sales team works in Infor CloudSuite Distribution or whichever ERP runs the business, where they see credit status, open orders, warehouse allocation, and ten years of the customer’s history. A rep asked to quote in a second system either stops using it or quotes in the ERP and pastes the result into Commerce afterwards. Both outcomes leave the online quoting channel empty, and the native flow starts with the buyer submitting from the cart, which is the step a phone-and-fax customer will never take.

The ERP-first alternative

We built Shared Quotes on Sirius, our ERP connector, to run the other direction. The rep builds the quote in the ERP the way they always have. Sirius turns it into a checkout the buyer can complete from a link. Commerce never becomes a second system of record for pricing, and the rep’s screen gains one button.

How does an ERP quote become an eCommerce checkout?

An ERP quote becomes a checkout when an integration layer reads the quote record from the ERP, builds the quoted lines at the quoted prices in the storefront, and gives the buyer a link that opens straight onto them. With Shared Quotes the flow has five steps; the buyer performs two, and neither requires an account.

Shared Quotes Flow: Quote Built in Infor Cloudsuite Distribution, Rep Generates a Link, Buyer Opens a Ready Adobe Commerce Checkout with No Login, Order Returns to the Erp
  1. The customer asks for a quote by phone or email, as they have for twenty years. Nothing changes on their side.
  2. The rep builds the quote in Infor CloudSuite Distribution using the customer’s contract pricing and whatever discretion the rep has. Same screens, same approval rules.
  3. The rep generates the link from inside the ERP. They open the quote in CloudSuite, check the Shared Quote information block, and click “Shared Quote Links”. The quote starts loading in the storefront the moment the link is generated. Small quotes (up to 20 lines) are ready in under five minutes; 20 to 40 lines take five to ten; larger quotes up to fifteen. The rep drafts the email while it loads, and if the buyer clicks early they see a “quote is being loaded, refresh in a moment” message rather than an error.
  4. The buyer opens the link and finds the quoted products at quoted quantities and unit prices. No login, no account creation, no search. A customer who has never used the website is looking at their own order.
  5. They check out. The quote converts to an order in the ERP under the same ERP identifier, so the order carries the quote reference by construction. If the buyer was logged in when they paid, the order sits in their account history and they can reorder from it.

The design rests on two decisions: the rep’s workflow doesn’t change beyond one button, and the buyer’s first online action is a checkout rather than a search. A phone customer gets a reason to visit the store that isn’t “please learn our website.” Their order is already built.

What should an ERP quote integration define before launch?

Moving product lines into a checkout is the easy part. The integration also has to deliver the right quote to the right person, show valid terms, and behave predictably when something changes. These are the six decisions, with what Shared Quotes does by default on each.

AreaDecision to makeShared Quotes default
AccessWho can view and purchase the quote?Anyone holding the link. Each link is unique to one quote. The link is the credential, so it should be treated like an invoice link and sent to the person who asked for the quote.
Product mappingHow do ERP item numbers, units of measure, and pack sizes map to storefront SKUs? What about items not published online?SKU is the ERP item number, one to one. Unit of measure is display-only, no conversion. Items not published on the storefront still work; they’re created on the fly for the quote.
Pricing and chargesWhich quoted values are preserved, and which charges (freight, tax, surcharges) are recalculated at checkout?The ERP calculates everything. The storefront displays the quote and handles payment. No values can be changed at checkout.
Expiration and revisionsWhat happens when the quote expires, or a rep changes it after sending?An expired link stops working and tells the buyer to ask their rep for a new one. A revised quote means a new link; old links don’t silently serve old terms.
Availability and creditStock dropped between quote and checkout; account on credit hold.No storefront-side blocks. Stock and credit checks stay where they already are, with the ERP and the rep who issued the quote.
Order trackingHow is the order linked to the quote, and can the buyer reorder?The quote converts to an order under the same ERP ID. Reorder is available from account order history when the buyer paid while logged in.

The revision row is the one that catches people in custom builds. If a rep edits a quote after the email has gone out, the integration needs an explicit rule for what the old link now opens. Shared Quotes’ answer is that it doesn’t: every link maps to one quote, and a change means a fresh link. It’s the least clever option, and it’s the one that never produces a dispute over which terms applied.

Where pricing logic lives

Pricing logic lives in the ERP and nowhere else. The storefront receives a price for a quoted line and displays it. It doesn’t recalculate it, apply promotional rules on top, or hold its own copy of the customer’s contract. We apply the same rule to every Sirius implementation, quoted or not: contract pricing is read from the ERP, stock is read live with sub-200ms responses on live installs, and the ERP stays authoritative. The wider pattern is covered in our ERP integration services overview, and for Infor merchants the Infor pre-integrated solution ships with this already wired.

Ownership is a separate question from caching. Sirius caches at field level for performance, and buyers are always served from that cache. The cache stays honest because any change in the ERP regenerates it: a rep adjusts a price or a quantity in CloudSuite, the cached values for that quote are rebuilt, and the storefront never has a window where it shows terms the ERP no longer holds. The performance of a cache with the freshness of a live read.

Duplicate pricing rules are the most common failure we see in B2B storefronts built without this discipline. The rep quotes $4.12 from the ERP. The storefront applies a 5% tier discount someone configured two years ago. The buyer sees $3.91, and either margin leaks or a support ticket opens. One source, one number.

B2b Pricing Rules Living in One Place: a Storefront Price Tag Fed by a Single Erp Source Versus One Broken by Duplicate Storefront Discount Rules

What results does ERP-integrated quoting produce?

A US safety equipment distributor that launched Shared Quotes on Sirius in May 2026 saw quotes drive 36% of all web revenue from 11% of orders within three months (Atwix client data, August 2026). Quoted orders are fewer and larger than self-service orders, which is what you’d expect from a channel carrying negotiated bulk purchases rather than reorders.

Over the same period the store’s eCommerce orders grew 130% year over year and eCommerce revenue grew 279%. Shared Quotes launched alongside other changes, so we don’t attribute the full increase to it. The 36% share is the number we’d point to: a channel that didn’t exist in April was a third of web revenue by August.

Keep channel adoption separate from demand growth when you read numbers like these. Moving an existing customer’s phone order online removes re-keying and gives the buyer a self-service history; it doesn’t by itself create a new customer. Both are worth having, and they’re different claims.

How do you measure quote-to-order performance?

Measure how many shared quotes become online orders and how much manual work remains between quote approval and order processing. Five numbers cover it:

  • Quote conversion. Share of generated links that become orders, by rep and by customer segment.
  • Time to order. Hours or days from link sent to checkout. A shrinking number means buyers trust the link.
  • Rep effort. How often a rep re-sends a link, regenerates a quote, or walks a buyer through checkout.
  • Online adoption. How many phone-and-email customers placed their first web order through a quote, and how many later created an account and placed a second order without one.
  • Quoted revenue share. Share of eCommerce revenue that ran through shared quotes, tracked monthly so seasonality doesn’t masquerade as a trend.

The fourth metric is the one that tells you whether the feature is changing buyer behaviour or only moving existing orders through a new door.

What Shared Quotes doesn’t do

It doesn’t configure anything. The ERP holds all business logic: pricing, configuration, approvals. Shared Quotes passes what the ERP quoted to the buyer and takes them to payment in a few clicks. If your products need a configurator, the configuration happens upstream, in the ERP or a CPQ engine feeding it, and the resulting quote is what the buyer sees. Shared Quotes adds nothing to it and removes nothing from it.

It doesn’t replace Adobe’s negotiable quotes for storefront-initiated negotiation. Shared Quotes brings a quote from the ERP to Adobe Commerce via a link. Adobe’s native request-for-quote captures quotes that start on the storefront. The two run side by side. A buyer cannot counter or edit a Shared Quote online; the negotiation stays with the rep, which is the point.

It runs on Infor CloudSuite Distribution and Adobe Commerce today. Other Sirius-connected ERPs and storefronts are not yet supported for this feature. If you run something else, ask; the connector layer is shared and the roadmap follows demand.

It doesn’t gate access. Anyone with the link can view and buy against the quote. That’s a deliberate trade for a login-free first order, and it’s why links are unique per quote and die on expiry.

It won’t fix a quoting process that’s broken in the ERP. If reps quote from memory and skip the system, there’s nothing to share.

CPQ vs ERP quote integration: which do distributors need?

Dedicated CPQ for B2B eCommerce is worth evaluating when configuration, pricing, or approvals exceed what your current systems enforce. ERP quote integration fits a different situation: the quote is already complete and approved, and the customer needs a way to buy it online. Some businesses need both, with CPQ creating the quote and the integration carrying it to checkout.

Your situationWhat you need
Configurable or engineered products, reps quote in a CPQ toolKeep the CPQ tool; integrate its output to the ERP and storefront
Configurable products, reps quote in spreadsheetsA CPQ engine first, then integration
Catalog SKUs, layered approvals the ERP doesn’t enforceEvaluate CPQ for the approval workflow; integrate its quotes to the storefront
Catalog SKUs, reps quote in the ERPAn ERP-to-checkout quote bridge such as Shared Quotes. No CPQ engine.
Catalog SKUs, reps quote inside the eCommerce adminAdobe native negotiable quotes with order sync to the ERP
Catalog SKUs, buyers want to request and negotiate quotes onlineAdobe native negotiable quotes, with Shared Quotes alongside for phone-originated deals

Start with one recent order. Where were the products selected, who approved the price, where was the quote recorded, and what did someone have to do before the ERP could process it? The answer puts you in a row. Most distributors we talk to were evaluating a configurator for a row-four problem. The B2B features that support this on Adobe Commerce, from shared catalogs to company hierarchies, are covered in our Magento B2B features guide.