We’ve had a lot of people ask us if there’s a plugin that will allow users to use the cart functionality of WooCommerce, but submit the cart as a quote. While there’s nothing that will allow you to do this presently (this involves some complex changes), here’s a workaround you can use to create a “Get a Quote” site for WooCommerce.
The first thing we’ll want to do is create our quote form, which is why Gravity Forms is on the list. If you’d like to put this form in your product description, you can easily do so without another plugin.
However, I prefer to put this form in a new product tab, which is why the WooCommerce Tab Manager is on the list. This will also save me the trouble of adding this for each product, as I can create a global tab. Our “Get a Quote” form will be made just like the WooCommerce pre-sales form we made in an earlier post (which is more detailed, so check it out if we lose you!).
We’ll create a simple form with no conditional logic (as Tab Manager doesn’t support that yet, but will soon) to get a quote for a product in our shop. Customers will be able to submit this quote on each product page, so we’ll keep it short and sweet.
You may also need file uploads or other fields, so add them and we’ll save our form. Don’t forget to set any notifications or other form settings once you have your fields set up!
Now let’s add our form! You can embed this form in your product descriptions, which may be a pain if you have to do it for each product. That’s why I’ll create a global tab to add this to all (or most) of my products quickly.
Now we’re getting somewhere! You can add this to your default tab layout if you’d like to add it to all products, or you can simply add it on a per-product basis. You can always remove this tab if needed, even if it’s part of the default layout, by overriding the tab layout at a product level. You can choose how to add the tab based on how many products will leverage it.
Now we have a shiny new tab with a quote form. Notice that the Product Title field is hidden from customers, but will be filled in for me when the form is submitted.
Awesome! Now that we have the “Submit for Quote” part of the WooCommerce shop covered, let’s talk about those pesky Add-to-Cart buttons and pricing that we probably don’t want to show.
The Catalog Visibility Options plugin is optional in this setup. If you don’t want to display any purchasing options, you can simply leave the price field for the product blank, and no pricing or add-to-cart buttons will be displayed on the product page. For most themes, the shop page will have a button that reads “Read More” instead of “Add to Cart” if no price is set.
If you’re okay with this setup, you’re done! However, if you’d like to have the option to display price but get rid of purchasing, display price to only certain groups / members, or allow purchasing to only certain groups and members, then Catalog Visibility Options will give you the fine-grained control for this. You’ll also be able to control this on a category or per-product basis.
Catalog Visibility Options will let you disable purchasing for everyone or non-logged in members, and you can optionally disable pricing as well for everyone on non-logged in members under WooCommerce > Settings.
Showing price can be handy if you have a set price for your services, but don’t want customers to go through the checkout process. It’s also handy if you use your site as a catalog rather than an full eCommerce solution.
Rather than control this on a global level (from WooCommerce > Settings), you can also control this based on categories or on a per-product basis. For example, you can restrict categories to certain user roles (you can managed and add them easily with this plugin). This could be handy if certain members or types of customers can request quotes, but others cannot – excluded roles won’t be able to view a product.
In short, Catalog Visibility Options provides flexibility if you need to control who should submit quotes and for which products quotes should be submitted.
At minimum, you’ll need Gravity Forms or another form builder to make your WooCommerce Get a Quote forms. If you’d like to display this form for all products easily, Tab Manager can do this and help you determine when to display it. If you want to adjust purchasing and quote options based on category, product, or user role, then you can add Catalog Visibility Options into the mix.
The problem I am having is when I select “Disabled” for purchasing and “Enabled for Logged in Users” for pricing, it deactivates or hides my gravity forms alltogether.
It appears that I need to have purchasing enabled to get the gravity forms to show at all. Can you help?
All your tutorials are great, thank you so much for sharing your expertise with us!
I am wondering if this can be used to create an enquiry form. We are using Woocommerce as a catalogue (using the Catalogue Visibility plugin) and we want our customers to enquire about the product(s) they are interested renting. Yes, renting. We do not require a shopping cart. However, we also don’t want to receive 101 emails a day from people enquiring about each product separately. My question is: is it possible, using this or a similar system, to have one enquiry form users can add the product(s) they are interested in, for that form to remember the products even if the user goes back and looks at another product, then comes back and submits the form containing all the products?
Oh dear – not sure if I am making myself clear here! Sorry if this seems long-winded however I’ve been looking for a solution for quite a while now.
Hey Nancy, at present I’m not aware of a way to do this across multiple products. You could use Gravity Forms to create an enquiry form and simply list all products in it (perhaps using a multiselect field), but a customer can’t leave the page then return to the form with products still selected. Of course, almost anything is possible via custom code, so it could be done, but it’s not a small task 🙂 .
I think the cart system actually would be best here, but perhaps you’d like to just use the cart system and then use the “cheque” gateway to submit an order for a quote instead of paying for it (you can change the Add to Cart and Place Order text as needed). You could also use the Checkout Field Editor to remove unneeded checkout fields.
Thank you so much for getting back to me, Beka. I figured as much – we might look at having this custom-coded at a later stage. For now, the cart system solution you propose indeed seems the way to go.
hello, thank you for the article.
I don’t know how do the 3th step.
Hey Paolo, I’d recommend creating an “invoice” or “quote” product and using the Name your Price extension, and customers could then enter the price on the quotation to pay. This will take them through the checkout process, where you can also have them accept terms and conditions.
I would like such a solution (“get a quote” form + no price) to be applied to specific categories.
The other categories being “standard”, showing the classic “add to cart” button as well as the price.
While I know how to achieve this with a form, assigning it to a specific tab visible in one or more categories, it seems that you can’t use Catalog Visibility Options to set price visibility on a per category basis. Looks like it is a site-wide setting. I may be wrong.
I may have missed the obvious, here … I am getting a headache … any clue ?
I’d like to recommend Propoza. This is a new early adapter software (free) that will help you to do exactly that, maing the quote-to-order process really simple and efficient.
I need a ‘add to quote’ basked solution. So people can ask for a quote for multiple products at once. And when they checkout they should submit the basked without the payment options. See what I mean? Could you advise?
Hey Betsy, sounds like it could be a good fit, though if they’re also paying for shipping / handling after registering, you may want to either (a) make a new order for these fees that can then be paid, or (b) use the Gravity Forms payment integrations (with a developer license) to process the shipping & handling as part of this form instead of through WooCommerce.
Would this quote work with Contact Form 7, WooCommerce Tab Manager and Catalog Visibility Options?
Hey Mike, I don’t typically use Contact Form 7, but there’s no reason it shouldn’t work.
What about these 2 Request a Quote plugins for WooCommerce?
I consider using WooQuotation as it seems to have more features and flexibility. What do you say?
If so, I am a buyer!
Hey Michael, the only thing that would change this is using a different theme I’m afraid — the theme is entirely what dictates the tab layout. Sorry I don’t have better news here! You’d have to change themes or have a developer customize the existing theme.