B2B quote requests that end in an order.

Business buyers send a quote list with company details, messages and files. You answer with prices, quantity breaks and a validity date, and the buyer checks out at the quoted prices, once. Quotes, messages and files stay in your store.

  • v1.1.1
  • CS-Cart 4.17.2 – 4.21.x, Multi-Vendor
  • 30-day refund on a first purchase
Product page with "Request a quote" next to "Add to cart"; the quantity and options are taken over.
Admin, Orders > Quote requests: status tabs with counts, customer and company, product count, status badges with "Customer replied", quoted total, validity and the search sidebar.
Admin quote editor: products and prices with discount %, unit price, quantity breaks and remove; customer, status and summary sidebar.
Offer terms: validity date, shipping and delivery note, message with the offer, "Save" and "Send offer".

The problem

Why B2B quotes get lost in e-mail

Business buyers rarely pay list price. They ask for a quote, and the negotiation runs in e-mail threads, spreadsheets and PDF offers.

Then someone has to turn the accepted offer into an order by hand, with the risk that the price does not match what was agreed.

Three ways to handle quotes

ApproachHow it worksTrade-off
E-mail and manual ordersBuyers e-mail; staff create the order in the admin.No status, no history, and prices are typed by hand.
External quoting toolA separate CPQ or CRM tool.Costs, integration work, and data outside the store.
Quotes in the storeWhat B2B Request a Quote (RFQ) doesRequests, offers and messages in CS-Cart; accepted offers go straight to checkout.Buyers need an e-mail link or account to see their quote.

B2B Request a Quote (RFQ)

How it works

  1. 01

    The buyer requests

    They add products with options and quantities to the quote list and send it with company details, a message and files.

  2. 02

    Staff send an offer

    Set quantities, unit prices or discounts, quantity breaks, a validity date and a shipping note, and send the offer.

  3. 03

    The buyer checks out

    They accept, ask for changes or decline. Accepted offers go to checkout with shipping, taxes and payment as usual; quoted prices are checked on the server and can be ordered once.

What you get

Quote button

Next to or instead of Add to cart, per store, category or product.

Price on request

Hide prices from guests or any user group.

Offer editor

Unit price or discount, offered quantity and quantity breaks.

Validity dates

Automatic expiry, plus a shipping and delivery note.

Message thread

Messages with attachments and internal notes on every request.

Multi-Vendor split

A request is split per vendor, and each vendor answers in its panel.

Made for

  • Wholesale
  • Industrial supplies
  • Custom manufacturing
  • Office and catering supplies
  • Trade-only catalogs
  • B2B marketplaces

B2B Request a Quote (RFQ)

Screenshots

Why B2B buyers ask for a quote instead of adding to cart

Business buyers rarely pay the list price without asking. They need a price for 500 units, a delivery date for the purchase file, or a document their manager can approve. In a standard CS-Cart store, that conversation moves to e-mail: no status, no owner, and a manual order at the end, typed in by someone who hopes the price was remembered correctly.

B2B Request a Quote keeps that conversation in the store. Quotes, messages and files stay with you, and there is no external service. Accepted offers go straight to the normal checkout, so shipping, taxes and payment work as they always do.

The RFQ process, from request to order

  1. The buyer clicks Request a quote on a product and collects several products with options and quantities in a quote list, adding a note per line such as "matte finish".
  2. They fill in contact details, company, a message and files such as drawings, and send. Guests get a confirmation with a personal link, and signed-in customers find it under My quotes.
  3. Your team opens the quote in Orders, Quote requests, sets the offered quantity and unit price or a discount percentage, adds quantity breaks if useful, and sets a validity date and a shipping note.
  4. Send offer e-mails the buyer. The buyer can accept and check out, ask for changes, decline, or message you with files.
  5. On acceptance, the products go to the cart at the quoted prices. The quote then shows Ordered with the order number.

Without quantity breaks, the quoted quantity is fixed. With them, the buyer may order more, and the unit price follows the break. A quote is ordered as a whole, so remove a line before sending if the buyer only wants part of it. After the validity date the quoted lines leave the cart and the quote shows Expired; you can change prices and send it again at any time before it is ordered.

Button placement and hidden prices

The default button sits next to Add to cart. Product and category settings can override it: next to Add to cart, instead of it (quote only), or not shown. A product setting beats its categories, and the add-on walks up from the main category to the store default.

Common quote setups
You wantDo this
Prices for signed-in customers onlyTick Guest in Hide prices from. Guests see Price on request and the quote button.
Trade prices hidden from the publicTick the groups in Hide prices from.
Quotes for wholesale buyers onlyTick the group in Show the quote button to.
Quote only across the storeSet the default button to Instead of Add to cart.
No quotes on one categorySet Do not show on that category.

Hidden prices only apply to products that have the quote button. A product set to Do not show keeps its price for everybody.

Files and offers

Attachments are on by default: five files per message, 5 MB each, in jpg, png, webp, pdf, txt, csv, xlsx, docx and zip. Scripts, HTML and SVG are always refused, file contents are checked, and files are stored outside the web root. Offers are valid for 14 days by default, and Print / PDF opens a clean page for the browser’s Save as PDF.

Catalog promotions do not lower quoted prices unless you switch that on. Cart promotions and coupons work as usual.

Quotes on a Multi-Vendor marketplace

If the list holds products from several vendors, one quote per vendor is created, and the quote page links the related quotes. Each vendor answers in their panel, which keeps the marketplace team out of pricing it does not own. Turn that off and your administrators answer everything. Vendors can set the button option on their own products; category settings are for administrators.

Quote add-on, Make an Offer or contact form?

Ways to handle price requests
Contact formMake an OfferRequest a Quote
Several productsIn free textOne per offerYes
Files and message threadE-mail onlyMessagesYes
Quantity breaksNoNoYes
One click to checkoutNoYesYes
Printable offerNoNoYes

For B2C haggling on single items, Make an Offer is lighter. A full B2B setup usually adds Wholesale Price Lists for standing contract prices, B2B Registration & Approval for trade accounts, and B2B Net Terms & Credit Limits for payment on invoice. The B2B add-ons page covers how they fit together. Get B2B Request a Quote on the store.

Versions and requirements

CS-Cart and Multi-Vendor 4.17.2 to 4.21.x, PHP 7.4 to 8.3 as your version supports. The add-on works with the 4.21 full page cache, supports CAPTCHA add-ons on the guest form, has REST API access, and can be set per storefront on Ultimate. It also works alongside the Catalog mode and Call requests add-ons.

CS-Cart

B2B Request a Quote (RFQ) at a glance

Business buyers request a quote for several products; you answer with offer prices, quantity breaks and a validity date, and the buyer checks out at the quoted prices.

Price
CS-Cart $99 · Multi-Vendor $149 (one-time)
Version
1.1.1
Compatible with
CS-Cart 4.17.2 – 4.21.x, Multi-Vendor
Licence
One production store, perpetual, 12 months of updates and support
Refund
30-day refund on a first purchase

CS-Cart

The CS-Cart products stores buy first

The most requested products on this platform. Each one has its own page, and you can buy it straight on the sales site.

Shop CS-Cart on our sales site

Prices, licences, full documentation and instant downloads are on the store.

cs-cart.kaviolabs.com · 98 add-ons · 29 themes

FAQ

Questions and answers

Can guests request quotes?

Yes, with signed e-mail links. Registered customers also get My quotes.

Can a quoted price be reused?

No. Quoted prices are checked on the server and can be ordered once.

Is there a printable quote?

Yes, for print or PDF, plus e-mail and admin notifications with editable templates.

Does it work with full page cache and CAPTCHA?

Yes. It supports full page cache, CAPTCHA and the REST API.

Can customers change the quoted price in the cart?

No. Quoted prices are enforced on the server, and a quote can be ordered once.

Can a customer buy only one product of a multi-product offer?

No. A quote is ordered as a whole. Remove a product from the offer before you send it if the customer only wants part of it.

How do I show prices only to signed-in customers?

Tick Guest in Hide prices from. Guests see Price on request and a Request a quote button; registered customers see prices and can buy.

Where are attachments stored?

In a private folder that is not reachable from the web, and they are only sent after an access check.

Take B2B quotes from request to order

The product page has the full documentation, screenshots and the changelog.

Kavio Labs

Also by Kavio Labs

The same standards, the same support desk and one licence portal on every platform we build for.