Skip to content
Create account
or
Sign in
The Stripe Docs logo
/
Ask AI
Create account
Sign in
Get started
Payments
Revenue
Platforms and marketplaces
Money management
Developer tools
Overview
Billing
    Overview
    About the Billing APIs
    Subscriptions
    Invoicing
    Usage-based billing
    Connect and Billing
    Tax and Billing
    Quotes
      How quotes work
      Create a quote
      Renegotiate a quote
    Revenue recovery
    Automations
    Scripts
    Revenue recognition
    Customer management
    Entitlements
    Test your integration
Tax
Reporting
Data
Startup incorporation
HomeRevenueBillingQuotes

Create and send a quote

Learn how to create, send, and accept a quote.

Copy page

Note

You can use quotes in a sandbox. To finalise, download, or accept quotes in live mode for one-off invoices through the API or Dashboard, you must upgrade to Invoicing Plus. See which plan is right for you.

A quote is a way to show prospective or existing customers the costs for a set of products and services. Quotes show the cost of either a one-off invoice or subscription. When a customer accepts the quote, ​​Stripe automatically creates all relevant invoices and subscriptions. ​​Many sales workflows use this common tool.

Create a customer
Server-side

​​To create a quote, pass in a line item for each product or service. Attach a Customer object to the quote to represent the customer. After you create the customer, store the id in your database so you can use it later. In the next step, you’ll use the customer to create a quote.

Create a quote
Server-side

To create a quote, pass in the Customer and Line items. You can use prices to model the offerings that your business provides. Learn how to set up your product catalogue to use prices with quotes.

You can add each offering from your business to the quote as a line item by specifying the price and quantity. For example, if you were to create a quote for a monthly software licence that comes with a one-off consultation fee to install the software, the quote would contain two line items:

  • The first line item represents five licenses of the 100 USD per month per license cost of the software.
  • The second line item represents the one-time 1000 USD consultation fee.

A newly created quote has a draft status. You can modify draft quotes by adding or removing line items.

Command Line
cURL
curl https://api.stripe.com/v1/quotes \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d customer=cus_GBV60HKsE0mb5v \ -d "line_items[0][price]"=price_CBb6IXqvTLXp3f \ -d "line_items[0][quantity]"=5 \ -d "line_items[1][price]"=price_HGd7M3DV3IMXkC

Send a quote
Server-side

When you’re ready to send the quote to your customer, you can move it to an open state by finalising the quote. Because the quote is for a specific customer, you must attach a Customer object to it before it can transition to the new state.

Command Line
cURL
curl -X POST https://api.stripe.com/v1/quotes/qt_1HDGlYClCIKljWvsIGaAA06B/finalize \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"

After you finalize a quote, you can download the PDF, which contains an overview of the quote. Attach it to an email and send it to your customer.

Command Line
curl
curl https://files.stripe.com/v1/quotes/qt_1HDGlYClCIKljWvsIGaAA06B/pdf \ -u
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:
\ -G

You can also set a header, footer and description on your quote, which the PDF displays. You can specify the default settings for the header, footer and description in the Quote template. Remember to keep the quote in an open state while your customer reviews it.

Mark a quote as accepted
Server-side

​​After the customer agrees to the quote, move it to the accepted state, which automatically creates an invoice or subscription (depending on whether you’ve added line items with a recurring price). When you use a quote for one-off payments, Stripe creates an invoice in the draft state. You can make modifications to your invoice before sending it to your customer.

Command Line
cURL
curl -X POST https://api.stripe.com/v1/quotes/qt_1HDGlYClCIKljWvsIGaAA06B/accept \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"

OptionalConvert a quote to a subscription
Server-side

Was this page helpful?
YesNo
Need help? Contact Support.
Join our early access programme.
Check out our changelog.
Questions? Contact Sales.
LLM? Read llms.txt.
Powered by Markdoc