> For the complete documentation index, see [llms.txt](https://orbit-b2b.gitbook.io/orbit-b2b-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://orbit-b2b.gitbook.io/orbit-b2b-docs/quotes-rfq/enable.md).

# Enable Quotes for your store

Quotes is off by default until you configure it. Follow these steps to turn it on, set who can request a quote, and decide how long offers stay valid.

## 1. Open Quote settings

In your Shopify admin go to **Apps → Orbit B2B → Quotes**, then click **Quote settings** in the top-right.

## 2. Eligibility — who sees the Request a Quote button

In the Eligibility section pick one of three modes:

| Mode                            | Who can request                                                          | When to choose                                                         |
| ------------------------------- | ------------------------------------------------------------------------ | ---------------------------------------------------------------------- |
| **Approved B2B only** (default) | Customers with a wholesale tag (`b2b`, `wholesale`, or any `tier-*` tag) | Recommended for most stores — keeps retail buyers out                  |
| **Any logged-in customer**      | Any customer who is signed in                                            | Less strict, useful when you don't tag B2B customers yet               |
| **Public**                      | Anyone, even guests                                                      | High volume of inbound RFQs; combine with the rate limit + auto-reject |

The check runs both on the storefront (to hide the button) and on the backend at submit time, so visitors cannot bypass it by editing the page.

## 3. Default validity

Pick how long your offers stay valid by default — 3, 7, 14, 30 days, or Custom (you set it per quote). You can always override the value when replying to a specific quote.

When a quote passes its validity date the status flips to **Expired** and the buyer receives the **Quote expired** email.

## 4. Form fields shown to buyers

Toggle which optional fields appear on the modal:

* **Target price per line** — buyer suggests their preferred price (default on)
* **Needed-by date** — buyer's delivery deadline
* **File attachment** — PDF / JPG / PNG up to 2 MB (default on)
* **PO number** — corporate purchase order reference
* **Tax / VAT ID** — required for invoiced regions

The buyer message field is always shown.

## 5. Notifications

Three toggles control which emails fire automatically:

* **Email admin on new quote** — you get an email when a buyer submits a request
* **Email customer on reply** — buyer gets an email when you reply with prices
* **Email customer 24h before expiry** — reminder so buyers don't miss the deadline

Templates are editable under **Email Templates → Quote**.

## 6. Auto-reject rules

Filter low-quality requests automatically:

* **Floor percentage below catalog** — reject if the buyer's target price is more than X% below the catalog price. Example: catalog $25, floor 30% → any request below $17.50 is rejected.
* **Minimum total quantity** — reject if the total quantity across all items is below the threshold. Use this to avoid retail-size enquiries.
* **Rate limit per IP** — only active when eligibility is Public. Caps how many quotes a single IP can submit per hour.

Rejected buyers see your custom **Reject message** (also in Quote settings) instead of an error.

## 7. Save and add the storefront block

Click **Save**, then:

1. Open your theme in **Online Store → Themes → Customize**
2. Pick the product page template
3. Drop the **Request a Quote** app block where you want the button (usually under the Buy buttons)
4. Save the theme

Buyers visiting that product page now see the button (only if their account matches the eligibility rule).

## Next steps

* [How a buyer requests a quote](/orbit-b2b-docs/quotes-rfq/request-flow.md)
* [How you reply with prices](/orbit-b2b-docs/quotes-rfq/reply-flow.md)
* [Translate the storefront strings](/orbit-b2b-docs/quotes-rfq/storefront-text.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://orbit-b2b.gitbook.io/orbit-b2b-docs/quotes-rfq/enable.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
