> For the complete documentation index, see [llms.txt](https://docs.bluepro.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.bluepro.ai/estimates-and-price-book/building-and-sending-estimates-that-get-approved.md).

# Building & Sending Estimates That Get Approved

An estimate is how you show a customer their options and get a yes before you start work. This guide covers building one with your price book's options and add-ons, the handful of settings worth knowing, sending it, and the three different ways a customer (or your technician, on their behalf) can approve it.

> 🎥 **VIDEO —** Hero (90s): build an estimate with a tiered option and an add-on, send it, and watch a customer approve it online. Top of page.

#### Video How to: Building and Sending Estimates.

{% file src="/files/MWVUJXrSDp1BcG8yMA5M" %}

### Starting an Estimate

Estimates are usually built from a **job**, so the customer and job are already filled in. Add items the same way you would on an invoice — search or browse your price book. If an item you add is part of an **Option Group**, BluePro shows a "linked" badge (e.g. "3 linked") so you know there's a tier choice to make; **Add-ons** show as a badge count you can toggle open right in the builder.

> 📸 **IMAGE —** Adding an item to an estimate that shows a "3 linked" option-group badge.

<figure><img src="/files/UPzldzp1QVTk7P3cnEQL" alt=""><figcaption></figcaption></figure>

### Estimate Settings, Quickly

Page: <https://gobluepro.app/estimates/settings>

Before your first estimate goes out, a quick pass through **Estimates → Settings** is worth it — there's one shared settings page (not per-template):

* **Default Valid Days** — how many days an estimate stays open before it's treated as expired (defaults to 30)
* **Terms and Conditions** — text or a link to your terms, shown on every estimate
* **Estimate Display** — control what information is shown on the customer-facing estimate header such as address, phone, email, website toggles
* **Estimate display cont;** Show Valid Until date and Show Extended Totals (line totals for quantities > 1)
* **Material Display Mode** — the starting point for new estimates (Bundled/Listed/Itemized — same concept as invoices, see *Setting Up Your Price Book*)
* **Templates: default email/SMS templates** — for the initial send and for the "accepted" confirmation, with merge fields
* **Financing (Wisetack)** — turn on/off the financing panel customers see (see below)

> 📸 **IMAGE —** The Estimate Settings page.

<figure><img src="/files/nEJ8uPElckLtm7NrEKGw" alt=""><figcaption></figcaption></figure>

> 💡 **Tip — Set your default valid-for period once.** 30 days is the default; shorten it if you want more urgency, or lengthen it for big-ticket jobs customers need time to think over.

### Customer Notes vs. Internal Notes

Same pattern as invoices: **Customer Notes** show on the estimate the customer sees; **Internal Notes** stay with your team only. Double-check which field you're typing in before you send.

> ⚠️ **Note — Common mix-up.** Customer notes are public; internal notes never leave your team.

### Sending It

Tap **Send Estimate** to open the send dialog:

* **Customer View** — choose **Interactive** (the customer can pick option-group tiers and toggle add-ons themselves) or **Document** (a traditional, static PDF-style view)
* **Send Method** — **Email** and/or **Text Message** (both checked by default if the contact has that info on file)
* **Edit Messages** — customize the email subject/body or SMS text with merge fields before sending

> 📸 **IMAGE —** The Send Estimate dialog with Interactive/Document toggle and Email/Text checkboxes.

<figure><img src="/files/yBiiZkkmamvWCjvW3Ye4" alt=""><figcaption></figcaption></figure>

> 💡 **Tip — Use Interactive whenever you're offering choices.** If the estimate has option groups or add-ons, Interactive lets the customer actually shop them online instead of calling you to ask "can I get the better one?"

### What the Customer Sees and Can Do

Opening the link shows your branded estimate: company info, customer and job details, estimate number, valid-until date, and a status badge. In **Interactive** view they can:

* Pick one tier per **Option Group** (their choice updates the total live)
* Check or uncheck **Add-ons**
* Review the price breakdown — services, add-ons, discount, tax, total
* See any attached photos/documents
* See a **financing** panel, if you've enabled it

> 📸 **IMAGE —** The public estimate view in Interactive mode, mid-selection.

<figure><img src="/files/LY5CVbZIStjNlAdUAfvB" alt=""><figcaption></figcaption></figure>

### The Three Approval Paths

1. **Customer approves online** — from the link, the customer taps **Approve Estimate** and signs by **drawing** their signature or **typing** their name.
2. **Approve Verbally** *(technician, mobile only)* — while on-site or on a call, a technician records that the customer agreed, with an optional note. No customer signature is captured — this is the technician vouching for a verbal yes.
3. **Approve in Person** *(technician, mobile only)* — the technician hands over their phone (or shows the screen) and captures the customer's signature directly in the mobile app on the spot.

The estimate's approval badge shows which path was used: **Online**, **Verbal**, or **In Person**.

> 📸 **IMAGE —** Mobile "Approve Verbally" and "Approve in Person" screens, side by side with the online signature pad.

> 💡 **Tip — Desktop web only supports the online link.** If you need to record a verbal or in-person approval yourself, that's a technician (mobile app) action — office staff on desktop can send the link but the customer signs it themselves.

### Expiration

Once the **Valid Until** date passes, BluePro shows the estimate as **Expired** in the UI — but this is calculated on the fly from the date, not a status that gets permanently set in the system. That means an "expired" estimate isn't dead: open it and use **Resend Estimate** to update the details (and typically extend the valid-until date) and send it again.

> 💡 **Tip — An expired estimate is easy to revive.** Don't recreate it from scratch — resend the existing one.

### Converting to an Invoice

Once an estimate is **Accepted**, open it and click **Convert to Invoice** (in the estimate's detail menu). This takes you straight to a new invoice pre-filled with everything from the estimate — the selected option tier, chosen add-ons, discounts, tax, and notes — ready to review and send or collect payment on the spot.

> 🎞️ **CLIP —** An accepted estimate → Convert to Invoice → the pre-filled invoice.

> 💡 **Tip — Accepting moves the pipeline forward.** Getting an estimate accepted (any of the three approval paths) automatically moves the record from your lead pipeline into your job pipeline.

### Financing

If you've turned on financing in Estimate Settings, customers see a financing panel (powered by Wisetack) right on the public estimate, letting them explore monthly-payment options before deciding. It's entirely optional for the customer to use — it doesn't change how the estimate itself is approved or converted.

### FAQ

* **Can a customer choose their own tier and add-ons?** Yes, in **Interactive** view — that's the whole point of option groups and add-ons.
* **What's the difference between Approve Verbally and Approve in Person?** Verbally records the tech's note that the customer agreed (no signature); In Person captures the customer's actual signature on the tech's phone.
* **Can office staff record an in-person approval from a desktop?** No — recording verbal/in-person approval is a mobile, technician-facing action. Desktop can only send the link for the customer's own online signature.
* **What happens when an estimate expires?** It's shown as Expired based on the date — nothing is deleted. Use Resend Estimate to update and send it again.
* **Does converting to an invoice keep the selected option and add-ons?** Yes — everything the customer chose carries over automatically.
* **Is financing required?** No — it's an optional panel you can enable; customers can ignore it and pay normally after the job.


---

# 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://docs.bluepro.ai/estimates-and-price-book/building-and-sending-estimates-that-get-approved.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.
