Running an HVAC business with Odoo
How do I create a reusable quotation template in Odoo?

Create a reusable Odoo quotation template, apply its service lines and terms to a new draft, and check saved-quotation behavior after a template revision.
A quotation template prepares repeatable content while the office reviews each customer's job. Alex saves a service-call and two-hour labor pattern, creates a new draft from it, and checks that a later terms revision does not silently change the saved quotation.
Alex Rivera and Demo Air HVAC are fictional training examples. Prices, dates, quantities and business situations in this guide are illustrative.
Before you begin
Tested in stock Odoo 20.0-20260926 Community as the demo owner administrator, with official modules and standard configuration. Complete the service quotation and reuse its H11 products, Demo Property H08 customer and Demo Net 30 H06 terms. Keep S00001 intact; this example creates the separate S00002 draft. Prices and the 6% demo tax are fictional. Online acceptance, invoices and sending remain separate workflows.
Step-by-step workflow
Stock Odoo 20 Community, owner role. Save one reusable service-call and two-hour labor pattern, create a separate draft from the New menu, then check that a later generic-terms revision leaves the saved draft unchanged. Fictional prices and six-percent demo tax; sharing, customer acceptance, messaging and payments remain separate.
Step 1. Create the native template
Open Sales → Configuration → Templates. The menu is already available in this tested runtime; no additional template setting was needed. Search for Demo Service Visit H24 and choose New only if absent. Enter that Template name. The tested form shows Type Quotation, Share checked and Sales Team empty; review sharing for your actual sales staff.









Step 2. Add the reusable service pattern
On Lines, choose Add a product, select existing Demo Service Call H11, and set Quantity 1, Unit Units. Add Demo Technician Labor H11 with Quantity 2, Unit Hours. The tested template list holds products, quantities and units; prices appear when the new quotation is prepared.











Step 3. Set useful terms and validity
On Terms & Conditions, write that scope and access require review, labor is a quoted allowance, no appointment is confirmed, and prices/taxes are training examples. On Settings, set Quotation Validity 30 days. The tested defaults also show Online Signature checked, Prepayment zero, and blank Confirmation Mail/Journal. These settings are not proof of successful acceptance or payment. Choose Save manually and reopen the template.














Step 4. Create a draft from the New menu
Return to Sales → Orders → Quotations. With a template available, New has a dropdown. Choose Demo Service Visit H24 from it. The new form contains one service call at $100 and two labor Hours at $80, copied terms and Expiration November 13. Select existing Demo Property H08 and Demo Net 30 H06; review the copied billing/service addresses and $275.60 total. Edit the copied terms below the lines to add the job-specific assessment scope and pending access confirmation.

















Step 5. Save, reopen and check a terms revision
Choose Save manually, wait for the saved quotation number and reopen S00002. Check lines, units, prices, terms and expiration. In the training test, the template's terms were then revised with an explicit future-visit reminder. Reopening S00002 retained its original copied terms and job-specific scope; the new template reminder was absent. Review existing quotations directly when their terms need changing.
















Check the result
Template 1 Demo Service Visit H24 retains the two service lines, 30-day validity and revised generic terms. S00002 remains a draft at $275.60 with one service call, two labor Hours, existing customer/address records 7/8/9 and term 11. Its copied terms and added job scope did not change after the template's later terms edit. S00001 and its opportunity link remain intact.
If your screen differs
This version creates a quotation through New → template name; do not require an old form-level Quotation Template selector. New templates changed the New button into a dropdown, so a script looking for an exact button named New no longer matched it. The test covers a terms revision, not every possible price, quantity, template-reapplication or product-price change. Shared-template access for another salesperson and online signature/payment were not tested.
Frequently asked questions
How do I create a quotation template in Odoo?
In this runtime, open Sales → Configuration → Templates, add reviewed service lines and Terms & Conditions, set validity and save. In Quotations, choose the template from the New dropdown and review the resulting draft.Do Odoo quotation templates update old quotations?
This tested terms revision did not change the saved S00002 quotation. It retained its copied terms and job-specific scope. Other edits or deliberately reapplying a template need separate review.Can I use an Odoo template for HVAC service calls?
This native example copies one service call and two labor Hours, then the office checks customer, scope, access, addresses, terms, prices and tax. A copied allowance does not measure actual technician time or book an appointment.Continue building the business
Customer portal access and quotation acceptance remain separate pending workflows. Equipment options later build on the verified template.
Talk to an Odoo partner
Bring your current process and the result you need to Onward to plan your Odoo workflow. Talk to an Odoo partner.