Svennis AI
10 min read

Building a quote generator with Claude that uses your CRM prices

Claude can draft the wording of a quote from your CRM deal. This guide shows how to keep every price, discount and approval rule in Zoho, so no figure the customer sees comes from the model.

Abstract composition of text blocks flowing into a fixed grid of aligned cells, with a single gate at the end

What a quote generator with Claude actually does

Building a quote generator with Claude means giving the model enough access to your CRM to write a quote, and no authority over the numbers on it. Claude reads the deal and drafts the covering letter, the scope of work and the line item descriptions. Your CRM supplies every price, discount and total.

That split matters because a quote is a commitment. If a customer accepts a figure, you are expected to honour it. A language model writes fluent text, but it cannot know your current prices or the discount your sales manager agreed last week unless it reads them from a system of record.

This guide explains the parts, defines the terms, walks through an example for a small trade business and ends with a checklist you can use before you switch anything on. It assumes your products and prices already live in Zoho CRM or Zoho Books, and that someone in your business owns those price lists.

If you have not yet connected Claude to any of your own systems, read our guide on putting Claude inside the tools you already use first. It covers the groundwork this post builds on, such as who gets access and how you keep the model working inside your existing processes rather than beside them.

The terms you need before you start

A few words come up throughout this guide. Here is what each one means in this context.

  • Deal: the CRM record for a sale in progress. It holds the customer, the stage and the products you expect to sell.
  • Line item: one row on a quote. It has a product, a description, a quantity, a unit price and a tax treatment.
  • Price list: the approved prices for your products, held in Zoho and maintained by whoever owns pricing.
  • Model Context Protocol (MCP): in the words of its own site, "an open-source standard for connecting AI applications to external systems". The site compares it to a USB-C port, a standard plug that lets Claude reach data sources, tools and workflows.
  • MCP server: a small service that exposes data and tools to an AI application through MCP. In this build it is the thing that lets Claude read a deal and its products from Zoho.
  • Connector: the everyday name for that link between Claude and another system.
  • Skill: a reusable set of instructions for one job, here "draft a quote from this deal". Anthropic lists skills among the automations Claude Code can use, alongside hooks, MCP servers and subagents.
  • Approver: the named person who checks the draft and decides whether it goes to the customer.

Keep these definitions in mind. Most of the design decisions below come down to which of these parts is allowed to do what.

The one rule: words from Claude, figures from Zoho

The whole design rests on one rule. Claude may write words. Zoho holds every figure. A price, a discount, a VAT amount or a total that appears on the quote must come from a field in your CRM or accounting system, never from text the model produced.

The reason is simple. A model asked to "add a 10 per cent loyalty discount" will usually do the sum correctly, but "usually" is not a standard you can apply to money. If the arithmetic happens in Zoho, it happens the same way every time, and your finance team can see the rule that produced it.

What Claude may do

  • Read the deal, the contact and the products attached to the deal.
  • Write the covering letter, the scope of work, exclusions and line item descriptions.
  • Create a quote in draft status, with products referenced by their CRM codes.

What Claude may not do

  • Type a price, discount or total into any field or into the letter.
  • Change a price list or a product record.
  • Send the quote to the customer.

Anthropic's own prompting guidance gives a reason to be strict about the last point. It notes that without guidance, Claude Opus 4.6 may take actions that are difficult to reverse or affect shared systems, such as posting to external services. A quote sent to a customer is exactly that kind of action, so the send button stays with a person.

Claude writes every word on the quote, while Zoho supplies every price, discount and total
ClaudeZoho
Covering letterDrafts it from the dealSupplies the customer and deal details
Scope of work and exclusionsDrafts it in your house styleHolds the deal stage and products
Line item descriptionsWrites them for each attached productHolds the product code and quantity
Unit pricesReads them from the dealHolds the approved price list
DiscountsReads them from the dealApplies your discount limits and routes approvals
VAT treatment and totalsReads them from the dealCalculates them from fields a person sets

The four parts of the build

A working quote generator has four parts. Each one lives in a different place and has a different owner, which is what keeps it maintainable once the novelty wears off.

PartWhere it livesWhat it holdsWho changes it
Rules and templatesA Claude workspace shared by the sales teamTone of voice, standard terms, the structure of a quote, a few approved past quotes as examplesSales manager
Product and price dataZoho CRM or Zoho Books, read through a connectorProducts, codes, unit prices, discount limits, tax treatmentFinance or whoever owns pricing
Drafting skillClaudeStep-by-step instructions for turning a deal into a draft quoteProcess owner
ApproverA named personThe final check and the decision to sendSales lead

Notice what is missing from the first row: prices. The rules and templates describe how a quote reads and when a discount needs a second pair of eyes, but the discount limits themselves sit in Zoho. If you change a price, you change it in one place and every future draft picks it up.

The connector in the second row should be read-only for products and prices. The only thing it needs to write is a draft quote. That keeps the model's reach narrow, which matters for security and for your data protection position, both covered later in this post.

Worked example: a small electrical contractor quoting a rewire

Take a small electrical contractor that runs its sales in Zoho CRM. A homeowner, Mrs Hughes, asks for a quote to rewire a house. The office manager creates a deal called "Hughes rewire", sets the stage to "Quote requested" and attaches products from the price list: labour days, a consumer unit, cable and accessories, and a certificate on completion.

The office manager then asks Claude: "Draft the quote for the Hughes rewire deal." Here is what happens next.

  1. Claude fetches the record. Through the MCP server it reads the deal, the contact details and the attached products, each with its code, quantity and the unit price held in Zoho.
  2. Claude drafts the words. Following the skill, it writes a short covering letter, a plain scope of work ("replace all circuits, fit a new consumer unit, test and certify"), the exclusions the contractor always states, and a clear description for each line.
  3. Claude creates a draft quote in Zoho. It references each product by its CRM code and quantity. It leaves prices and totals to Zoho, which calculates them from the price list.
  4. Zoho applies the rules. Totals, VAT and any discount are worked out by Zoho. A discount above the limit set there goes to the owner for approval.
  5. A person approves. The office manager reads the draft against the deal, checks the scope matches what was discussed on site, and sends it.

If the customer were a VAT-registered builder rather than a homeowner, the tax treatment could differ. In this design that is a field on the account in Zoho, set by someone who knows the rules, not a judgement Claude makes from the job description.

Writing the drafting skill

The skill is where most of the quality comes from. Anthropic's prompting guidance has several points that apply directly to quote drafting.

Put reference material first

The guidance says to place long documents and inputs near the top of the prompt, above the query and instructions, and that this improves performance across all models. It applies this advice in particular to inputs of 20,000 tokens or more. For a quote, that means your standard terms and example quotes go first, and the instruction "draft the quote for this deal" comes last.

Show, do not describe

Few-shot prompting, giving the model a few well-crafted examples, steers format, tone and structure. A handful of quotes your team has already sent and been happy with will teach Claude your house style faster than a page of adjectives.

Break the job into steps

Prompt chaining splits a task into sequential calls so you can inspect intermediate outputs. A sensible chain is fetch the deal, draft the text, then check the draft for any figure that is not on a line item. Each step can be read on its own when something goes wrong.

Keep sources traceable

Claude's citations feature lets the draft point back to the passage it relied on. It works with PDFs, plain text and custom content documents, but scanned PDFs without extractable text cannot be cited. Store your terms as text, not as a scan.

Finally, keep the instructions narrow. The same guidance notes that Claude Opus 4.5 and 4.6 tend to overengineer, adding extra files or flexibility nobody asked for. A skill that does one job is easier to trust.

Checks before a quote leaves the building

The approver should not have to reread every quote from scratch. Most checks can be done by Zoho or by a final step in the chain, leaving the person to judge the things only a person can.

CheckDone byPass condition
Prices match the price listZohoEvery line references a CRM product and uses its stored price
Discount within limitYour approval rule in ZohoAnything above the limit is routed to a manager before sending
Tax treatment correctZoho account fieldStandard VAT or reverse charge set by a person, not inferred
No stray figures in the textFinal check stepThe letter and scope contain no amount that is not on a line item
Scope matches the conversationApproverWhat is described is what was agreed on site or on the call
Customer details correctApproverName, address and contact match the CRM record

The fourth row is the one teams skip, and it is the one that causes trouble. At Svennis we add a separate check step that searches the drafted text for any amount and rejects the draft if one appears outside the line items; when we see these builds go wrong at clients, it is almost always because someone pasted a price into the prompt instead of letting Zoho supply it.

Run every draft past a person for the first weeks, even the simple ones. You will learn which checks matter for your business before you decide which ones to relax.

What this means for a UK business

For a UK trade business, the clearest reason to keep tax logic in Zoho is the VAT domestic reverse charge. HMRC describes it as an anti-fraud measure, and it has applied to construction services since 1 March 2021. Under it, the customer rather than the supplier accounts to HMRC for VAT on the specified services.

The detail matters for your paperwork. According to VAT Notice 735, invoices for reverse charge supplies must include the reference "reverse charge" when the customer is liable for the VAT. The supplier includes the VAT-exclusive value in box 6 of the VAT return, with no output tax in box 1. A quote is not an invoice, but if the quote shows VAT the customer will not in the end pay you, you have a dispute waiting to happen. Set the treatment on the account in Zoho, let the quote and the invoice follow it, and keep Claude out of the decision.

Security is the second point. In a report for the Department for Science, Innovation and Technology, cyber security experts said the push to implement AI has been driven by competition to increase revenue, often with little regard for cyber security implications. A read-only connector and a draft-only write permission are the practical answer.

Customer names and addresses are personal data, so check your data protection position too. Our GDPR checklist for European firms using Claude sets out what to confirm before you connect Claude to customer records.

Under the reverse charge the customer accounts for the VAT, and the invoice must say reverse charge
Standard VATDomestic reverse charge
Who accounts to HMRC for the VATThe supplierThe customer
Invoice wordingA normal VAT invoiceMust include the reference "reverse charge"
Supplier's VAT returnOutput tax declared as usualVAT exclusive value in box 6, no output tax in box 1
Where the setting livesZoho account field, set by a personZoho account field, set by a person

What it costs to run

There are two ways to pay for Claude in a build like this, and the choice depends on who triggers the drafts.

If your sales team asks Claude for drafts during the day, a subscription plan is the simpler route. Anthropic's pricing page lists the Team plan for teams of 2 to 150, with standard seats at $20 per seat per month billed annually or $25 billed monthly. A single user on Pro pays $17 per month on an annual subscription or $20 billed monthly. Every plan has usage limits that reset on a rolling five-hour session window, and paid plans add weekly limits on top.

If quotes are drafted automatically, for example when a deal reaches a certain stage, you would call the API instead and pay per token. The pricing page lists these rates in US dollars per million tokens:

ModelInputOutput
Haiku 4.5$1$5
Sonnet 5$2$10
Opus 5.5$4$20

Batch processing saves 50% on API pricing, which suits quotes that can be drafted overnight and approved in the morning. Enabling citations adds slightly to input tokens, so budget for that if you use them. For most small businesses, the cost of the model will be small next to the time the approver spends reading drafts, so design the checks to keep that time short.

Next steps

You can prepare most of this without writing any code. Work through these steps in order.

  1. Clean your price list in Zoho. Every product you quote should have a code, a current price and a tax treatment. If prices live in a spreadsheet, move them first.
  2. Write down your discount rules. Decide who may approve what, then set the limits in Zoho rather than in a document.
  3. Collect a handful of good quotes. Pick recent quotes your team was proud of. They become the examples in the skill.
  4. Set up the connector with narrow permissions. Read-only for products and prices, create-draft for quotes, nothing else.
  5. Pilot with one approver. Have one person review every draft for a few weeks and log what they change.
  6. Check data protection. Confirm your position before customer records flow through the connector.

If your team already works in Claude day to day, our setup guide for Claude Cowork shows how to give colleagues a shared workspace for the rules and templates described above. For an example of Claude working in front of a Zoho system in production, with a person still in control of the outcome, read how a Teams service desk runs on Claude. The same principle applies to quotes: Claude handles the words, your systems handle the facts.

Sources

  1. 1. What is the Model Context Protocol (MCP)?
  2. 2. Plugins, Claude Marketplace
  3. 3. Plans and Pricing, Claude by Anthropic
  4. 4. Domestic reverse charge procedure (VAT Notice 735), GOV.UK
  5. 5. Securing converged technologies: insights from subject matter experts, GOV.UK
  6. 6. Citations, Claude Platform Docs
  7. 7. Prompting best practices, Claude Platform Docs

Related articles