> ## Documentation Index
> Fetch the complete documentation index at: https://docs.hiveku.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Create and Send an Estimate

> Build a pre-sales quote, send for approval, and convert to an invoice when accepted

Estimates are how you quote work before billing for it. The prospect reviews the scope and price on a public approval link, accepts (or declines, or asks for revisions), and on acceptance you convert to an invoice with one click. This guide walks through the full flow.

<Info>
  Prerequisites: at least one product in your [catalog](/commerce/products) and a CRM contact for the prospect. If you haven't set up Commerce yet, start with [Send Your First Invoice](/how-tos/send-first-invoice).
</Info>

## When to use an estimate

* **Prospect hasn't committed yet.** They want to see numbers before saying yes.
* **You want explicit approval.** A clicked-Accept estimate is a much cleaner record than a verbal "sounds good."
* **Scope is custom or negotiable.** The estimate's line-item descriptions are where you sell the work.
* **You want to track conversion rate.** Estimates accepted vs. declined is a useful sales metric.

If the work is already verbally agreed and you just need to bill, skip the estimate and create an invoice directly.

## Build the estimate

<Steps>
  <Step title="Go to Estimates">
    Navigate to `/dashboard/commerce/estimates/`.
  </Step>

  <Step title="Click New Estimate">
    A blank draft opens.
  </Step>

  <Step title="Pick the prospect">
    Search by name or company. If they're not in CRM yet, click **+ New Contact** — at minimum a name and email.
  </Step>

  <Step title="Set the issue and expiry dates">
    Issue: today (default). Expiry: 14 or 30 days from today (a soft deadline that creates urgency without feeling pushy).
  </Step>

  <Step title="Add line items">
    For each scope item, add a line:

    * Pick a product from your catalog (or click **Ad-hoc** for a one-off)
    * Edit the description to be specific to this engagement
    * Set quantity and unit price
    * Add a per-line discount if you're offering one
  </Step>

  <Step title="Set tax">
    Per-jurisdiction rates apply automatically based on the prospect's billing address. Tax-exempt prospects skip tax.
  </Step>

  <Step title="Add an estimate-level discount (optional)">
    A whole-quote discount, useful for bundling deals.
  </Step>

  <Step title="Add terms">
    Free-text field for payment terms, project timeline, or conditions tied to acceptance. Examples:

    * "Pricing valid for 30 days from issue date"
    * "Net 30 payment terms upon acceptance"
    * "Project start within 14 days of acceptance"
  </Step>
</Steps>

## Write line-item descriptions for the buyer

This is the difference between estimates that get accepted and estimates that get pushed back on:

<Tabs>
  <Tab title="Bad (internal language)">
    ```
    Strategy Consulting — 1 unit — $5,000
    ```

    Reads like a SKU lookup. Prospect doesn't know what they're buying.
  </Tab>

  <Tab title="Good (buyer-focused)">
    ```
    Strategy Consulting — Kickoff & Roadmap
    Two-day strategy workshop covering customer
    insight, competitive landscape, and 12-month
    roadmap. Includes pre-work survey, in-person 
    sessions, and final summary deck. Delivered
    within 14 days of project start.
    1 engagement — $5,000
    ```

    Specific, scoped, and sells the work. The prospect knows what they're getting.
  </Tab>
</Tabs>

<Tip>
  Use the description field generously. An accepted estimate is also your statement of work — clear scope here prevents post-acceptance scope arguments.
</Tip>

## Preview before sending

Click the PDF preview button. Read it as if you were the prospect:

* Are the numbers correct?
* Does the scope read clearly?
* Are the terms what you actually want to commit to?

Catch typos and pricing mistakes here. After sending, edits get awkward — see the section on revisions below.

## Send for approval

<Steps>
  <Step title="Click Send">
    Hiveku generates a PDF, attaches it to an email, and sends to the prospect's email with a public approval link.
  </Step>

  <Step title="Confirm the recipient">
    Double-check the email — typos here mean the estimate goes nowhere.
  </Step>

  <Step title="Watch the status update">
    The estimate transitions from `draft` to `sent`. The activity log captures the send.
  </Step>
</Steps>

## What the prospect sees

The prospect receives an email with a link to a public approval page. The page shows:

* Your logo and brand
* The full estimate (line items, totals, tax, terms)
* An optional comment field
* Two buttons: **Accept** and **Decline**

Accept transitions the estimate to `accepted`. Decline transitions it to `declined`. Either way, you get notified.

## Handling revisions

If the prospect asks for changes ("can we drop the workshop to 1 day?"), don't edit the live estimate — their view would change underneath them.

<Steps>
  <Step title="Click Create Revision">
    From the estimate's actions menu. The current revision (rev 1) locks; a new draft (rev 2) opens with the same line items.
  </Step>

  <Step title="Make the changes">
    Edit lines, adjust pricing, update scope language.
  </Step>

  <Step title="Send rev 2">
    The prospect gets a new email with a new approval link. Rev 1's link no longer accepts new actions.
  </Step>

  <Step title="Track the history">
    The estimate's activity log shows every revision and any prospect comments.
  </Step>
</Steps>

## Convert to an invoice

Once the estimate is `accepted`:

<Steps>
  <Step title="Click Convert to Invoice">
    From the accepted estimate's actions menu.
  </Step>

  <Step title="Review the draft invoice">
    Line items, tax, discounts, and terms copy over. The estimate links to the invoice for reference.
  </Step>

  <Step title="Set due date and payment terms">
    The invoice starts as a draft. Set Net 15/30/60 or custom; adjust the due date.
  </Step>

  <Step title="Send the invoice">
    Standard [invoice flow](/commerce/invoices) from here — client pays through portal, status flips to paid.
  </Step>
</Steps>

<Warning>
  Conversion creates one invoice per estimate. For multi-phase projects with milestone billing, either edit the converted invoice into a deposit-only line and create follow-on invoices manually, or split the work into multiple estimates upfront (one per phase).
</Warning>

## Verify it worked

After conversion, both records should show:

* The estimate: status `accepted`, with a link to the converted invoice
* The invoice: status `draft`, with a link back to the source estimate

The prospect's CRM record now has both — useful for reporting and historical reference.

## Troubleshooting

<AccordionGroup>
  <Accordion title="Public approval link shows 'expired'">
    The estimate's expiry date passed before the prospect clicked. Edit the estimate, set a fresh expiry, and re-send. Or clone the estimate as a fresh send if too much time has passed.
  </Accordion>

  <Accordion title="Prospect emailed back instead of clicking Accept">
    Mark the estimate accepted manually from the actions menu. Note: this skips the audit trail of a clicked Accept, so for important deals consider asking them to use the link.
  </Accordion>

  <Accordion title="Convert to Invoice button doesn't appear">
    The button only shows for status `accepted`. If the estimate is in `sent`, `draft`, or `declined`, you can't convert. Mark accepted manually if needed, then convert.
  </Accordion>

  <Accordion title="Converted invoice has wrong tax or amount">
    The converter copies the estimate's current state, not its state at acceptance. If you edited the estimate after acceptance, the invoice reflects those edits. For audit-clean conversions, don't edit accepted estimates.
  </Accordion>

  <Accordion title="Need to revoke a sent estimate before they respond">
    Use **Void** from the actions menu. The public link returns "no longer available" and the estimate is removed from active reporting. You can clone it as a fresh draft if you want to send a corrected version.
  </Accordion>
</AccordionGroup>

## Best practices

* **Set an expiry date.** Open-ended quotes haunt your pipeline. 14–30 days is standard.
* **Track your accept rate.** If less than 50% accept, your pricing or scoping needs work. If more than 90%, you might be under-pricing.
* **Pair big estimates with a contract.** For deals over a certain size, the estimate covers commercials and a contract covers legal — see [Send a Contract for E-Signature](/how-tos/send-contract-for-signing).
* **Convert promptly.** The faster you bill after acceptance, the faster you get paid.

## What's next?

<CardGroup cols={2}>
  <Card title="Send a Contract for E-Signature" icon="signature" href="/how-tos/send-contract-for-signing">
    Pair the estimate with legal terms.
  </Card>

  <Card title="Send Your First Invoice" icon="file-invoice-dollar" href="/how-tos/send-first-invoice">
    The next step after acceptance.
  </Card>

  <Card title="Estimates Reference" icon="book" href="/commerce/estimates">
    Full reference for the estimate lifecycle.
  </Card>

  <Card title="Products Catalog" icon="box" href="/commerce/products">
    The line items that power estimates.
  </Card>
</CardGroup>
