B2B Quote Requests: negotiate prices and turn them into orders - Module PrestaShop

A complete quote journey inside your shop: request, priced proposal, acceptance and cart, with no re-typing.

New Version 1.0.0 1.7.8 8.0+ 9.0+ 5 languages 🇫🇷 FR 🇬🇧 EN 🇪🇸 ES 🇮🇹 IT 🇵🇱 PL
  • A “Request a quote” button on the product page and on the cart, for the customer groups you choose
  • A negotiated price per line, a validity date and tax-excluded and tax-included totals computed by the shop
  • The customer’s acceptance puts the products in their cart at the negotiated prices, ready to order
  • Statuses, history and e-mails in the customer’s language, plus the “My quotes” area
  • Compatible with PrestaShop 1.7.8, 8.0+ and 9.0+
Not sure yet? Try it free for 24 hours — no credit card required.
Features

Everything you need, nothing you don't.

Every step is recorded and visible, for the customer and for your team.

A button on the product page and on the cart

“Request a quote” sits under “Add to cart” and on the cart page, only for the customer groups you allow. The selected combination and quantity are carried over.

A short form, linked to the account

The customer adjusts quantities and gives their company, VAT number and requirements. The quote stays attached to their account, with a unique reference.

A negotiated price per line

You enter the negotiated unit price excluding tax, the validity date and a message. Tax-excluded, tax and tax-included totals are recomputed with the shop’s rules before sending.

Acceptance fills the cart at the negotiated prices

In one click, the quoted products and quantities join the cart at their negotiated price. The customer then orders with the usual carriers and payment methods.

Every quote followed from start to finish

Five statuses, filters, the full history and links to the cart and order: every quote is tracked without leaving the back office.

E-mails in the customer’s language

Acknowledgement and proposal go out in the customer’s language, with a direct link to their quote. Your team gets a notification on every new request, acceptance or refusal.

description Full description expand_more

Your B2B quotes arrive by e-mail: give them a home in your shop

A business customer asks for a price for a few pieces, then for a much larger quantity. The request comes by phone or e-mail, the price is negotiated in a thread, and the order is typed into the back office by hand. In between, the agreed price is lost, the customer orders at the catalogue price, or nobody knows whether the quote was accepted.

B2B Quote Requests puts that journey inside your PrestaShop shop: the customer requests a quote from the product page or the cart, you answer with a negotiated price per line and a validity date, and their acceptance puts the products in their cart at the negotiated prices, ready to order. Every step leaves a trace: status, history and e-mails.

A button where the customer is

On the product page, the “Request a quote” button sits under “Add to cart” and carries the selected combination and quantity. On the cart page, a second button turns every cart line into a single request. You choose the allowed customer groups: your business customers see the button, your retail customers need not.

A visitor who is not signed in is invited to sign in or create an account, then returns to the form. Version 1.0.0 works with a customer account: quotes for visitors without an account, sent through a secure link, are not covered.

A short form, attached to the customer account

The form shows the products, the reference, the catalogue price excluding tax and the quantity. From a product page the customer adjusts the quantity; from the cart, the quantities are carried over as they are, with a link to change the cart. They can add their company, VAT number and a message, all optional: expected lead time, packaging, recurring orders. A consent box, an anti-spam check and a security token protect the submission. The quote receives a unique reference and arrives in your back office with the status “New”.

A proposal with a negotiated price per line

In the back office, the quote page shows the catalogue price at request time. You enter the negotiated unit price excluding tax of each line, the validity date and a message for the customer. Tax-excluded totals, taxes and tax-included totals are recomputed with the shop’s tax rules and the customer’s address before sending. A “Recalculate” button checks the amounts without sending anything.

The proposal goes out by e-mail in the customer’s language, with a link to their quote. The status becomes “Proposal sent”, and the history records the date and the author.

Acceptance fills the cart at the negotiated prices

From their account, in “My quotes”, the customer reads the proposal and accepts or refuses it, with an optional reason. On acceptance, the quoted products and quantities are added to their cart with the negotiated price of each line, set as a native specific price bound to this cart and this customer. Products already in the cart stay. The customer then orders as usual, with the shop’s carriers and payment methods.

The negotiated price applies to this cart only. A quantity below the quoted one returns to the catalogue price; above it, the negotiated unit price stays. Other products keep their usual price, and an expired or already processed proposal can no longer be accepted.

Every quote followed from start to finish

The quote list filters by status, customer, company, date and reference, and sorts on every column. Each quote has five statuses:

  • New: the request has just arrived;
  • Proposal sent: the customer has received a price and can answer;
  • Accepted: the products are in their cart at the negotiated prices;
  • Refused: the customer declined the proposal, with an optional reason;
  • Expired: the validity date has passed; a new proposal is still possible.

The quote page shows the customer’s details, their message, the lines, the proposal, the cart and the resulting order, then the full history. Three e-mails accompany the journey: the acknowledgement to the customer, the proposal with its link, and a notification to your team for every new request, acceptance or refusal. The recipients are configured in the settings.

Validity is checked when the quote is opened and when the customer accepts: no scheduled task is needed. A proposal can be sent again with a new price and a new date as long as the customer has not answered.

Three common use cases

  • A wholesaler negotiates volume: they ask for a price on a large quantity, you answer with a per-line price and a validity date, they accept and find the products in their cart.
  • A craftsman prepares a building site: they fill their cart with several references, request one quote for the whole cart, then accept the proposal covering each line.
  • A distributor orders regularly: they state their packaging and lead time in the message; your proposal answers those constraints and their order follows the usual path.

Settings and data

You enable or disable requests, choose the customer groups, the button locations, the default validity (30 days), the notification recipients and the shop texts in five languages. In multistore, each shop has its own quotes and settings. On uninstall, quotes are kept by default unless you choose to delete them; they are deleted with the customer account.

What the module does not do

Version 1.0.0 does not produce a PDF, does not accept attachments, handles neither counter-offers nor messaging, and does not create quotes on the merchant’s initiative. It does not hide prices and does not replace “Add to cart”. Shipping follows the shop’s carriers and is not negotiated. Automatic reminders, CSV export, group prices and payment terms are not included.

Requirements

PrestaShop 1.7.8, 8.0+ or 9.0+, PHP 7.4 or later, Classic and Hummingbird themes. Interface and e-mails in English, French, Spanish, Italian and Polish. No external service is needed: e-mails go through PrestaShop and payment uses the methods already installed.

Stop re-typing your quotes: let your business customers request, negotiate and order in one place.

Comparaison

Why choose us?

See how we compare to the most common alternatives on the market.

Feature Addons
Transparent pricing
Lifetime updates included
Direct developer support
PS 1.7, 8 & 9 compatible
Standardized clean code
Multi-store ready
No hidden renewal fees
Included Not included Partial / Not guaranteed
Preview

Discover the module in images.

The customer sees the negotiated price of each line and accepts in one click from “My quotes”

The customer sees the negotiated price of each line and accepts in one click from “My quotes”

A “Request a quote” button under “Add to cart”, with the selected combination and quantity

A “Request a quote” button under “Add to cart”, with the selected combination and quantity

A short form: quantity, company, VAT number and message, linked to the customer account

A short form: quantity, company, VAT number and message, linked to the customer account

Every request in a filterable list, with its status, total and validity

Every request in a filterable list, with its status, total and validity

A negotiated price per line, with tax-excluded and tax-included totals from the shop’s tax rules

A negotiated price per line, with tax-excluded and tax-included totals from the shop’s tax rules

From the cart, one quote request for all its lines

From the cart, one quote request for all its lines

Support

FAQ

Find answers to frequently asked questions about this module

Yes. The form is for signed-in customers: a visitor is invited to sign in or create an account, then returns to the request. Version 1.0.0 does not handle quotes for visitors without an account sent through a secure link.

Open the quote from the list, enter the negotiated price excluding tax for each line, the validity date and your message. “Recalculate” checks the totals without sending anything; sending then moves the quote to “Proposal sent” and e-mails the customer.

The quoted products and quantities are added to their cart with the negotiated price of each line, applied as a native specific price bound to that cart and that customer. Products already there stay. The status becomes “Accepted” and your team is notified.

You set the validity date of each proposal; the setting defaults to 30 days, from 1 to 365. After that date the quote becomes “Expired” and can no longer be accepted: the check runs on opening and on acceptance, with no scheduled task. A new proposal is still possible.

As long as the customer has not answered, you can send the proposal again with a new price and a new date. In version 1.0.0 the merchant does not change quantities, remove lines or create quotes on their own initiative.

No: it applies only to the cart created by the acceptance. A lower quantity returns to the catalogue price, a higher one keeps the negotiated unit price, and other products keep their usual price. Version 1.0.0 does not create group prices.

No. The proposal is viewed online from the customer’s account; no PDF is generated and no attachment is accepted. The customer can accept, refuse with an optional reason or come back later; there is no counter-offer or messaging in the module.

No. The proposal covers the product lines. Delivery is calculated by the shop’s carriers at order time, as for a usual cart.

When the product also has a catalogue discount, PrestaShop shows that discount’s badge on the cart line, next to the negotiated price: it reads catalogue discounts without taking the cart into account. The amount charged is still the negotiated price, and the order lines carry it.

PrestaShop 1.7.8, 8.0+ and 9.0+, PHP 7.4+, Classic and Hummingbird themes, multistore, interface and e-mails in five languages. Without an active license (licensed edition), the storefront and proposals already sent keep working; activation is required to open quotes, send proposals and change settings in the back office.

5-minute installation · Full documentation included

inventory_2 Module 10.70 € 4.28 € one-time -60%
Choose your license
3 months of support for 0.99€ · then 1.99€/month
  • • Response within 24 business hours
  • 🔧 Installation & configuration assistance
  • 💬 Direct contact with the developer
No commitment · Cancel in 1 click from your account
Instead of --€/year if purchased separately

You might also like

Loading...