
B2B Suite for Magento 2 — Quotes, RFQ & Hide Price
B2B Suite adds a complete quote-and-negotiate workflow to Magento 2. Shoppers add products to a quote and request pricing; you counter line by line — adjust unit prices, discounts, surcharges, shipping and fees, see your margin, then approve and convert the quote straight to an order. Hide pric…
Trade buyers don't "add to cart" — they ask for a price
In B2B selling, the list price is the start of a conversation, not the end. Buyers want to request a quote, negotiate quantities, agree a delivery date and raise a PO — and a standard Magento checkout has nowhere for that to happen, so the enquiry ends up in your inbox and the deal stalls. B2B Suite builds the whole quote-and-negotiate flow into your store: customers add items to a quote, you counter line by line and see your margin as you go, then approve and convert the quote straight into a real order — no spreadsheets, no email tennis.
What you'll use it for
- Sell to trade and wholesale — give business buyers the request-a-quote flow they expect, on the same store your retail customers use.
- Win on margin, not just price — negotiate each line with your cost in view, and set auto-approve rules so small discounts clear themselves.
- Gate sensitive pricing — hide prices from the public or from specific customer groups, and turn the button into "Call for Price" or "Request Quote".
- Capture every enquiry — a price-request popup turns "how much is this?" into a logged lead with the customer's details and consent.
How the quote flow works
A real negotiation desk, not a contact form
Each quote is a working document. You adjust unit prices, apply an overall or per-line discount or surcharge, add a custom fee, set or pre-configure shipping, and watch the grand total and your margin update. Customers can be allowed to edit their request or propose their own prices; every change is recorded in a history thread with comments that can be shown to or hidden from the customer. Quotes carry a status through their life — pending, under review, approved, rejected, expired, ordered — get a friendly increment ID (Q-000001), expire automatically, and send a reminder before they do.
Hide Price & Call for Price
Rules decide who sees what. Target by customer group, specific SKUs or whole categories, set a priority when rules overlap, show your own replacement text, and even restrict a rule to weekends. When a price is hidden, a request popup captures the enquiry — name, email, phone, comment and GDPR consent — into a price-request inbox you can reply to from the admin.
Headless-ready, and AI-assisted
Everything works on a decoupled storefront. Requesting a quote, listing a customer's quotes, accepting or rejecting, applying hide-price rules and setting the PO number and delivery date at checkout are all exposed over GraphQL, with a REST API alongside — so an Astro or other headless front end gets the full B2B flow, not a cut-down version. An optional built-in AI assistant helps you draft quote wording, using your own AI key from the AgenticEcom suite.
Specifications
| Quote requests | "Add to Quote" on product and category pages; guest quotes with optional auto-account; customer-group gating; minimum quote amount; category exclusions |
|---|---|
| Negotiation | Per-line unit price, discount %, surcharge, custom fee, shipping; overall discount/surcharge; live margin via a cost attribute |
| Lifecycle | Status workflow, increment IDs, comment/history thread, expiry with reminder email, auto-approve rules (max discount / total threshold) |
| Output | PDF quote; convert to order with PO number and requested delivery date |
| Hide Price | 5 modes; rules by customer group, SKU or category, with priority, replacement text and weekend option |
| Price requests | Front-end popup with GDPR consent; admin inbox with reply |
| Headless | GraphQL resolvers + REST web API for the full quote and hide-price flow |
| Delivery & licence | Composer install, per-domain licence key, updates via Composer |
Works with
Part of the AgenticEcom suite for Sales, Customers & Marketing:
Converted quotes flow into Order Manager; price-request consent ties in with GDPR Pro. Included in the Enterprise bundle.
Frequently asked questions
How does a customer request a quote?
An "Add to Quote" button appears on product and category pages. The customer builds a quote, adds a PO number, requested delivery date and note, and submits it. You can allow guest quote requests and optionally auto-create an account for them.
Can I negotiate prices line by line?
Yes. For each line you can set a new unit price, a discount or surcharge percentage, custom fees and shipping. If you map a cost attribute, the quote shows your margin as you negotiate, and you can let customers propose their own prices too.
Can I hide prices or show "Call for Price"?
Yes. Hide-price rules support five modes — hide price and add-to-cart, hide price only, replace add-to-cart with "Request Quote", show "Call for Price", or require login to see the price — targeted by customer group, SKU or category.
What happens when a quote is agreed?
You approve it (manually, or automatically via discount/total rules), optionally send a PDF, and convert it to a real Magento order. The PO number and requested delivery date are carried onto the order.
Does it work with a headless storefront?
Yes. The full quote and hide-price flow is exposed over GraphQL, with a REST API as well, so an Astro or other decoupled front end can offer the same B2B experience.
Which Magento and PHP versions are supported?
Magento Open Source 2.4.9 and later 2.4.x, verified on PHP 8.4 and 8.5.

