Quote Templates

Build reusable quote templates with predefined sections, default line items, markup rules, and dynamic formulas. Generate complex quotes in seconds, not hours.

Note

For a high-level comparison of how templates and data schemas differ, see the Templates vs. Data Dictionaries overview.

Quickstart

Navigate to Settings > Quote Templates to build a library of standardized pricing models. You can also save any active quote as a template directly from the quote editor.

In-Depth

Quote Templates go beyond simple “copy-paste.” They encode your organization’s pricing logic, ensuring that complex quotes can be generated in seconds rather than hours.

Anatomy of a template

A quote template captures:

  • Sections: The logical grouping of work (e.g., “Phase 1: Discovery,” “Implementation,” “Managed Services”).
  • Line Items: Default roles (e.g., Senior Architect) or materials (e.g., Software Licenses). You can also mark specific items as Optional so they are presented to the client but excluded from overall totals.
  • Repeat Schedules: Both sections and individual line items can include an optional “Repeat” value to indicate recurring billing cycles (e.g., “monthly”, “annually”).
  • Pricing Logic: Default costs and markup percentages.
  • Dynamic Formulas: Math expressions that evaluate against data in the engagement to automatically calculate quantities or set names.

Dynamic Formulas

Servantium includes a robust Python-based evaluation engine for item formulas. Beyond standard math (+, -, *, /), you can use specialized functions to automate complex pricing logic:

  • Standard Operations: Use len(), max(), min(), int(), float(), sum(), and sum_ints().
  • Tiered Pricing: Use tier(value, thresholds, results) to assign pricing brackets (e.g., tier(users, [100, 500], [1, 2, 3])).
  • Product Lookups: Use product(external_id) to look up an item’s standard name based on an external system ID.
  • Bitmasks: Use get_bitmask(product_id) to retrieve bitmask logic for specific product combinations.
  • Dynamic Names: You can automatically calculate an item’s name based on a formula by prefixing the name field with an equals sign (e.g., "=product(bundle_id)").

The Hydration Process

When you apply a template to a new quote, a backend trigger performs “Hydration.”

  1. The system pulls the latest rates from your Service Catalog.
  2. It evaluates all dynamic formulas against the current engagement’s data.
  3. It populates the quote with the resulting structure, ready for final adjustments.
Tip

Templates are best used for your most common “packaged” offerings. This allows junior team members to generate highly accurate initial quotes that adhere to organizational margins.

Need more help?

Our support team is available to assist you.

Contact Support