Magento 2 Request for Quote & Hide Price

New extension for Magento 2, on Hyvä and Luma

Let customers ask for a price, and pay the one you offer

Request for Quote & Hide Price adds Add to Quote to Magento 2. Customers send the products they want and the prices they hope for; you reply from the admin with an offer; they check out at the agreed price. Hide prices by customer group or category, and on rental stores put dates on every quote line.

3
packages: the extension, the rental connector and Hyvä
13
customer and staff emails, each with its own template
24
GraphQL queries and mutations
8
pages in the guide
yourstore.com · Chiavari Chair, Gold with Ivory Cushion
A product page on a Hyvä store: a gold Chiavari chair at 38 dollars for 120, with Add to Cart and Add to Quote side by side and a message that the chair was added to the quote
A demo event-supply store on Hyvä: Add to Quote sits next to Add to Cart, and the header counts what is in the quote.
Magento 2 request for quote

Big orders don’t fit a fixed price

Trade buyers, event planners and anyone ordering in quantity want to agree a price first. Without a quote step, that conversation leaves your store and comes back as an order you type in by hand.

Without a quote step

  • Buyers email a product list and wait, and the thread lives in someone’s inbox
  • Trade and custom-work prices are shown to everyone, or to no one
  • When they agree, staff re-type the order and the price by hand
  • Made-to-order work and large installations can’t be sold online at all

With Request for Quote & Hide Price

  • Customers build the quote from your catalogue, with a price they hope for and a note per line
  • You answer from Sales › Quote Requests with an offer, a PDF and an expiry date
  • They check out at the agreed price; the quoted lines are locked in the cart
  • Prices hidden from guests or by category, and products sold by quote only
How a quote works

From Add to Quote to a placed order in six steps

The same steps whether the customer is logged in or a guest, and whether the products are sold or rented.

1
Add to Quote

From product, category and search pages, widgets or the wishlist, or Move to Quote from the cart.

2
Send the request

Your price per line, notes, your own questions and files. Guests can ask too.

3
Price it in the editor

Magento’s own order screen: a price or percent off per line, a quote discount, shipping and expiry.

4
Send the offer

The “Quote ready” email with the PDF and a link to accept and check out.

5
The customer accepts

From My Quotes or the email, the lines go into the cart at your prices, locked.

6
The order is placed

The quote is complete, the order links back to it, and rental holds become the order’s reservations.

It works on any Magento 2 store. Our rental extension is not needed; on a rental store, add the rental connector and quotes carry dates.

Storefront

Add to Quote wherever customers shop

The button follows Add to Cart around the store, and the quote cart works like a cart: quantities, options, a price the customer hopes for and a note on every line.

Product, category and search pages

Add to Quote sits next to Add to Cart. It takes the options, configurable and bundle choices, and rental dates. Widgets and the wishlist can show it too.

Move to Quote from the cart

A customer who filled a cart can turn it into a quote request with one button.

Your price, and tier hints

An optional “Your price” box per line. If a tier price already beats it, the line says so.

Notes, questions and files

A note per line, your own questions such as an event date, and attachments like a floor plan.

Header count and dropdown

The header shows how many products are in the quote, with a small list to check or remove them.

The quote cart with 200 Chiavari chairs at a requested 31 dollars with a note, 60 bistro chairs at a requested 49 dollars, and 12 flatware sets with a message that the catalog price is already below the price asked for
The quote cart: catalog price, the customer’s price, a note per line and the tier hint.
The header quote dropdown listing a Chiavari chair, a round banquet table and an oak harvest table with their quantities
The header dropdown lists what is in the quote.

Read: Quote Buttons and the Quote Cart →

Hide price

Hide prices, or sell by quote only

One store rule for customer groups and categories, plus each product’s own settings. Hidden prices are hidden on the server: no page, listing, search result, widget or GraphQL response carries them, and the cart refuses the product even if someone posts to it directly.

You wantSetCustomers see
Trade prices for logged-in customers onlyThe store rule for NOT LOGGED IN, on the categories you choose“Price on request” or your own text, and Add to Quote instead of Add to Cart
A price for some groups, not othersThe store rule, or a product’s own Price setting, for chosen customer groupsThe price if their group may see it
Made-to-order or site-survey workQuote only (no Add to Cart) on the productAdd to Quote, and no way to buy it outright
A quick question instead of a full quoteClicking the hidden-price text opens the “Get a quote” formA short form that creates a real quote request
A 4K laser projector product page seen by a guest, with Price on request instead of the price and an Add to Quote button instead of Add to Cart
A guest on a trade-only category: no price, and Add to Quote replaces Add to Cart.
The Get a quote form over a product page, with name, email, telephone, quantity and a message
Clicking the hidden-price text can open the “Get a quote” form.
Enforced on the server

Product pages, listings, search, widgets, Open Graph tags, option price data and GraphQL all leave the price out. GraphQL returns null, never 0.

Per product, on its own

A product set to hide its price stays hidden even when the store rule is off. Saving the product is enough.

Staff still see everything

Prices stay visible in the admin, and quote emails, the PDF and My Quotes show them once you send the offer.

Read: Hiding Prices and Quote-Only Products →

Back office

Answer with an offer from Magento’s own order screen

Quote requests live under Sales, next to Orders. The quote editor is Magento’s Create New Order page working on the quote, so product search, options, addresses and shipping methods work as your team already knows them.

A price or percent off per line

Set a fixed unit price or a percentage off each line, with a note to the customer.

One adjustment for the whole quote

A discount %, surcharge %, discount amount or target total, applied once after the line offers.

Shipping and expiry

Agree an address and method, or offer a custom shipping fee. Set the expiry and a reminder date.

Sales reps and permissions

Assign requests to a rep per customer group or round robin. Permissions per action, and staff see their own quotes.

Convert, clone, start from a cart

Convert to Order with the lines locked at the offer, Clone as Quote from an order, or turn a customer’s cart into a quote.

Versions and history

Every version of the offer with what changed, the status history, and the conversation with attachments.

The quote editor with three lines, each with an Offer box set to Fixed unit price or Percent off, the customer’s requested price and note, and a note to the customer
The quote editor: an offer and a note on each line, next to what the customer asked for.
The Quote Requests grid with seven quotes from different customers, statuses Pending, Approved, Changes requested and Complete, totals, expiry dates, stock hold, owner and source
Sales › Quote Requests: status, total, expiry, sales rep and source for every request.

Read: Managing Quotes in the Admin →

Emails and PDF

Every step is an email, and every offer is a PDF

Thirteen emails keep customers and your team up to date. Each has its own template, and any customer email can be switched off. The offer goes out as a PDF with your logo.

WhenCustomer getsYour team gets
A request arrivesQuote receivedNew quote request, as it arrives or in a daily, weekly or monthly digest
You send the offerQuote ready, with the PDF and a checkout link—
You change itQuote updated, or a new Quote ready after changes—
The customer writes, edits, asks for changes or cancelsQuote canceled, when they cancelCustomer activity on a quote
Time passesA reminder, then Quote expired—
The order is placedOrder placed from your quote—
The Quote ready email with the store logo, the offer expiry, an Accept and check out button, and the lines with the catalog price struck through next to the offer
The “Quote ready” email, with Accept and check out.
The quote PDF with the store logo, the quote details, the customer and ship-to addresses, the lines with catalog and offered prices, and the totals
The PDF: attached to the email and downloadable from My Quotes.

Read: Sending Offers, Emails and the PDF →

Customers

Customers check out at the price you agreed

My Quotes lists every request with its status and expiry. An offer goes into the cart with one click, at your prices, and the quoted lines can’t be changed on the way to checkout.

My Quotes

Status tabs, totals and expiry dates, and a page per quote with the prices asked for and offered, the conversation and the PDF.

Locked at the offer

Price, quantity, options and rental dates are locked in the cart. Cart price rules don’t apply unless you allow them.

Request changes

Customers can answer an offer in words; you edit it and send a new version of the same quote.

Guests too

Guests follow their quote through a private link, and can save it to an account with the same email address later.

One quote, one order

When the order is placed, the quote is complete and the order links back to it.

An approved quote in My Quotes with the lines showing catalog price, You asked and Our offer, the totals, and Proceed to Checkout and Move to Cart buttons
The offer in My Quotes: what they asked for, and your price.
The shopping cart with the quoted chairs and flatware at the offered prices
Move to Cart: the offer’s prices, locked.

Read: My Quotes and Checking Out →

Hyvä and Luma

Built for Hyvä and Luma, and for phones

The Hyvä package brings the buttons, the quote cart, My Quotes and the “Get a quote” form to Hyvä with Alpine.js, no RequireJS. Luma stores need nothing extra.

A Hyvä product page on a phone: the store header, the product title and a photo of a gold Chiavari chair
A product page on a phone
The same product page further down on a phone, with the price, quantity 80, the cart and quote buttons and the message that the chair was added to the quote
Add to Quote on a phone
The quote cart on a phone with 80 Chiavari chairs, a requested price of 36 dollars and a note, and 10 round banquet tables
The quote cart on a phone
The same Chiavari chair on a Luma store, with the tier prices and the Add to Cart and Add to Quote buttons side by side
The same product on Luma.
For rental stores

Quotes with rental dates, and stock held while they decide

With our rental extension (1.2.209 or later) and the rental connector, customers pick dates in the rental calendar before Add to Quote, and the dates travel with the line to the offer, the PDF and the order.

Dates on every quote line

Availability is checked when a rental is added. Refuse unavailable dates like Add to Cart does, or allow them so customers can ask anyway.

Rental date pickers in the editor

The same calendars as order create, per line or for the whole quote with Change All Dates.

Stock held for the quote

Held when you send the offer (or when the customer submits, for a few hours), and moved onto the order when they check out.

Deposits and damage waivers

Shown per line and in the quote’s totals, the PDF and the emails, and carried into the cart.

A frame tent rental product with the start and end dates picked in the rental calendar, the total for those dates, and the Rent and Add to Quote buttons
Dates first, then Add to Quote.
A rental quote in My Quotes with two frame tents and an LED dance floor for October 16 to 18, festoon lighting, and the offered prices
The offer, with the rental dates on each line.
Hold stockWhat happens
On approval (default)Stock is held when you send the offer, until the order is placed, the offer expires or it is declined
On submission, for a short timeHeld when the customer submits, for a number of hours (48 by default), and for good when you approve
Only when the order is placedNever held; the dates are checked at checkout
ManuallyOnly the Hold stock and Release hold buttons on the quote

Read: Rentals, the GraphQL API and Moving from Amasty →

API

A GraphQL API for headless stores and integrations

Everything the storefront does is available on Magento’s own /graphql, and the back office can price, send, decline and extend quotes with an admin or integration token. Nothing to enable.

Storefront

Quote carts for customers and guests, adding products (with rental dates), submitting with custom fields and files, My Quotes, requesting changes and moving an offer to the cart.

Back office, permission-checked

List and read quotes, set line offers and the quote adjustment, send, decline and extend, checked against the same permissions as the admin.

Hidden prices stay hidden

Where a price is hidden, every amount is null, in the quote types and in Magento’s own price_range.

# a guest asks for a quote
mutation { createGuestRfqQuoteCart }

mutation {
  addProductsToRfqQuoteCart(cart_id: "<masked id>", items: [
    { sku: "FES-CHAIR-CHIAVARI", quantity: 120,
      requested_price: 34, note: "Gold" }
    { sku: "FES-TENT-FRAME", quantity: 2,
      rental_dates: { start_date: "2026-10-16",
                      end_date: "2026-10-18" } }
  ]) { quote_cart { total_quantity } }
}

mutation {
  submitRfqQuote(input: { cart_id: "<masked id>",
    email: "[email protected]",
    firstname: "Sofia", lastname: "Martinez" })
  { quote { number status } guest_token }
}
Who it’s for

For stores that sell by the pallet, the project or the event

Anyone whose best customers want to agree a price before they order, with or without rentals.

B2B and wholesale

Trade prices for logged-in customer groups, quantity quotes and a PDF for the buyer’s purchasing office.

Hide price by group

Made to order

Furniture, signage, printing or anything priced by size and finish: quote only, with notes and files per line.

Quote only

Event and party rental

Tents, dance floors and furniture quoted with dates, and stock held while the planner decides.

Rental connector

Equipment hire

Long hires and large orders with a price per project, delivery agreed on the quote and deposits in the totals.

Rental connector

Catering and hospitality supply

Commercial machines quoted with installation and training, next to everyday stock customers simply buy.

Quote and buy

Stores moving from Amasty

An importer brings Amasty Request a Quote quotes across, and both can run side by side while you switch.

Importer
Compare

Magento Open Source on its own, and with Request for Quote

CapabilityMagento Open Source+ Request for Quote & Hide Price
Asking for a priceContact form or emailAdd to Quote, a quote cart and a request form
AnsweringBy email, then a manual orderAn offer from the order editor, with a PDF
AcceptingStaff type the orderThe customer checks out at the agreed price
Hiding pricesNot availableBy customer group, category or product, on the server
Quote-only productsNot availableYes, with Add to Quote instead of Add to Cart
Rentals—Dates on quote lines and stock holds, with our rental extension
API—GraphQL for the storefront and the back office
Pricing

One price, for stores with or without rentals

A one-time purchase with its own licence and its own Composer repository. Magento Pro and Multi Source Inventory Pro licences do not include it.

Magento 2 Request for Quote & Hide Price

Everything on this page, for Luma and Hyvä.

$299one-time
  • Add to Quote, the quote cart, guest quotes and My Quotes
  • Hide price by customer group, category or product, and quote-only products
  • The quote editor, offers, 13 emails, the PDF and the report
  • The rental connector and the Hyvä package included
  • 1 year of support and updates, then $149/year if you want them
Buy Request for Quote — $299

Before you buy

What it needs, and what it doesn’t do yet.

  • Magento Open Source or Adobe Commerce 2.4.7 to 2.4.9, PHP 8.2 to 8.4
  • Rental stores: our rental extension 1.2.209 or later for the connector
  • Installs with Composer from its own repository, shown on the install page
Read the install guide

The extension keeps working whether or not you renew; renewing brings new versions and support. Already using Amasty Request a Quote with our Amasty integration? It stays supported, and you can switch when you like. Release notes

Ready to take quote requests?

Install it next to your store as it is: nothing changes for customers until you turn on the storefront buttons.