Skip to main content
This page explains the concepts. To turn it on step by step, follow the quotes setup guide.
Quotes let you create proposals for enterprise customers before committing to a subscription. Once accepted, quotes convert to invoices or subscriptions.

Create a Quote

Quote Lifecycle

Send to Customer

Accept Quote (Customer)

Via customer portal or API:

Decline Quote

When a customer declines, the quote is marked as declined and cannot be modified or re-sent:
If a customer declines, create a new quote with revised terms rather than trying to re-use the declined one.

Convert to Invoice

After acceptance, convert to an invoice:

Apply Discounts

Download PDF

Update a Quote

Only draft quotes can be updated. Once a quote has been sent, create a new one instead.

Delete a Draft Quote

Remove a draft quote that is no longer needed:
Only draft quotes can be deleted. Sent, accepted, or declined quotes are retained for audit purposes.

Quote Expiration

When a quote passes its expires_at date:
  • The status automatically changes to expired
  • The customer can no longer accept it via the portal or API
  • A quote.expired webhook is fired
To handle expiration proactively, set up a webhook listener:

List Quotes

Filter Parameters

Webhooks

Next steps

Set up quotes

Issue your first quote

Invoices

What an accepted quote becomes