The end-to-end sales process of configuring a product or service offering, pricing it according to business rules, and generating a commercial proposal (quote). Qwoty automates and governs each step of this process.
Quote / Proposal / Offer
A priced commercial proposal sent to a prospect. In Qwoty, a quote is the central object of the sales workflow, progressing through a series of statuses from Draft to Accepted. Also referred to as Proposition or Offer.
Quote Line
A single product entry within a quote. Each line includes a product, quantity, unit price, and applicable discount.
Version
A revision of a quote after modification. Qwoty tracks the history of changes to maintain a complete audit trail.
TCV — Total Contract Value
The total value of a contract over its entire duration, including all one-time and recurring charges.
Win Rate
The conversion rate of quotes — the percentage of proposals that result in a signed deal.
Guided Selling
A selling assistant that guides sales reps step-by-step through quote creation: selecting the right template, catalog, pricebook, and products. Reduces configuration errors and speeds up the process.
A unique identifier for a product or variant. Displayed as the Reference field in Qwoty.
One-time Product
A product billed once — e.g., setup fees, hardware purchases, perpetual licenses.
Recurring Product
A product billed at a defined interval — e.g., SaaS subscriptions, annual licenses, maintenance contracts.
Product Variant
A specific version of a product defined by configurable attributes (size, color, tier, etc.). Variants share the same product page but can have distinct prices, images, and characteristics. Qwoty auto-generates all combinations from variant options you define.
Product Asset
A file associated with a product or variant: image, datasheet, video, technical specification. Stored in the Media Library and usable in quotes and the DealRoom.
Bundle
A pre-configured pack of several products sold together, with quantities and discounts already set. Reusable in quotes in one click. Example: Starter Pack = 3 licenses + 1 training session + 1 year support, 15% discount applied.
Add-on
An optional complementary product that can be added to a main product or quote.
Product Family
A logical grouping of similar products to simplify navigation in the catalog. Configured under Product Options > Categories.
Product Configurator
A visual builder for creating configurable products with complex option rules (dependencies, exclusions, constraints). Accessible at /products/configurator — Admin only.
A curated grouping of products made available for a specific sales context. Examples: France Catalog, Premium Catalog, Partner Catalog. Linked to one or more pricebooks and assigned to quote templates.
Pricebook (Price Grid)
A price list defining the selling prices of products for a given segment, channel, country, or currency. Two types:
Fixed: absolute prices per product, indexed on a catalog.
Dynamic: derived from another pricebook with a multiplier or percentage offset applied.
Displayed as Price Grid in the interface.
Unit Price
The price per single unit of a product. Displayed as UP in quote line columns.
Tiered Pricing
A progressive pricing model where each quantity bracket is billed at its own rate. Example: units 1–10 at €10, units 11–50 at €8, 51+ at €6.
Volume Pricing
The unit price is determined by the total quantity ordered and applied to all units. Example: order 50+ units → all units billed at the 50+ tier rate.
Recurring Pricing
Periodic billing at a defined interval (monthly, quarterly, annually). Used for subscriptions and SaaS licenses.
Unit-Based Pricing
Fixed unit price multiplied by the quantity entered in the quote.
Percentage-Based Pricing
Price calculated as a percentage of a reference value (total amount, another product’s value, etc.). Suited for service fees, commissions, or proportional surcharges.
Cost-Based Pricing
Price calculated from the cost price with a margin or multiplier applied. Guarantees minimum profitability on each quote line.
Ramp-up Pricing
A progressive pricing plan where price or quantity evolves automatically over time according to a defined schedule. Used for contracts with onboarding phases or progressive commitment tiers.
Discount
A reduction applied to a price. Two modes in Qwoty:
Manual: the sales rep applies a discount directly on the quote or per line.
Preconfigured: rules set by admins, activated in one click based on criteria (product type, quote amount, segment, team, payment terms, etc.).
Guardrail
A minimum or maximum constraint applied to prices or discounts to enforce commercial policy compliance.
Floor (Plancher)
The minimum authorized price. A guardrail that prevents selling below cost or below policy thresholds.
Ceiling (Plafond)
The maximum authorized price or discount. A guardrail that prevents excessive discounting or overcharging.
MRR — Monthly Recurring Revenue
The predictable monthly revenue generated by recurring subscriptions.
ARR — Annual Recurring Revenue
The predictable annual revenue generated by recurring subscriptions.
Margin
The difference between the selling price and the cost price. Displayed as a real-time KPI in the quote editor sidebar.
The core sales funnel configuration object. A template pre-defines all the rules and resources for a given type of sale: catalogs, pricebooks, allowed discounts, payment terms, payment methods, DealRoom forms, contract templates, content blocks, approval workflow, KPIs, and authorized teams. When a sales rep creates a quote, they select a template that automatically configures all of these elements — ensuring commercial compliance, consistency, and speed.
Contract Template (Quote Contract)
The association between a quote template (sales funnel) and a contract model. Ensures the right contract document is automatically attached to each type of proposal.
Order Template (Quote Order)
Configuration template for orders generated from accepted quotes. Defines the structure and rules of the resulting purchase order.
Contract Model
The actual text of a contract document, enriched with dynamic variables automatically populated from quote and client data: {{client.name}}, {{quote.total}}, {{start_date}}, etc. Written once, reused indefinitely.
Content Block
A pre-written, versioned marketing section (company overview, solution description, case study, team introduction, etc.) that sales reps insert into quotes in one click. Blocks are assigned to templates so Qwoty auto-inserts the right content per sale type.
The shared online space between the sales rep and the client. A quote must be in Published status to be visible in the DealRoom. The client can view the proposal, comment, negotiate, complete the checkout form, and sign — all from a single link.
Engagement
Client interactions tracked within the DealRoom: page views, sections read, time spent, actions taken (form submitted, signed, etc.). Used to prioritize follow-ups.
Stakeholder
A participant on the client side who has access to the DealRoom (viewer, approver, or signer).
File Sharing
Uploading and sharing supplementary files directly in the DealRoom: datasheets, presentations, contractual annexes.
Checkout
The DealRoom step where the client finalizes their order: billing form, shipping form, custom fields, and payment confirmation.
Customer Portal
(Add-on) A dedicated space for recurring clients — distinct from the one-time DealRoom. Clients can browse their full history of quotes, orders, and contracts, download documents, and track order status autonomously.
Automated Reminders
Automatic follow-up emails sent to clients when a shared quote has not been viewed or signed after a configurable delay. Reduces lost opportunities without manual action.
An automated validation circuit triggered when a quote meets certain configurable conditions: high amount, low margin, excessive discount, specific client, etc. The quote is blocked until approved. Prevents non-compliant commercial commitments.
Approver
The person (manager or admin) designated to validate a quote submitted for approval.
Escalation
Automatic forwarding of an approval request to a higher level when the primary approver is unavailable or a threshold is exceeded.
Workflow & Rules Editor
A visual editor for configuring the business rules that govern Qwoty’s behavior: approval conditions, association rules (catalog, pricebook, discount), pricing logic. No technical development required.
The top-level account in Qwoty. An organization contains one or more workspaces.
Workspace
An isolated working environment with its own data, users, and configuration. Multiple workspaces can coexist within one organization (e.g., by country, business unit, or environment).
Business Unit
A legal entity (subsidiary, brand, or company) operating within a workspace. Each Business Unit has its own name, legal information, VAT number, and visual identity (logo, colors, typography) — injected into generated documents and the DealRoom.
Role
Defines the permissions and access level of a user. Qwoty provides four system roles:
Role
Description
Admin
Full access, system configuration
Manager
Team management, approvals, reporting
Sales Rep
Quote creation and management, clients
Viewer
Read-only access
Custom roles with granular permissions can also be created.
Team
A group of users sharing the same access to templates, catalogs, and discounts. Assigning a quote template to a team automatically grants all its members access to the same commercial resources.
The set of Qwoty data objects (products, clients, quotes, contracts, etc.) and their fields. Standard objects are fixed; Manageable objects can be extended with custom fields to adapt Qwoty to specific business needs.
Custom Field
An additional field added to a Manageable object to capture business-specific information. Each custom field has a name, an API Name (stable technical identifier), and a data type.
API Name
A stable, immutable technical identifier assigned to objects, fields, roles, teams, and other entities. Used in integrations and the Qwoty API to ensure consistency over time, even if display names change.
Payment Terms
Configurable payment schedules composed of one or more milestones, each with a percentage of the total amount and a due date (e.g., Net 30, 3 installments, payment on receipt). Assigned to quote templates.
Payment Method
The payment modes offered to clients in quotes and in the DealRoom (credit card, wire transfer, direct debit, check, etc.). Each method includes client-facing instructions. Assigned to quote templates.
Tax
Configurable tax rules covering VAT by country, GST, US Sales Tax, eco-taxes, and local taxes. Each tax defines a type, name, country/region of application, and calculation method (percentage or fixed amount).
Currency
Qwoty supports multiple ISO currencies for international quoting. A default currency is set at workspace creation; additional currencies can be enabled. Prices are configured per currency in pricebooks.
Quote Numbering
Automatic quote numbering format configured by combining free text, an incremental counter, and date variables. Example format: PROJ-YYYY-XXXX.
PDF Configuration
Settings controlling the layout and formatting of PDF exports generated from quotes and contracts.
Media Library
The centralized file repository for all assets used in Qwoty: product images, logos, datasheets, marketing assets, contractual documents. Organized by category (Product, Content, Contract) and file type.
A system managing customer relationships and sales pipelines. Qwoty integrates natively with HubSpot, Pipedrive, and Salesforce for bidirectional contact, company, and opportunity synchronization.
ERP — Enterprise Resource Planning
An enterprise management system covering finance, operations, inventory, and more. Qwoty can synchronize product and order data with ERP systems via API or native integrations.
Bidirectional Sync
Synchronization in both directions between Qwoty and a connected system (CRM, ERP): changes in either platform are reflected in the other.
Webhook
An automatic HTTP notification sent to an external system when a specific event occurs in Qwoty (e.g., quote accepted, order created). Configured under Settings > Developers > Webhooks.
API
Qwoty’s native REST API exposing all objects. Each object has a UUID (Qwoty identifier) and a stable API Name. Used for CRM/ERP synchronization and advanced automation. Keys and documentation available at Settings > Developers > API.
CSV Import
Upload of CSV files for bulk creation or update of data: products, variants, clients, prices. Enables catalog and client base initialization from existing system exports.
Marketplace
The Qwoty integration marketplace listing available connectors: ERP, accounting tools, payment solutions, communication platforms, and other business applications.
Inventory Sync
(Add-on) Stock management module: tracks inventory levels per product and variant, synchronizes with external inventory systems (ERP, WMS), and can condition product availability in quotes based on real-time stock.
Key Performance Indicator — a real-time business metric shown in the quote editor sidebar and dashboards
Sidebar, Dashboard
Quote Insights
Real-time client engagement data (DealRoom views, time spent, actions)
Quote detail
Last modified on October 27, 2026
Was this page helpful?
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/schema.json","name":"Qwoty","description":"Qwoty Knowledge base \u0026 Documentation","colors":{"primary":"#005FFF","light":"#ffffff","dark":"#005FFF"},"logo":{"light":"https://mintcdn.com/qwoty-45352a33/gk4Fp4-ULydfpJ9J/images/Logo-dark3.png?fit=max\u0026auto=format\u0026n=gk4Fp4-ULydfpJ9J\u0026q=85\u0026s=86d23e4573b59d0930fddeb9216fbcd2","dark":"https://mintcdn.com/qwoty-45352a33/gk4Fp4-ULydfpJ9J/images/Logo-white3.png?fit=max\u0026auto=format\u0026n=gk4Fp4-ULydfpJ9J\u0026q=85\u0026s=ab63813d7128796cde279797159f75cd","href":"https://qwoty.io"},"favicon":{"light":"https://mintcdn.com/qwoty-45352a33/gdFxQ5lvFHEHmvTF/images/favi2.png?fit=max\u0026auto=format\u0026n=gdFxQ5lvFHEHmvTF\u0026q=85\u0026s=02759adcd66f76f310693066c41baec5","dark":"https://mintcdn.com/qwoty-45352a33/CurQTwLZ6gkIdZZ6/images/Favi-4.png?fit=max\u0026auto=format\u0026n=CurQTwLZ6gkIdZZ6\u0026q=85\u0026s=1bd7725be84a501b30af97faa66d8463"},"background":{"color":{"light":"#ffffff","dark":"#030303"}},"navbar":{"links":[{"href":"https://docs.qwoty.io/contact-support","label":"Contact support"},{"href":"https://qwoty.app/signin","label":"Sign in"}]},"fonts":{"family":"Inter"},"contextual":{"options":["copy","chatgpt","claude"],"display":"header"},"metadata":{"timestamp":true},"styling":{"latex":false},"navigation":{"languages":[{"language":"en","default":true,"href":"getting-started/introduction"},{"language":"fr","href":"fr/getting-started/introduction"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"qwoty-45352a33","hasAudioNarration":false,"actualSubdomain":"qwoty-45352a33","customDomains":["docs.qwoty.io"],"gitSource":{"type":"github","owner":"qwoty-io","repo":"qwoty-v2","deployBranch":"docs/mintlify","contentDirectory":"docs","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae1a26dc192c2fa84e478b3","collectionId":"a8450daa-4736-412a-96d7-ff5549b6fbe0","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae1a26dc192c2fa84e478b3"},"feedback":{"thumbs":true},"entitlements":{},"buildId":"6ae1a3059e6542c02e678c83","clientVersion":"0.0.3990","searchFilterCounts":[{"language":"en","tag":"Help Center","count":102},{"language":"fr","tag":"Guide utilisateur","count":102},{"language":"en","tag":"API Reference","count":76},{"language":"fr","tag":"Développeurs","count":66},{"language":"en","tag":"How-Tos","count":40},{"language":"fr","tag":"Guides pratiques","count":40},{"language":"fr","tag":"Référence API","count":38},{"language":"fr","tag":"Démarrage","count":36},{"language":"en","tag":"Getting Started","count":33},{"language":"en","tag":"Reference","count":30},{"language":"fr","tag":"Référence","count":30},{"language":"en","tag":"Developer Docs","count":28},{"language":"en","tag":"Settings (Admin)","count":21},{"language":"fr","tag":"Paramètres (Admin)","count":21},{"language":"en","tag":"Quotes","count":20},{"language":"fr","tag":"Devis","count":20},{"language":"en","tag":"Catalog \u0026 Products","count":14},{"language":"fr","tag":"Catalogue \u0026 Produits","count":14},{"language":"en","tag":"Integrations","count":13},{"language":"fr","tag":"Intégrations","count":13},{"language":"default","tag":"API Reference","count":10},{"language":"default","tag":"Categories","count":5}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"developers/resources/glossary","slug":"/developers/resources/glossary","pageMetadata":{"title":"Glossary","description":"A complete reference of CPQ terms, Qwoty concepts, and interface vocabulary.","icon":"book-open","audit_date":"2026-10-27","href":"/developers/resources/glossary"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"A complete reference of CPQ terms, Qwoty concepts, and interface vocabulary.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={code:`code`,em:`em`,hr:`hr`,li:`li`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{Accordion,AccordionGroup,CodeBlock,Heading,Table}=_components;if(!Accordion)_missingMdxReference(`Accordion`,true);if(!AccordionGroup)_missingMdxReference(`AccordionGroup`,true);if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Table)_missingMdxReference(`Table`,true);return _jsxs(_Fragment,{children:[_jsx(Heading,{level:`2`,id:`cpq-fundamentals`,children:`CPQ Fundamentals`}),`\n`,_jsxs(AccordionGroup,{children:[_jsx(Accordion,{title:`CPQ — Configure, Price, Quote`,id:`cpq-configure-price-quote`,children:_jsx(_components.p,{children:`The end-to-end sales process of configuring a product or service offering, pricing it according to business rules, and generating a commercial proposal (quote). Qwoty automates and governs each step of this process.`})}),_jsx(Accordion,{title:`Quote / Proposal / Offer`,id:`quote-proposal-offer`,children:_jsxs(_components.p,{children:[`A priced commercial proposal sent to a prospect. In Qwoty, a quote is the central object of the sales workflow, progressing through a series of statuses from `,_jsx(_components.strong,{children:`Draft`}),` to `,_jsx(_components.strong,{children:`Accepted`}),`. Also referred to as `,_jsx(_components.em,{children:`Proposition`}),` or `,_jsx(_components.em,{children:`Offer`}),`.`]})}),_jsx(Accordion,{title:`Quote Line`,id:`quote-line`,children:_jsx(_components.p,{children:`A single product entry within a quote. Each line includes a product, quantity, unit price, and applicable discount.`})}),_jsx(Accordion,{title:`Version`,id:`version`,children:_jsx(_components.p,{children:`A revision of a quote after modification. Qwoty tracks the history of changes to maintain a complete audit trail.`})}),_jsx(Accordion,{title:`TCV — Total Contract Value`,id:`tcv-total-contract-value`,children:_jsx(_components.p,{children:`The total value of a contract over its entire duration, including all one-time and recurring charges.`})}),_jsx(Accordion,{title:`Win Rate`,id:`win-rate`,children:_jsx(_components.p,{children:`The conversion rate of quotes — the percentage of proposals that result in a signed deal.`})}),_jsx(Accordion,{title:`Guided Selling`,id:`guided-selling`,children:_jsx(_components.p,{children:`A selling assistant that guides sales reps step-by-step through quote creation: selecting the right template, catalog, pricebook, and products. Reduces configuration errors and speeds up the process.`})})]}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`quote-statuses`,children:`Quote Statuses`}),`\n`,_jsx(_components.p,{children:`Each quote moves through a defined lifecycle. The main flow is:`}),`\n`,_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`Draft → Pending Approval → Approved → Published → Pending Signature → Accepted`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Status`}),_jsx(_components.th,{children:`Description`}),_jsx(_components.th,{children:`Color`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Draft`})}),_jsx(_components.td,{children:`Being created or edited`}),_jsx(_components.td,{children:`Gray`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Pending Approval`})}),_jsx(_components.td,{children:`Submitted for manager validation`}),_jsx(_components.td,{children:`Orange`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Changes Requested`})}),_jsx(_components.td,{children:`Edits requested by the approver; returns to Draft`}),_jsx(_components.td,{children:`Orange`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Approved`})}),_jsx(_components.td,{children:`Validated and ready to publish`}),_jsx(_components.td,{children:`Blue`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Published`})}),_jsx(_components.td,{children:`Visible to the client in the DealRoom`}),_jsx(_components.td,{children:`Blue`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Pending Signature`})}),_jsx(_components.td,{children:`Signature process in progress`}),_jsx(_components.td,{children:`Blue`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Accepted / Won`})}),_jsx(_components.td,{children:`Signed by the client ✅ — triggers Order creation`}),_jsx(_components.td,{children:`Green`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Expired`})}),_jsx(_components.td,{children:`Validity date has passed`}),_jsx(_components.td,{children:`Gray`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Lost`})}),_jsx(_components.td,{children:`Declined by the prospect`}),_jsx(_components.td,{children:`Red`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Canceled`})}),_jsx(_components.td,{children:`Manually canceled`}),_jsx(_components.td,{children:`Gray`})]})]})]}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`products`,children:`Products`}),`\n`,_jsxs(AccordionGroup,{children:[_jsx(Accordion,{title:`SKU — Stock Keeping Unit`,id:`sku-stock-keeping-unit`,children:_jsxs(_components.p,{children:[`A unique identifier for a product or variant. Displayed as the `,_jsx(_components.strong,{children:`Reference`}),` field in Qwoty.`]})}),_jsx(Accordion,{title:`One-time Product`,id:`one-time-product`,children:_jsx(_components.p,{children:`A product billed once — e.g., setup fees, hardware purchases, perpetual licenses.`})}),_jsx(Accordion,{title:`Recurring Product`,id:`recurring-product`,children:_jsx(_components.p,{children:`A product billed at a defined interval — e.g., SaaS subscriptions, annual licenses, maintenance contracts.`})}),_jsx(Accordion,{title:`Product Variant`,id:`product-variant`,children:_jsx(_components.p,{children:`A specific version of a product defined by configurable attributes (size, color, tier, etc.). Variants share the same product page but can have distinct prices, images, and characteristics. Qwoty auto-generates all combinations from variant options you define.`})}),_jsx(Accordion,{title:`Product Asset`,id:`product-asset`,children:_jsxs(_components.p,{children:[`A file associated with a product or variant: image, datasheet, video, technical specification. Stored in the `,_jsx(_components.strong,{children:`Media Library`}),` and usable in quotes and the DealRoom.`]})}),_jsx(Accordion,{title:`Bundle`,id:`bundle`,children:_jsxs(_components.p,{children:[`A pre-configured pack of several products sold together, with quantities and discounts already set. Reusable in quotes in one click. Example: `,_jsx(_components.em,{children:`Starter Pack = 3 licenses + 1 training session + 1 year support, 15% discount applied`}),`.`]})}),_jsx(Accordion,{title:`Add-on`,id:`add-on`,children:_jsx(_components.p,{children:`An optional complementary product that can be added to a main product or quote.`})}),_jsx(Accordion,{title:`Product Family`,id:`product-family`,children:_jsxs(_components.p,{children:[`A logical grouping of similar products to simplify navigation in the catalog. Configured under `,_jsx(_components.strong,{children:`Product Options > Categories`}),`.`]})}),_jsx(Accordion,{title:`Product Configurator`,id:`product-configurator`,children:_jsxs(_components.p,{children:[`A visual builder for creating configurable products with complex option rules (dependencies, exclusions, constraints). Accessible at `,_jsx(_components.code,{children:`/products/configurator`}),` — Admin only.`]})})]}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`pricing`,children:`Pricing`}),`\n`,_jsxs(AccordionGroup,{children:[_jsx(Accordion,{title:`Catalog`,id:`catalog`,children:_jsxs(_components.p,{children:[`A curated grouping of products made available for a specific sales context. Examples: `,_jsx(_components.em,{children:`France Catalog`}),`, `,_jsx(_components.em,{children:`Premium Catalog`}),`, `,_jsx(_components.em,{children:`Partner Catalog`}),`. Linked to one or more pricebooks and assigned to quote templates.`]})}),_jsxs(Accordion,{title:`Pricebook (Price Grid)`,id:`pricebook-price-grid`,children:[_jsx(_components.p,{children:`A price list defining the selling prices of products for a given segment, channel, country, or currency. Two types:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Fixed`}),`: absolute prices per product, indexed on a catalog.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Dynamic`}),`: derived from another pricebook with a multiplier or percentage offset applied.`]}),`\n`]}),_jsxs(_components.p,{children:[`Displayed as `,_jsx(_components.strong,{children:`Price Grid`}),` in the interface.`]})]}),_jsx(Accordion,{title:`Unit Price`,id:`unit-price`,children:_jsxs(_components.p,{children:[`The price per single unit of a product. Displayed as `,_jsx(_components.strong,{children:`UP`}),` in quote line columns.`]})}),_jsx(Accordion,{title:`Tiered Pricing`,id:`tiered-pricing`,children:_jsx(_components.p,{children:`A progressive pricing model where each quantity bracket is billed at its own rate. Example: units 1–10 at €10, units 11–50 at €8, 51+ at €6.`})}),_jsx(Accordion,{title:`Volume Pricing`,id:`volume-pricing`,children:_jsx(_components.p,{children:`The unit price is determined by the total quantity ordered and applied to all units. Example: order 50+ units → all units billed at the 50+ tier rate.`})}),_jsx(Accordion,{title:`Recurring Pricing`,id:`recurring-pricing`,children:_jsx(_components.p,{children:`Periodic billing at a defined interval (monthly, quarterly, annually). Used for subscriptions and SaaS licenses.`})}),_jsx(Accordion,{title:`Unit-Based Pricing`,id:`unit-based-pricing`,children:_jsx(_components.p,{children:`Fixed unit price multiplied by the quantity entered in the quote.`})}),_jsx(Accordion,{title:`Percentage-Based Pricing`,id:`percentage-based-pricing`,children:_jsx(_components.p,{children:`Price calculated as a percentage of a reference value (total amount, another product’s value, etc.). Suited for service fees, commissions, or proportional surcharges.`})}),_jsx(Accordion,{title:`Cost-Based Pricing`,id:`cost-based-pricing`,children:_jsx(_components.p,{children:`Price calculated from the cost price with a margin or multiplier applied. Guarantees minimum profitability on each quote line.`})}),_jsx(Accordion,{title:`Ramp-up Pricing`,id:`ramp-up-pricing`,children:_jsx(_components.p,{children:`A progressive pricing plan where price or quantity evolves automatically over time according to a defined schedule. Used for contracts with onboarding phases or progressive commitment tiers.`})}),_jsxs(Accordion,{title:`Discount`,id:`discount`,children:[_jsx(_components.p,{children:`A reduction applied to a price. Two modes in Qwoty:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Manual`}),`: the sales rep applies a discount directly on the quote or per line.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Preconfigured`}),`: rules set by admins, activated in one click based on criteria (product type, quote amount, segment, team, payment terms, etc.).`]}),`\n`]})]}),_jsx(Accordion,{title:`Guardrail`,id:`guardrail`,children:_jsx(_components.p,{children:`A minimum or maximum constraint applied to prices or discounts to enforce commercial policy compliance.`})}),_jsx(Accordion,{title:`Floor (Plancher)`,id:`floor-plancher`,children:_jsx(_components.p,{children:`The minimum authorized price. A guardrail that prevents selling below cost or below policy thresholds.`})}),_jsx(Accordion,{title:`Ceiling (Plafond)`,id:`ceiling-plafond`,children:_jsx(_components.p,{children:`The maximum authorized price or discount. A guardrail that prevents excessive discounting or overcharging.`})}),_jsx(Accordion,{title:`MRR — Monthly Recurring Revenue`,id:`mrr-monthly-recurring-revenue`,children:_jsx(_components.p,{children:`The predictable monthly revenue generated by recurring subscriptions.`})}),_jsx(Accordion,{title:`ARR — Annual Recurring Revenue`,id:`arr-annual-recurring-revenue`,children:_jsx(_components.p,{children:`The predictable annual revenue generated by recurring subscriptions.`})}),_jsx(Accordion,{title:`Margin`,id:`margin`,children:_jsx(_components.p,{children:`The difference between the selling price and the cost price. Displayed as a real-time KPI in the quote editor sidebar.`})})]}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`templates-\u0026-configuration`,children:`Templates \u0026 Configuration`}),`\n`,_jsxs(AccordionGroup,{children:[_jsx(Accordion,{title:`Quote Template`,id:`quote-template`,children:_jsx(_components.p,{children:`The core sales funnel configuration object. A template pre-defines all the rules and resources for a given type of sale: catalogs, pricebooks, allowed discounts, payment terms, payment methods, DealRoom forms, contract templates, content blocks, approval workflow, KPIs, and authorized teams. When a sales rep creates a quote, they select a template that automatically configures all of these elements — ensuring commercial compliance, consistency, and speed.`})}),_jsx(Accordion,{title:`Contract Template (Quote Contract)`,id:`contract-template-quote-contract`,children:_jsx(_components.p,{children:`The association between a quote template (sales funnel) and a contract model. Ensures the right contract document is automatically attached to each type of proposal.`})}),_jsx(Accordion,{title:`Order Template (Quote Order)`,id:`order-template-quote-order`,children:_jsx(_components.p,{children:`Configuration template for orders generated from accepted quotes. Defines the structure and rules of the resulting purchase order.`})}),_jsx(Accordion,{title:`Contract Model`,id:`contract-model`,children:_jsxs(_components.p,{children:[`The actual text of a contract document, enriched with `,_jsx(_components.strong,{children:`dynamic variables`}),` automatically populated from quote and client data: `,_jsx(_components.code,{children:`{{client.name}}`}),`, `,_jsx(_components.code,{children:`{{quote.total}}`}),`, `,_jsx(_components.code,{children:`{{start_date}}`}),`, etc. Written once, reused indefinitely.`]})}),_jsx(Accordion,{title:`Content Block`,id:`content-block`,children:_jsx(_components.p,{children:`A pre-written, versioned marketing section (company overview, solution description, case study, team introduction, etc.) that sales reps insert into quotes in one click. Blocks are assigned to templates so Qwoty auto-inserts the right content per sale type.`})})]}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`dealroom`,children:`DealRoom`}),`\n`,_jsxs(AccordionGroup,{children:[_jsx(Accordion,{title:`DealRoom / Digital Sales Room`,id:`dealroom-digital-sales-room`,children:_jsxs(_components.p,{children:[`The shared online space between the sales rep and the client. A quote must be in `,_jsx(_components.strong,{children:`Published`}),` status to be visible in the DealRoom. The client can view the proposal, comment, negotiate, complete the checkout form, and sign — all from a single link.`]})}),_jsx(Accordion,{title:`Engagement`,id:`engagement`,children:_jsx(_components.p,{children:`Client interactions tracked within the DealRoom: page views, sections read, time spent, actions taken (form submitted, signed, etc.). Used to prioritize follow-ups.`})}),_jsx(Accordion,{title:`Stakeholder`,id:`stakeholder`,children:_jsx(_components.p,{children:`A participant on the client side who has access to the DealRoom (viewer, approver, or signer).`})}),_jsx(Accordion,{title:`File Sharing`,id:`file-sharing`,children:_jsx(_components.p,{children:`Uploading and sharing supplementary files directly in the DealRoom: datasheets, presentations, contractual annexes.`})}),_jsx(Accordion,{title:`Checkout`,id:`checkout`,children:_jsx(_components.p,{children:`The DealRoom step where the client finalizes their order: billing form, shipping form, custom fields, and payment confirmation.`})}),_jsx(Accordion,{title:`Customer Portal`,id:`customer-portal`,children:_jsxs(_components.p,{children:[_jsx(_components.em,{children:`(Add-on)`}),` A dedicated space for recurring clients — distinct from the one-time DealRoom. Clients can browse their full history of quotes, orders, and contracts, download documents, and track order status autonomously.`]})}),_jsx(Accordion,{title:`Automated Reminders`,id:`automated-reminders`,children:_jsx(_components.p,{children:`Automatic follow-up emails sent to clients when a shared quote has not been viewed or signed after a configurable delay. Reduces lost opportunities without manual action.`})})]}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`contracts-\u0026-signatures`,children:`Contracts \u0026 Signatures`}),`\n`,_jsxs(AccordionGroup,{children:[_jsxs(Accordion,{title:`e-Signature (Electronic Signature)`,id:`e-signature-electronic-signature`,children:[_jsx(_components.p,{children:`Legally binding digital signature integrated directly into Qwoty. Two standards supported:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`eIDAS`}),` (European standard, level 1) for European markets.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`UETA`}),` (Uniform Electronic Transactions Act) for the US market.`]}),`\n`]}),_jsxs(_components.p,{children:[`Two signing modes: `,_jsx(_components.strong,{children:`Open`}),` (anyone with the link can sign) and `,_jsx(_components.strong,{children:`Restricted`}),` (only named signataries can sign).`]})]}),_jsx(Accordion,{title:`Redlining`,id:`redlining`,children:_jsx(_components.p,{children:`The process of annotating and proposing modifications to a contract document, typically during negotiation. Available in contract editing mode.`})}),_jsx(Accordion,{title:`Order`,id:`order`,children:_jsxs(_components.p,{children:[`A purchase order automatically generated when a quote reaches `,_jsx(_components.strong,{children:`Accepted`}),` status. The order captures the committed products, quantities, and prices.`]})}),_jsx(Accordion,{title:`Contract (Object)`,id:`contract-object`,children:_jsx(_components.p,{children:`A container that groups all the quotes and orders from the same deal. Provides a unified view of the commercial relationship over time.`})}),_jsx(Accordion,{title:`Audit Trail`,id:`audit-trail`,children:_jsx(_components.p,{children:`A complete log of all actions and validations performed on a quote, order, or contract. Ensures traceability and compliance.`})})]}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`subscriptions-\u0026-lifecycle`,children:`Subscriptions \u0026 Lifecycle`}),`\n`,_jsxs(AccordionGroup,{children:[_jsx(Accordion,{title:`Subscription`,id:`subscription`,children:_jsx(_components.p,{children:`A recurring engagement between the client and the vendor, billed at regular intervals.`})}),_jsx(Accordion,{title:`Renewal`,id:`renewal`,children:_jsx(_components.p,{children:`The process of extending an active subscription for another period.`})}),_jsx(Accordion,{title:`Upsell`,id:`upsell`,children:_jsx(_components.p,{children:`Selling a higher-tier product or plan to an existing client.`})}),_jsx(Accordion,{title:`Cross-sell`,id:`cross-sell`,children:_jsx(_components.p,{children:`Selling a complementary product to an existing client.`})}),_jsx(Accordion,{title:`Expansion`,id:`expansion`,children:_jsx(_components.p,{children:`Increasing the scope of an existing subscription (more users, more features, more volume).`})}),_jsx(Accordion,{title:`Downgrade`,id:`downgrade`,children:_jsx(_components.p,{children:`Reducing the scope of an existing subscription.`})}),_jsx(Accordion,{title:`Co-termination / Co-term`,id:`co-termination-co-term`,children:_jsx(_components.p,{children:`Aligning the end dates of multiple subscriptions so they renew simultaneously.`})}),_jsx(Accordion,{title:`Churn`,id:`churn`,children:_jsx(_components.p,{children:`Customer loss — the cancellation of a subscription. A key metric for recurring revenue businesses.`})})]}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`approvals-\u0026-workflows`,children:`Approvals \u0026 Workflows`}),`\n`,_jsxs(AccordionGroup,{children:[_jsx(Accordion,{title:`Approval Workflow`,id:`approval-workflow`,children:_jsx(_components.p,{children:`An automated validation circuit triggered when a quote meets certain configurable conditions: high amount, low margin, excessive discount, specific client, etc. The quote is blocked until approved. Prevents non-compliant commercial commitments.`})}),_jsx(Accordion,{title:`Approver`,id:`approver`,children:_jsx(_components.p,{children:`The person (manager or admin) designated to validate a quote submitted for approval.`})}),_jsx(Accordion,{title:`Escalation`,id:`escalation`,children:_jsx(_components.p,{children:`Automatic forwarding of an approval request to a higher level when the primary approver is unavailable or a threshold is exceeded.`})}),_jsx(Accordion,{title:`Workflow \u0026 Rules Editor`,id:`workflow-and-rules-editor`,children:_jsx(_components.p,{children:`A visual editor for configuring the business rules that govern Qwoty’s behavior: approval conditions, association rules (catalog, pricebook, discount), pricing logic. No technical development required.`})})]}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`organization-\u0026-users`,children:`Organization \u0026 Users`}),`\n`,_jsxs(AccordionGroup,{children:[_jsx(Accordion,{title:`Organization`,id:`organization`,children:_jsx(_components.p,{children:`The top-level account in Qwoty. An organization contains one or more workspaces.`})}),_jsx(Accordion,{title:`Workspace`,id:`workspace`,children:_jsx(_components.p,{children:`An isolated working environment with its own data, users, and configuration. Multiple workspaces can coexist within one organization (e.g., by country, business unit, or environment).`})}),_jsx(Accordion,{title:`Business Unit`,id:`business-unit`,children:_jsx(_components.p,{children:`A legal entity (subsidiary, brand, or company) operating within a workspace. Each Business Unit has its own name, legal information, VAT number, and visual identity (logo, colors, typography) — injected into generated documents and the DealRoom.`})}),_jsxs(Accordion,{title:`Role`,id:`role`,children:[_jsx(_components.p,{children:`Defines the permissions and access level of a user. Qwoty provides four system roles:`}),_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Role`}),_jsx(_components.th,{children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Admin`})}),_jsx(_components.td,{children:`Full access, system configuration`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Manager`})}),_jsx(_components.td,{children:`Team management, approvals, reporting`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Sales Rep`})}),_jsx(_components.td,{children:`Quote creation and management, clients`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Viewer`})}),_jsx(_components.td,{children:`Read-only access`})]})]})]}),_jsx(_components.p,{children:`Custom roles with granular permissions can also be created.`})]}),_jsx(Accordion,{title:`Team`,id:`team`,children:_jsx(_components.p,{children:`A group of users sharing the same access to templates, catalogs, and discounts. Assigning a quote template to a team automatically grants all its members access to the same commercial resources.`})})]}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`configuration-\u0026-settings`,children:`Configuration \u0026 Settings`}),`\n`,_jsxs(AccordionGroup,{children:[_jsx(Accordion,{title:`Data Model`,id:`data-model`,children:_jsxs(_components.p,{children:[`The set of Qwoty data objects (products, clients, quotes, contracts, etc.) and their fields. `,_jsx(_components.strong,{children:`Standard`}),` objects are fixed; `,_jsx(_components.strong,{children:`Manageable`}),` objects can be extended with custom fields to adapt Qwoty to specific business needs.`]})}),_jsx(Accordion,{title:`Custom Field`,id:`custom-field`,children:_jsx(_components.p,{children:`An additional field added to a Manageable object to capture business-specific information. Each custom field has a name, an API Name (stable technical identifier), and a data type.`})}),_jsx(Accordion,{title:`API Name`,id:`api-name`,children:_jsx(_components.p,{children:`A stable, immutable technical identifier assigned to objects, fields, roles, teams, and other entities. Used in integrations and the Qwoty API to ensure consistency over time, even if display names change.`})}),_jsx(Accordion,{title:`Payment Terms`,id:`payment-terms`,children:_jsx(_components.p,{children:`Configurable payment schedules composed of one or more milestones, each with a percentage of the total amount and a due date (e.g., Net 30, 3 installments, payment on receipt). Assigned to quote templates.`})}),_jsx(Accordion,{title:`Payment Method`,id:`payment-method`,children:_jsx(_components.p,{children:`The payment modes offered to clients in quotes and in the DealRoom (credit card, wire transfer, direct debit, check, etc.). Each method includes client-facing instructions. Assigned to quote templates.`})}),_jsx(Accordion,{title:`Tax`,id:`tax`,children:_jsx(_components.p,{children:`Configurable tax rules covering VAT by country, GST, US Sales Tax, eco-taxes, and local taxes. Each tax defines a type, name, country/region of application, and calculation method (percentage or fixed amount).`})}),_jsx(Accordion,{title:`Currency`,id:`currency`,children:_jsx(_components.p,{children:`Qwoty supports multiple ISO currencies for international quoting. A default currency is set at workspace creation; additional currencies can be enabled. Prices are configured per currency in pricebooks.`})}),_jsx(Accordion,{title:`Quote Numbering`,id:`quote-numbering`,children:_jsxs(_components.p,{children:[`Automatic quote numbering format configured by combining free text, an incremental counter, and date variables. Example format: `,_jsx(_components.code,{children:`PROJ-YYYY-XXXX`}),`.`]})}),_jsx(Accordion,{title:`PDF Configuration`,id:`pdf-configuration`,children:_jsx(_components.p,{children:`Settings controlling the layout and formatting of PDF exports generated from quotes and contracts.`})}),_jsx(Accordion,{title:`Media Library`,id:`media-library`,children:_jsx(_components.p,{children:`The centralized file repository for all assets used in Qwoty: product images, logos, datasheets, marketing assets, contractual documents. Organized by category (Product, Content, Contract) and file type.`})})]}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`integrations-\u0026-technical`,children:`Integrations \u0026 Technical`}),`\n`,_jsxs(AccordionGroup,{children:[_jsx(Accordion,{title:`CRM — Customer Relationship Management`,id:`crm-customer-relationship-management`,children:_jsxs(_components.p,{children:[`A system managing customer relationships and sales pipelines. Qwoty integrates natively with `,_jsx(_components.strong,{children:`HubSpot`}),`, `,_jsx(_components.strong,{children:`Pipedrive`}),`, and `,_jsx(_components.strong,{children:`Salesforce`}),` for bidirectional contact, company, and opportunity synchronization.`]})}),_jsx(Accordion,{title:`ERP — Enterprise Resource Planning`,id:`erp-enterprise-resource-planning`,children:_jsx(_components.p,{children:`An enterprise management system covering finance, operations, inventory, and more. Qwoty can synchronize product and order data with ERP systems via API or native integrations.`})}),_jsx(Accordion,{title:`Bidirectional Sync`,id:`bidirectional-sync`,children:_jsx(_components.p,{children:`Synchronization in both directions between Qwoty and a connected system (CRM, ERP): changes in either platform are reflected in the other.`})}),_jsx(Accordion,{title:`Webhook`,id:`webhook`,children:_jsx(_components.p,{children:`An automatic HTTP notification sent to an external system when a specific event occurs in Qwoty (e.g., quote accepted, order created). Configured under Settings > Developers > Webhooks.`})}),_jsx(Accordion,{title:`API`,id:`api`,children:_jsx(_components.p,{children:`Qwoty’s native REST API exposing all objects. Each object has a UUID (Qwoty identifier) and a stable API Name. Used for CRM/ERP synchronization and advanced automation. Keys and documentation available at Settings > Developers > API.`})}),_jsx(Accordion,{title:`CSV Import`,id:`csv-import`,children:_jsx(_components.p,{children:`Upload of CSV files for bulk creation or update of data: products, variants, clients, prices. Enables catalog and client base initialization from existing system exports.`})}),_jsx(Accordion,{title:`Marketplace`,id:`marketplace`,children:_jsx(_components.p,{children:`The Qwoty integration marketplace listing available connectors: ERP, accounting tools, payment solutions, communication platforms, and other business applications.`})}),_jsx(Accordion,{title:`Inventory Sync`,id:`inventory-sync`,children:_jsxs(_components.p,{children:[_jsx(_components.em,{children:`(Add-on)`}),` Stock management module: tracks inventory levels per product and variant, synchronizes with external inventory systems (ERP, WMS), and can condition product availability in quotes based on real-time stock.`]})})]}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`interface-vocabulary`,children:`Interface Vocabulary`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Term`}),_jsx(_components.th,{children:`Definition`}),_jsx(_components.th,{children:`Location`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Dashboard`})}),_jsx(_components.td,{children:`Home page with KPIs and recent activity`}),_jsxs(_components.td,{children:[`Home `,_jsx(_components.code,{children:`/`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Sidebar / Left nav`})}),_jsx(_components.td,{children:`Main navigation panel on the left`}),_jsx(_components.td,{children:`Left of screen`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Header`})}),_jsx(_components.td,{children:`Top bar with primary actions`}),_jsx(_components.td,{children:`Top of screen`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Breadcrumb`})}),_jsx(_components.td,{children:`Hierarchical navigation trail`}),_jsx(_components.td,{children:`Below the header`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Quick actions`})}),_jsx(_components.td,{children:`Contextual action buttons`}),_jsx(_components.td,{children:`Top right`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Filters`})}),_jsx(_components.td,{children:`Search and refinement criteria`}),_jsx(_components.td,{children:`Above lists`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`List view`})}),_jsx(_components.td,{children:`Default table-style display`}),_jsx(_components.td,{children:`Default`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Kanban view`})}),_jsx(_components.td,{children:`Column-based display by status`}),_jsx(_components.td,{children:`Toggle option`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`KPI`})}),_jsx(_components.td,{children:`Key Performance Indicator — a real-time business metric shown in the quote editor sidebar and dashboards`}),_jsx(_components.td,{children:`Sidebar, Dashboard`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Quote Insights`})}),_jsx(_components.td,{children:`Real-time client engagement data (DealRoom views, time spent, actions)`}),_jsx(_components.td,{children:`Quote detail`})]})]})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Glossary","description":"A complete reference of CPQ terms, Qwoty concepts, and interface vocabulary.","icon":"book-open","audit_date":"2026-10-27","href":"/developers/resources/glossary"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"CPQ Fundamentals","slug":"cpq-fundamentals","depth":2,"children":[]},{"title":"Quote Statuses","slug":"quote-statuses","depth":2,"children":[]},{"title":"Products","slug":"products","depth":2,"children":[]},{"title":"Pricing","slug":"pricing","depth":2,"children":[]},{"title":"Templates \u0026 Configuration","slug":"templates-\u0026-configuration","depth":2,"children":[]},{"title":"DealRoom","slug":"dealroom","depth":2,"children":[]},{"title":"Contracts \u0026 Signatures","slug":"contracts-\u0026-signatures","depth":2,"children":[]},{"title":"Subscriptions \u0026 Lifecycle","slug":"subscriptions-\u0026-lifecycle","depth":2,"children":[]},{"title":"Approvals \u0026 Workflows","slug":"approvals-\u0026-workflows","depth":2,"children":[]},{"title":"Organization \u0026 Users","slug":"organization-\u0026-users","depth":2,"children":[]},{"title":"Configuration \u0026 Settings","slug":"configuration-\u0026-settings","depth":2,"children":[]},{"title":"Integrations \u0026 Technical","slug":"integrations-\u0026-technical","depth":2,"children":[]},{"title":"Interface Vocabulary","slug":"interface-vocabulary","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/qwoty-45352a33/617cb85cf3308d35/plain-chat.js"],"subdomain":"qwoty-45352a33","siteName":"Qwoty","title":"Glossary - Qwoty","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/developers/resources/glossary","matchLevel":0},"fr":{"href":"/fr/developers/resources/glossary","matchLevel":1}}},"lastModified":"2026-04-26T14:57:29.809Z","gitLastModified":"2026-10-27T11:10:52.000Z","originalFileLocation":"developers/resources/glossary.mdx","locale":"en"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"A complete reference of CPQ terms, Qwoty concepts, and interface vocabulary.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Qwoty\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/qwoty-45352a33/1j3WJiLJddhEThQe/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/qwoty-45352a33/1j3WJiLJddhEThQe/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/qwoty-45352a33/1j3WJiLJddhEThQe/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/qwoty-45352a33/1j3WJiLJddhEThQe/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/qwoty-45352a33/1j3WJiLJddhEThQe/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/qwoty-45352a33/1j3WJiLJddhEThQe/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/qwoty-45352a33/1j3WJiLJddhEThQe/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/qwoty-45352a33/1j3WJiLJddhEThQe/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/qwoty-45352a33/1j3WJiLJddhEThQe/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Glossary - Qwoty\">\u003cmeta data-mint-head property=\"og:description\" content=\"A complete reference of CPQ terms, Qwoty concepts, and interface vocabulary.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Qwoty\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.qwoty.io/developers/resources/glossary\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://qwoty-45352a33.mintlify.app/_mintlify/api/og/v2?division=Resources\u0026amp;title=Glossary\u0026amp;description=A+complete+reference+of+CPQ+terms%2C+Qwoty+concepts%2C+and+interface+vocabulary.\u0026amp;theme=479ea95918077de376b56582\u0026amp;signature=5986b80fe2c006ca864f8c75dc263988668f369fed598af0ef34a99c37f5369d\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Glossary - Qwoty\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"A complete reference of CPQ terms, Qwoty concepts, and interface vocabulary.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://qwoty-45352a33.mintlify.app/_mintlify/api/og/v2?division=Resources\u0026amp;title=Glossary\u0026amp;description=A+complete+reference+of+CPQ+terms%2C+Qwoty+concepts%2C+and+interface+vocabulary.\u0026amp;theme=479ea95918077de376b56582\u0026amp;signature=5986b80fe2c006ca864f8c75dc263988668f369fed598af0ef34a99c37f5369d\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/qwoty-45352a33/1j3WJiLJddhEThQe/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Qwoty\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#005FFF\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.qwoty.io/developers/resources/glossary\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/developers/resources/glossary.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://docs.qwoty.io/developers/resources/glossary\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"fr\" href=\"https://docs.qwoty.io/fr/developers/resources/glossary\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://docs.qwoty.io/developers/resources/glossary\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.qwoty.io/#organization\",\"name\":\"Qwoty\",\"url\":\"https://docs.qwoty.io\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/qwoty-45352a33/gk4Fp4-ULydfpJ9J/images/Logo-dark3.png?fit=max\u0026auto=format\u0026n=gk4Fp4-ULydfpJ9J\u0026q=85\u0026s=86d23e4573b59d0930fddeb9216fbcd2\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.qwoty.io#website\",\"name\":\"Qwoty\",\"url\":\"https://docs.qwoty.io\",\"publisher\":{\"@id\":\"https://docs.qwoty.io/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.qwoty.io/developers/resources/glossary#webpage\",\"url\":\"https://docs.qwoty.io/developers/resources/glossary\",\"name\":\"Glossary\",\"description\":\"A complete reference of CPQ terms, Qwoty concepts, and interface vocabulary.\",\"dateModified\":\"2026-10-27T11:10:52.000Z\",\"isPartOf\":{\"@id\":\"https://docs.qwoty.io#website\"},\"breadcrumb\":{\"@id\":\"https://docs.qwoty.io/developers/resources/glossary#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.qwoty.io/developers/resources/glossary#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Qwoty\",\"item\":\"https://docs.qwoty.io\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Glossary\",\"item\":\"https://docs.qwoty.io/developers/resources/glossary\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.qwoty.io/developers/resources/glossary#article\",\"headline\":\"Glossary\",\"name\":\"Glossary\",\"description\":\"A complete reference of CPQ terms, Qwoty concepts, and interface vocabulary.\",\"url\":\"https://docs.qwoty.io/developers/resources/glossary\",\"mainEntityOfPage\":{\"@id\":\"https://docs.qwoty.io/developers/resources/glossary#webpage\"},\"dateModified\":\"2026-10-27T11:10:52.000Z\",\"publisher\":{\"@id\":\"https://docs.qwoty.io/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.qwoty.io#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Qwoty\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Qwoty","nav":{"global":null,"languages":[{"language":"en","default":true,"tabs":[{"tab":"Getting Started","icon":"rocket","pages":[{"title":"Getting Started","href":"/getting-started/introduction"}]},{"tab":"Help Center","icon":"life-ring","pages":[{"title":"Help Center","href":"/user-guide"}]},{"tab":"Developer Docs","icon":"books","anchors":[{"anchor":"Getting Started","icon":"book","pages":[{"group":"Getting started","pages":[{"title":"Introduction","href":"/developers/introduction"},{"title":"Quickstart","href":"/developers/quickstart"},{"title":"Authentication","href":"/developers/authentication"}]},{"group":"Core concepts","pages":[{"title":"Rate limits and retries","href":"/developers/core-concepts/rate-limiting"},{"title":"Error handling","href":"/developers/core-concepts/error-handling"},{"title":"Webhooks","href":"/developers/core-concepts/webhooks"},{"title":"Build with LLMs","href":"/developers/core-concepts/build-with-llms"},{"title":"Permissions","description":"How an API token's role decides which endpoints it can call.","href":"/developers/core-concepts/permissions"}]},{"group":"Resources","pages":[{"title":"Glossary","icon":"book-open","href":"/developers/resources/glossary"}]},{"group":"Compliance","pages":[{"title":"E-Sign Compliance","description":"How Qwoty supports legally valid electronic signatures across major jurisdictions.","href":"/developers/compliance/e-sign-compliance"},{"title":"Signature levels","href":"/developers/compliance/signature-levels"},{"title":"Certifications \u0026 Regulatory Compliance","sidebarTitle":"Certifications \u0026 Compliance","href":"/developers/compliance/certifications-and-regulatory-compliance"},{"title":"GDPR","href":"/developers/compliance/gdpr"}]},{"group":"Policies","pages":[{"title":"Security","href":"/developers/policies/security"},{"title":"Terms of Service","href":"/developers/policies/terms-of-service"},{"title":"Privacy Policy","href":"/developers/policies/privacy-policy"},{"title":"Fair Use Policy","href":"/developers/policies/fair-use-policy"}]}]},{"anchor":"Integrations","icon":"link","pages":[{"title":"Integrations","href":"/developers/integrations/crm/salesforce"}]},{"anchor":"Roadmap","icon":"map","hidden":true,"pages":[{"title":"Roadmap","href":"/developers/roadmap"}]}]},{"tab":"API Reference","icon":"code","pages":[{"title":"API Reference","href":"/api-reference/catalogs/create"}]},{"tab":"Changelog","icon":"bolt-lightning","pages":[{"title":"Changelog","href":"/changelog"}]}]},{"language":"fr","pages":[{"title":"fr","href":"/fr/developers/resources/glossary"}]}]},"title":"Glossary - Qwoty","buildId":"dpl_2oYXwqkEXirXBPk8wV1FtM5USFWi","deploymentId":"dpl_2oYXwqkEXirXBPk8wV1FtM5USFWi","dynamics":[],"chunks":[]}