Automated Quoting: How to Build a Quote Workflow That Prices Correctly and Still Lets Sales Negotiate
What automated quoting is, which parts of the quote-to-cash process to automate first, an example workflow from CRM deal to signed quote, approval rules for discounts, and the data problems that break quote automation.
Automated quoting is software generating a price quote from structured data instead of a person building it by hand in a spreadsheet or document. The data is usually the products, quantities and terms on a CRM deal; the output is a quote document, sent for approval when needed, then to the customer for signature, with the result written back to the CRM and the billing system.
Most teams don’t have a quoting problem so much as a pricing-data problem that surfaces at quote time. The rep copies last month’s quote, edits three line items, misses that a product was repriced, and finance finds it at invoicing. Automating the document step without fixing where prices live just produces wrong quotes faster.
So the order matters: get the price data into one place, then automate the workflow around it.
What can be automated in quoting
| Step | Manual version | Automated version | Keep a person in the loop? |
|---|---|---|---|
| Pull customer and deal data | Rep copies company name, address, contact into a doc | Workflow reads the CRM deal and associated company and contact | No |
| Select products and prices | Rep picks from a price spreadsheet | Line items come from a product catalog with list prices and valid date ranges | Rep chooses products; prices come from catalog |
| Apply pricing rules | Rep calculates volume tiers and bundles by hand | Rules engine applies tiers, bundle prices, currency and tax | No, if the rules are written down |
| Discount approval | Rep messages a manager, waits | Discount above a threshold routes to an approver with deal context | Yes, the approver decides |
| Generate the document | Copy a template, edit fields | Template filled from deal and line-item data, saved as PDF | Rep reviews before sending |
| Send and sign | Email attachment, print-sign-scan | E-signature request sent from the workflow | No |
| Expiry and follow-up | Rep remembers (or doesn’t) | Reminder before expiry; quote marked expired automatically | Rep decides whether to re-quote |
| Write-back after signature | Rep updates deal stage, finance re-keys the order | Deal moves to closed-won, order or subscription created in billing | Finance reviews the first few runs |
The steps in the middle (rules, approvals, document) get the attention, but the first and last rows are where most of the manual re-keying and errors happen.
An example workflow
This example is illustrative: a B2B software company quoting annual subscriptions, with a CRM, an e-signature tool and a billing system. The structure carries over to services or physical products.
Trigger: a deal moves to the “Quote” stage in the CRM, or the rep clicks a “Generate quote” button that fires a webhook.
- Fetch the deal with its line items, the associated company (legal name, billing address, VAT or tax ID) and the primary contact.
- Validate before pricing. Stop with a clear message to the rep if the billing address or tax ID is missing, a line item has no product code, or the currency doesn’t match the company’s billing country. A quote that fails here costs seconds; one that fails at invoicing costs a credit note.
- Price each line from the catalog. Look up the list price valid on the quote date, apply volume tiers, and calculate tax for the billing country.
- Calculate the discount. Compare the rep’s proposed price to the list price. Store both the discount percentage and the discount amount on the quote.
- Route approvals. For example: up to a set percentage, no approval; above it, the sales manager; above a higher threshold or for non-standard payment terms, finance as well. Send the approver a message with the deal size, discount, margin if you have it, and approve/reject buttons. Escalate if there’s no response within a working day.
- Generate the document from a template: company details, line items, totals, terms, expiry date and a quote number that never repeats.
- Send for signature through the e-signature tool, with the contact from step 1 as signer.
- Listen for the signature event by webhook. On signature: mark the deal closed-won, attach the signed PDF, and create the subscription or order in billing with the same line items and prices.
- Handle expiry. A scheduled check finds unsigned quotes near expiry, reminds the rep, and marks them expired after the date.
Steps 2, 5 and 8 are the ones teams skip at first, and they’re where the value is.
Approval rules worth writing down
Discount approval is the part of quoting most worth automating, because it’s where waiting time and inconsistency pile up. Before building anything, agree on:
- Thresholds by discount and deal size. A small percentage off a large deal can be worth more scrutiny than a large percentage off a small one.
- Non-price exceptions: payment terms longer than standard, custom contract clauses, multi-year price locks, free months. These often matter more to finance than the discount.
- Who approves when the approver is away, and what happens after a timeout.
- Whether an approval survives an edit. If the rep changes quantities after approval, the approval should be invalidated and re-requested automatically.
Keep the rules in a table the workflow reads (a config sheet or a database table), not hard-coded in branches. Sales leadership will change thresholds every planning cycle, and nobody should need to edit the workflow to do it.
Data problems that break automated quoting
- More than one price list. A spreadsheet, the CRM product library and the billing system each holding prices. Pick one source of truth and sync the others from it.
- Prices without validity dates. Without them you can’t re-generate an old quote correctly or schedule a price change.
- Free-text line items. If reps can type product names, the billing write-back can’t match them. Force a product code.
- Duplicate runs. CRM webhooks are delivered at least once, so a “deal moved to Quote” event can arrive twice and create two quotes with two numbers. Make the workflow idempotent: check whether a quote already exists for the deal and version before creating one. Our post on idempotency in workflows covers the patterns.
- Billing write-back without reconciliation. If the order created in billing doesn’t match the signed quote, nobody notices until the invoice is disputed. Compare totals after the write-back and alert on any mismatch.
When a CPQ tool is the better choice
Dedicated CPQ (configure, price, quote) software exists for complex cases: products with many configuration options and dependencies, guided selling, large catalogs, and pricing that depends on other selections. If your reps regularly ask “can this option go with that one?”, a CPQ tool’s configuration engine is worth it.
If your catalog is small, your pricing rules fit in a table, and the pain is mostly re-keying and approvals, a workflow around your existing CRM, document template and e-signature tool is usually enough, and easier to change. Many teams start there and move to CPQ only when configuration complexity demands it.
What to measure
Track these before and after automating, using your own data:
- Time from deal reaching the quote stage to quote sent
- Time quotes spend waiting for approval
- Share of quotes needing manual correction before sending
- Invoices corrected or credited because of quote errors
- Discount levels by rep and segment, now that every discount is recorded consistently
The last one is a side benefit teams often don’t expect. Once every discount goes through the same workflow, you finally have clean data on how much is being given away and where.
Where this fits
Quoting sits between sales and finance, so the workflow touches both. The RevOps automation playbook covers the upstream sales processes, such as routing and deal stages, and the finance ops automation stack covers what happens after the order reaches billing. In Automatite, the flow above maps to a CRM trigger, a few action and approval steps, and a webhook listener for the signature event, built in the workflow builder.
Stay in the loop
Get workflow automation playbooks, integration recipes, and product updates delivered to your inbox.
No spam. Unsubscribe anytime.