← Quoting Mastery---
title: Build a quote
status: draft
note: AI-generated first-pass transcript pending video production + SME review.
---
Open the Cavaridge Operations sandbox. The **cavalier-quoting-trio**
seed gives you three sample MSPs (a Build-tier, an Operations-tier, and
a Security-tier customer) and a partner record for deal registration.
We'll build a quote for the Operations-tier customer.
## Cadence
A quote in Cavaridge™ has four stages, and each stage is a Pulse event.
1. **Created.** You've started the draft. `deal_created` fires.
2. **Reviewed.** Your team has approved the contents and pricing.
3. **Sent.** The customer has received it. `quote_generated` fires.
4. **Signed.** The customer has signed; subscriptions activate.
These map to your day. You don't manage the lifecycle by hand; the
platform tracks it.
## Building the line items
Click "new quote" and search the catalog by name. Pick three line
items: an Operations Pro seat for the customer's primary office, a
Healthcare add-on for their two-clinician practice, and a one-time
onboarding service.
Notice what the platform shows you for each line:
- `catalog_id` — visible because it's the truth.
- `gm` — gross-margin against COGS, in percent.
- `tier` — auto-suggested based on customer profile.
If any line drops the quote below 55% blended margin, you'll see a
red bar. Don't ignore it. Don't hand-edit numbers to make it green.
Open `tenantConfig.reseller.margin_overrides` for this customer and
add a documented override.
## The taxonomy of fixes
When something looks wrong:
| Symptom | Fix |
| --------------------------------- | ------------------------------------------------------------------ |
| Price seems too high vs my notes | Catalog is canon — your notes might be from before the latest sync |
| Customer has special pricing | margin_overrides on this customer's tenantConfig |
| One-off line not in catalog | Add a catalog entry for the SKU; it should never be a one-off |
| Customer wants a tier I don't see | Tier is per-customer in tenantConfig; not a catalog setting |
## Sending
When the quote passes review, click send. Two things happen:
1. The quote PDF is rendered with the **customer's** brand chrome
(their logo, their tone, your trademark in the footer).
2. A signed-link email goes to the customer with the platform's
no-PHI gate enforced (the email never contains PHI even if a line
item references a clinical workflow).
Watch your Pulse feed in the next 15 minutes. You'll see
`quote_generated` fire. If you don't, file a `pulse_missing` ticket —
that's a real bug worth flagging.
## What customers see
Customers click the link, see a clean quote rendered from the catalog,
sign with DocuSign, and trigger the Stripe handoff in module 5. They
never see your catalog ids or override notes. That's by design.
## Hands-on
In the sandbox:
1. Build a quote for the Operations-tier customer with the three line
items above.
2. Try to set the seat price 30% lower than catalog. Watch the gate
fire.
3. Apply a documented margin override and re-send. Watch the gate pass.
That's the discipline. Same gate, every quote, every time.
Module 2 of 5
Build a quote
From client conversation to signed quote — the right cadence, the right approvals.
Video — pending production
Read the transcript below. Once recording is complete, the video will replace this notice.
Hands-on sandbox
cavalier · seed:
cavalier-quoting-trio · 60 min