Quotes

Create and manage quotes with versioning support.

Overview

Quotes (cotizaciones) allow you to send proposals to customers before creating invoices. They support the same line items, taxes, and discounts as invoices, plus versioning.

Create a Quote

Bash
1curl -X POST "https://api.corebill.io/v1/quotes?company_id=com_abc123" \
2 -H "Authorization: Bearer sk_live_your_api_key" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "customer_id": "cus_abc123",
6 "valid_until": "2026-12-31",
7 "payment_terms": "50% upfront, 50% on delivery",
8 "line_items": [
9 {
10 "item_name": "Website Redesign",
11 "description": "Complete redesign including UX research",
12 "quantity": 1,
13 "unit": "project",
14 "unit_price": 8000
15 },
16 {
17 "item_name": "Monthly Maintenance",
18 "quantity": 6,
19 "unit": "month",
20 "unit_price": 500
21 }
22 ]
23 }'

Quote Numbers

Numbers include a version suffix: {PREFIX}-{YEAR}-{COUNTER}-{VERSION}

Example: QUO-2026-00001-1

When a quote is revised, the version number increments.

Statuses

StatusDescription
draftInitial state
sentSent to the customer
viewedCustomer has viewed
approvedCustomer approved the quote
rejectedCustomer rejected
expiredPast the valid_until date
convertedConverted to an invoice

Send a Quote

Bash
1curl -X POST "https://api.corebill.io/v1/quotes/quo_abc123/send?company_id=com_abc123" \
2 -H "Authorization: Bearer sk_live_your_api_key"

Approve / Reject

Bash
1# Approve
2curl -X POST "https://api.corebill.io/v1/quotes/quo_abc123/approve?company_id=com_abc123" \
3 -H "Authorization: Bearer sk_live_your_api_key"
4
5# Reject
6curl -X POST "https://api.corebill.io/v1/quotes/quo_abc123/reject?company_id=com_abc123" \
7 -H "Authorization: Bearer sk_live_your_api_key" \
8 -H "Content-Type: application/json" \
9 -d '{ "rejection_reason": "Budget exceeded" }'

Convert to Invoice

Bash
1curl -X POST "https://api.corebill.io/v1/quotes/quo_abc123/convert_to_invoice?company_id=com_abc123" \
2 -H "Authorization: Bearer sk_live_your_api_key"

This copies all line items from the quote to a new invoice. The quote status changes to converted.

Defaults

  • issue_date defaults to today
  • valid_until defaults to 30 days from issue_date
  • currency defaults to the company's currency

Amounts

All monetary amounts are in the major unit of the currency. $75 is represented as 75, not 7500.

Filtering

Bash
1# By status
2curl "https://api.corebill.io/v1/quotes?company_id=com_abc123&status=approved" \
3 -H "Authorization: Bearer sk_live_your_api_key"
4
5# By customer
6curl "https://api.corebill.io/v1/quotes?company_id=com_abc123&customer_id=cus_abc123" \
7 -H "Authorization: Bearer sk_live_your_api_key"