---
title: "Add the Request a quote button to your store"
description: "Place the Request a quote button on product pages and the cart with QuotWay's theme app blocks - no theme code to edit."
url: "https://www.quotway.com/docs/storefront/quote-button-placement"
type: "documentation"
category: "storefront"
updated: "2026-09-30"
locale: "en"
source: "QuotWay - B2B Quote & Negotiation App for Shopify"
---

# Add the Request a quote button to your store

**Read time:** 4 minutes.
**Last updated:** September 30, 2026
**Who it's for:** Merchants placing the **Request a quote** button on their storefront - product pages, the cart, custom themes, and headless setups.

Add the **Request a quote** button to your Shopify store with a theme app block - no theme code to edit. QuotWay ships two storefront blocks you drop into your theme from the Shopify theme editor: one for product pages and one for the cart page. Once a block is placed and your targeting rules match a product, buyers see a **Request a quote** button alongside (or instead of) **Add to cart**.

## What you'll achieve

By the end of this article, the **Request a quote** button appears on the product pages and cart of your live theme, for every product that matches your targeting rules.

## Before you start

- QuotWay is installed and its app embed is turned on. If you're not sure, see [App embed and activation](./app-embed-and-activation.md).
- At least one active targeting rule exists, so the button knows which products to show on. See [Targeting rules](../targeting/targeting-rules.md).
- You're using an Online Store 2.0 theme (Dawn, Horizon, and most modern themes qualify). The blocks add via the theme editor and never touch theme code.

## What the two blocks do

QuotWay's storefront blocks are theme app blocks. You place them in the Shopify theme editor - there's no Liquid to paste and no migration.

- **QuotWay Quote Button** - goes on product pages, beside or instead of **Add to cart**.
- **QuotWay Cart Quote Button** - goes on the cart page so buyers can request a quote for their whole cart.

## Add the button to product pages

1. From your QuotWay admin, open **Activation status → Open theme editor**, or go to **Shopify admin → Online Store → Themes → Customize**.
2. In the top-left page picker, choose **Default product**.
3. Under the main product section, select **Add block**.
4. Find **Apps → QuotWay Quote Button** and add it.
5. Drag the block to where you want it. The editor lets you place it above, below, or beside **Add to cart**.
6. Select **Save**.

The button now appears on every product whose targeting rules match. Retail products with no matching rule keep their normal **Add to cart** behavior.

## Add the button to the cart page

1. In the same theme editor, choose **Cart** from the page picker.
2. Under the cart section, select **Add block**, then add **Apps → QuotWay Cart Quote Button**.
3. Place it above the **Checkout** button so buyers see both - **Request a quote** alongside **Checkout**.
4. Select **Save**.

A buyer can now turn a full cart into a single quote request.

## How the button matches your store

- **Label** - the default is **Request a quote**, editable per language in Settings → Text.
  The quote drawer's own labels - including the **← Continue shopping** button on its first step, which closes the drawer and keeps everything the buyer has added - are edited and translated there too.
- **Style** - the button uses your theme's button styling by default. To set a specific color, change it in the block's settings.
- **Width** - full-width on mobile, inline on desktop.
- **Who sees it** - the button shows only on products that match an active targeting rule. One product can be quote-eligible while the rest of your store checks out as normal. See [Targeting rules](../targeting/targeting-rules.md).

## Custom themes

If your product section doesn't show **Add block**, the theme is likely using a legacy Liquid section (pre-Online Store 2.0). App blocks only render into 2.0 (JSON) templates. To use QuotWay's blocks, switch to an Online Store 2.0 theme or update your product template to a JSON template.

If you have a custom-built theme with a JSON product template, place the block inside any section whose `{% schema %}` declares app-block support (`"blocks": [{ "type": "@app" }]`). The QuotWay block renders into any app-block-compatible section.

## Headless storefronts

If you run a headless storefront (for example, Hydrogen), the theme app block won't render - theme app blocks only exist inside a Shopify theme.

To take quote requests on a headless storefront, send them from your storefront's backend to the QuotWay API with [`POST /v1/quotes`](/docs/api/create-quotes). A request made that way passes through the same targeting rules, quote form fields and automation rules as one from the button, and your team prices it as usual. Available on the Enterprise plan - including during the 14-day free trial. Keep the API key on your server, never in browser code.

On other plans, the supported way to offer quoting is to keep a Shopify Online Store 2.0 theme on the storefront surfaces where you want the button, even if the rest of your stack is headless.

## Common gotchas

- **The button doesn't appear.** Check these in order: (1) the app embed is on - the Activation status panel shows a green check; (2) the product matches an active targeting rule - see [Targeting rules](../targeting/targeting-rules.md); (3) the block is placed in the theme editor and saved.
- **The button shows, but the drawer never opens.** Check the browser console for a script-load error. If your theme restricts third-party scripts via a content security policy, allow QuotWay's storefront script path.
- **The button overlaps Add to cart on mobile.** Reorder the blocks in the theme editor - drag the QuotWay block below **Add to cart**.
- **The label is in the wrong language.** Edit the button label per language in Settings → Text.

> **A note on hiding prices.** QuotWay can hide prices on your storefront and show the **Request a quote** button instead, on Starter and up. On Starter that's a visual hide (it controls what buyers see); on Professional and up, search-engine-safe hiding also keeps the price out of the page source and structured data for signed-out visitors. See [Hide your price from search engines](./hide-price-from-search-engines.md).

## Related articles

- [App embed and activation](./app-embed-and-activation.md) - turn on the embed and read the activation-status panel.
- [Targeting rules](../targeting/targeting-rules.md) - choose which products and buyers see the quote button.
- [Configure the quote form](../quote-form/configure-the-quote-form.md) - set up what buyers fill in after they request a quote.
