Request a quote for PrestaShop 8.2 and 9.x: buyers add products to a quote list next to Add to cart and send it with their details; price-on-request products hide the price and Add to cart; you answer in Orders > Quotes with a discount or your own price per line, a validity date and a message; the buyer accepts and checks out at the quoted prices through PrestaShop's own cart-bound prices. E-mails, history, overview. No overrides.
Tested on 9.2.0 & 8.2.8Updated Nov 4, 2026Version 1.0.0Compatible with PrestaShop 8.2 – 9.x No core file edits
Built forPrestaShop
Quotes that turn into orders (sample data)1 of 7
What it does
Request a quote for PrestaShop 8.2 and 9.x: buyers add products to a quote list next to Add to cart and send it with their details; price-on-request products hide the price and Add to cart; you answer in Orders > Quotes with a discount or your own price per line, a validity date and a message; the buyer accepts and checks out at the quoted prices through PrestaShop's own cart-bound prices. E-mails, history, overview. No overrides.
Big orders start with a question. Trade buyers, project work and large quantities need a price before an order. PrestaShop has no quote flow, so the questions end up in e-mails and the prices in manual orders. Request a Quote keeps it in the store and ends in a normal PrestaShop order.
Features
A quote list next to the cart
"Add to quote" next to Add to cart, on every product or only on price-on-request products
Combination and quantity from the product page; a note per line; a floating "Quote list" link
Request form with name, e-mail, company, phone and a message; guests optional
Price on request
Chosen categories and products show "Price on request" instead of the price and Add to cart, in lists too
The cart refuses them on the server, unless an accepted quote covers them
Your offer, line by line
Orders > Quotes: requests to answer first, offers out, won this month, value ordered from quotes
Discount % or your own price per line, quantities, extra products, live totals
Accept and check out
The buyer accepts on the quote page (signed link or My quotes) or asks for changes
The quoted lines go into the cart with PrestaShop's own cart-bound prices: shipping, taxes, payment and invoices work as usual
A quoted price applies up to the quoted quantity and is used once; a canceled order opens the quote again
Full history on both sides; "From quote" card on the order page
What you get
Download & installOne module .zip for PrestaShop 8.2 and 9.x, installed in Modules > Module Manager > Upload a module. Download it from My licenses right after payment.
12 months of updates & supportNew versions and help for 12 months (24 or 36 months at checkout). After that the module keeps working; renew anytime at 50%.
License for your storeOne production domain with all its subdomains; staging and local development hosts are free. How licensing works
30-day refundFull refund within 30 days of your first purchase, no reason needed. Refund policy
Tested buildsPrestaShop 8.2 – 9.x. Tested on PrestaShop 9.2.0 and PrestaShop 8.2.8.
Documentation & supportFull guide (Installation, Configuration, Usage, FAQ) on this page. Tickets from your account, first reply within 1 business day.
Compatibility
Request a Quote works with PrestaShop 8.2 – 9.x.
We list the builds we install and test on. “Tested” means the test plan ran on that build; “Supported” means the build is inside the supported range.
Compatibility
Version
Range
Runs on
Status
PrestaShop 9
9.0 – 9.2
PHP 8.1 – 8.4
Tested on 9.2.0
PrestaShop 8.2
8.2.0 – 8.2.x
PHP 7.2.5 – 8.1
Tested on 8.2.8
1.0.0
Nov 4, 2026
Latest
First release for PrestaShop 8.2 and 9.x (Classic and Hummingbird storefronts, one-page checkout of 9.2).
"Add to quote" button next to Add to cart on every product or only on price-on-request products; the chosen combination and quantity go into the quote list; a floating "Quote list" link follows the buyer.
Price on request for chosen categories and products: no price and no Add to cart on product pages and lists, the cart takes them out on the server unless an accepted quote covers them.
Quote list page with quantities, a note per line and the request form (name, e-mail, company, phone, message, consent for guests); guests optional; signed-in customers get their details filled in.
Buyer page (signed link or My quotes): accept and check out at the quoted prices, ask for changes, decline. Quoted prices are cart-bound core specific prices up to the quoted quantity, used once by the order; a canceled order opens the quote again until its validity date.
E-mails through the store mail settings (buyer: received, offer, declined; sales: new, accepted, changes, declined).
Overview: requests to answer, offers out, offers sent and won this month, order value from quotes; quote card on the order page; GDPR erase and export hooks; optional cron for expiry.
How do I install the module?
Upload. Modules > Module Manager > Upload a module: drop the .zip from My licenses. One package for PrestaShop 8.2 and 9.x.
Configure. Click Configure. Settings follow the shop context, so in a multistore you set them for all shops or per shop.
Enter the license key. Paste the key from My licenses in the License panel and save. You have 14 days to do it; local and staging addresses are included.
PrestaShop 8.2 – 9.x. Tested on PrestaShop 9.2.0 and PrestaShop 8.2.8. The Compatibility tab lists every version range.
Do the modules use overrides?
No. They work through PrestaShop hooks, widgets and the core product customization system. Nothing is written to /override and no core file is changed, so PrestaShop updates and other modules keep working.
Which themes do they work with?
They are tested on Classic and Hummingbird, the two themes PrestaShop ships. Themes based on them work; a theme that removes the standard product page containers may need a small CSS adjustment, and support helps with that.
Do they work with multistore?
Yes. Settings follow the shop context, like PrestaShop's own modules. A license covers one production domain with its subdomains, so shops on other domains need a license each.
What does the license cover?
One production store domain with every subdomain (www, shop., staging.), plus local development hosts such as localhost, *.local and *.test. A store on another domain needs its own license; a second-store license is 40% off. You have 14 days after installing to enter the key. 12 months of updates and support are included; after that the module keeps working and renewals are 50% off. How licensing works
Can I get a refund?
Yes. Ask for a full refund within 30 days of your first purchase, no reason needed: open a ticket or write to [email protected] with your order number. The money goes back to the card or bank account you paid with within 5 business days of approval. Refund policy
How do I get help?
Open a ticket from your account, so your license details are attached. We answer Monday to Friday: bug reports within 1 business day, how-to questions within 2. Support policy. Not a customer yet? Ask a pre-sales question.
Business buyers often need a price before they order: large quantities, project work, trade prices. PrestaShop 8 and 9 have no quote flow. Request a Quote adds one that ends in a normal PrestaShop order.
Add to quote next to Add to cart on every product, or only on price-on-request products. The chosen combination and quantity go into the quote list; a floating "Quote list" link follows the buyer through the store.
Price on request for chosen categories and products: no price and no Add to cart on product pages and in lists. The cart takes these products out again on the server, unless an accepted quote covers them.
Quote list and request form: quantities, a note per line, name, e-mail, company, phone and a message. Company and phone can be hidden, optional or required. Guests are allowed or not; signed-in customers get their details filled in.
Offer editor in Orders > Quotes: list price, discount % or your own price per line, quantities, extra products, live totals, a validity date, a message to the buyer and an internal note. Save a draft or send the offer.
Buyer page (signed link in the e-mail, or My quotes in the account): accept and check out at the quoted prices, ask for changes, or decline. Every step is kept in the history on both sides.
Checkout with core prices: accepting puts the quoted lines in the cart with cart-bound PrestaShop specific prices. Shipping, taxes, payment modules, invoices and the one-page checkout of 9.2 work as usual. A quoted price applies up to the quoted quantity and is used once by the order; a canceled order opens the quote again until its validity date.
E-mails through your store mail settings: request received, offer and declined to the buyer; new request, accepted, changes asked and declined to your sales address.
Overview: requests to answer, offers out, offers sent and won this month, the order value from quotes, and a "From quote" card on the order page.
No overrides, no outside service.
Tested on
PrestaShop
9.2.0 and 8.2.8
Storefront
Hummingbird and Classic; 9.2 one-page checkout
Back office
PrestaShop 9 and 8 admin themes
Offer editor
Installation
Requirements
PrestaShop 8.2.0 to 9.x, PHP 7.2.5 to 8.5 (as your PrestaShop version needs)
Working e-mail settings (Advanced Parameters > E-mail) for the quote e-mails
A daily cron job is optional: validity dates are also checked whenever a quote page or Orders > Quotes opens
Install
Modules > Module Manager > Upload a module: drop kvquoterequests-1.0.0.zip.
Open Orders > Quotes > Settings.
Choose where the quote button shows: on every product, or only on price-on-request products.
Optional: choose price-on-request categories and products.
Set the default validity of offers and your sales e-mail.
Own-site edition: enter your licence key on the Settings tab.
Update
Upload the new zip the same way. Quotes, their lines, history and settings stay.
Uninstall
Uninstalling deletes the quotes, their lines and history, the settings and the Orders > Quotes tab. Cart-bound prices of accepted quotes are removed. Orders made from quotes stay in PrestaShop with their prices.
Configuration
Orders > Quotes > Settings
Storefront settings
Storefront
Setting
What it does
Request a Quote
Switches the storefront features on or off. Quotes and settings are kept when it is off.
Quote button on
Every product (next to Add to cart) or Only price-on-request products. Products that need a customization text or file never get the button.
Guests
Off: visitors must sign in to send a quote list.
Company field / Phone field
Hidden, optional or required on the request form.
Products per quote
Upper limit of lines in one quote list (default 100).
Price on request
Price on request
Setting
What it does
Categories
Every product in these categories (any of its categories counts) is price on request.
Products (IDs)
Single products by ID, comma separated.
Hide the price
On: no price on product pages and in lists. Off: the price stays visible, only Add to cart is replaced by the quote button.
Price-on-request products show "Price on request" in product lists. If someone posts one to the cart directly, the cart takes it out again, unless an accepted quote covers it (then up to the quoted quantity).
Offers and e-mails
Setting
What it does
Offers valid for (days)
Default validity date of a new offer; you can change it per offer.
Quote number prefix
Quotes are numbered Q-0001, Q-0002 ...
Sales e-mail
Receives new requests, acceptances, change requests and declines. Empty: the shop e-mail.
E-mails
Switch the buyer e-mails and the sales e-mails on or off.
Cron (optional)
A secret address that expires offers past their validity date and removes quote lists that were never sent after 90 days. Once a day is enough.
E-mail templates: modules/kvquoterequests/mails/en/kvqr_customer.html|txt and kvqr_staff.html|txt. Override them in your theme like any module e-mail.
Usage
1. The buyer builds a quote list
On a product page the buyer chooses the combination and the quantity and clicks Add to quote. A short message confirms it and the floating Quote list link shows the number of items.
Price on request product
On the quote list page the buyer changes quantities, adds a note per line (size, delivery date ...), fills in the request form and clicks Send quote request. Nothing is paid at this point.
Quote list
The buyer gets a confirmation e-mail with a signed link to the quote page; signed-in customers also find it under My account > My quotes.
2. You answer with an offer
Orders > Quotes lists every request; requests to answer come first.
Quotes
Open a quote to edit the offer:
Discount % fills the offer price from the list price; or type your own offer price. An empty offer price means the list price is offered.
Change quantities, remove lines (tick the box) or add a product by name, reference or EAN13.
Set Valid until, a message to the buyer and an internal note (only for your team).
Save draft keeps the quote with you; Send offer e-mails it to the buyer.
Decline request tells the buyer with your message; Delete removes the quote.
Offer editor
3. The buyer accepts and checks out
The quote page shows every line with its quoted price, the saving and the validity date.
Offer
Accept and add to cart puts the quoted lines in the cart at the quoted prices. The buyer then checks out as usual: shipping, taxes and payment are added by PrestaShop.
Ask for changes sends a message back to you; the quote shows "Changes asked" in your list and you can send a new offer.
Decline the offer closes it.
Cart at the quoted prices
A quoted price applies up to the quoted quantity of that product; above it the catalog price applies (price-on-request products are brought back to the quoted quantity). The order uses the quote: it shows "Ordered" with a link to the order, and the order page shows a From quote card. If the order is canceled, the quote can be ordered again until its validity date.
History
Every step (request, draft, offer, changes, acceptance, order, expiry) is listed with its date and message, in the back office and on the buyer page.
History
FAQ
Does it change core files or use overrides?
No. Hooks, module controllers and PrestaShop's own cart-bound specific prices.
Are quoted prices with or without tax?
Offers are made per item without tax, in the shop default currency. PrestaShop adds the taxes of the buyer's address at checkout and converts to the buyer's currency.
Can the buyer change the cart after accepting?
Yes. A quoted price applies up to the quoted quantity of each product; above it the catalog price applies. Price-on-request products are brought back to the quoted quantity.
What if the buyer uses another device?
The quote page is reached by the signed link in the e-mail or under My quotes; accepting there puts the lines into the cart of that device.
Do group discounts apply on top of a quoted price?
Customer group reductions of PrestaShop apply to every price, quoted prices included. Set the offer with that in mind, or use groups without a reduction for quote buyers.
Can products with customizations be quoted?
Products that need a customization text or file do not get the quote button.
What happens when an offer expires?
Its cart prices are removed and the quote shows "Expired". You can edit it and send a new offer.
Does it send e-mails by itself?
Only through your store's own mail settings, and each kind can be switched off.
Is personal data handled?
Quotes store the buyer's name, e-mail, company and phone to answer the request; guests agree to it on the form. The module answers the GDPR module's erase and export requests.
Multistore?
Quote lists are kept per shop; settings are global. Not tested on a real multistore setup.
The department store theme for PrestaShop 8.2 and 9.x: colour-coded departments, a department list beside the hero slider with two side promos, a big search with a department picker, tabbed product grids, a 2 + 1 + 2 offer grid, deals of the day with real countdowns, a department showcase, a promotions band and a three-column product page with a sticky buy box. Four styles (Meridian, Harbor, Citrus, Night), every colour editable. A child theme of Classic, no core changes.
Stop AI crawlers, scrapers, vulnerability scanners and unwanted countries before PrestaShop 8.2 or 9.x builds a page. Googlebot and Bingbot are verified by DNS and always allowed; 50+ bots get one switch each; country rules use free GeoIP databases and can close only the checkout; IP and network lists, rate limits for search, filters and forms, honeypots and the add to cart flood fix; a one-second challenge instead of a captcha; learning mode, dashboard, log, IP tester and Cloudflare export. Two hooks, no overrides.
Import and update products from supplier CSV, XML and JSON feeds in PrestaShop 8.2 or 9.x on a schedule: URL, FTP, SFTP or upload; field mapping with real sample values; match by reference, EAN-13, supplier reference or MPN; markup by price band and category with .99 rounding; a price guard that holds back big drops and below-cost prices; combinations from feed rows; stock-only syncs; products missing for N runs set to stock 0 with a safety limit; a dry-run preview with old and new values, run history with a row log and undo. No overrides, no storefront hooks.